編程忠告
『壹』 怎麼學習編程
學習編程是一件好事,不要認為編程很難,其實它並不難,不過之前你得先了解你學習編程的目的是什麼?這個很重要,因為目的決定你的發展方向。目前對於編程有很多種編程語言以及相對應的開發軟體,根據你的情況選一種語言進行專業學習,不要盲亂學習。編程是一種融匯貫通的東西,學會基礎到後邊就越來越簡單了。而且可以向多種語言發展。因為畢竟世上沒有永遠不過時的東西嘛!下面說明一些常用的編程語言。
c語言 是一種可移植性和多系統平台的編程語言
JAVA 是一種功能強大可移植性強的開發語言
HTML 是一種超文本標記語言
Java Script 是一種基於客戶端的腳本語言
程序語言,顧名思義就是一種語言,是用於交流的,程序就是計算機的語言和人類語言的翻譯者,做一個程序員就是要把人類世界的問題用計算機的方法去解決和展現,可是因為種種原因,大多數人在如何學好語言,如何學好開發平台上疲於奔命,到頭來你只會敲寫代碼。如果想做一個合格的程序員,C++、JAVA、sql、都是一定要學的,另外,不要去學你喜歡的,也不要去費勁腦子想該學什麼,看看IT界,IT市場需要什麼,你就學什麼。
新手學編程要從根本出發
從理論上來說,需要廣泛的閱讀,了解演算法的博大精深和計算機的基本理論。
從實踐上來說,需要有廣泛的練習,練習的廣泛在於練習不同的內容。
然後就是創新精神和數學思維能力,這些都是需要培養的。
基礎要打好
學編程要具備一定的基礎,總結之有以下幾方面:
(1)數學基礎 、從計算機發展和應用的歷史來看計算機的數學模型和體系結構等都是有數學家提出的,最早的計算機也是為數值計算而設計的。因此,要學好計算機就要有一定的數學基礎,出學者有高中水平就差不多了。
(2)邏輯思維能力的培養 、學程序設計要有一定的邏輯思維能力,「思維能力」的培養要長時間的實踐鍛煉。要想成為一名優秀的程序員,最重要的是掌握編程思想。要做到這一點必須在反復的實踐、觀察、分析、比較、總結中逐漸地積累。因此在學習編程的過程中,我們不必等到什麼都完全明白了才去動手實踐,只要明白了大概,就要敢於自己動手去體驗。誰都有第一次。有些問題只有通過實踐後才能明白,也只有實踐才能把老師和書上的知識變成自己的,高手都是這樣成材的。
(3)選擇一種合適的入門語言、 面對各種各樣的語言,應按什麼樣的順序學呢?程序設計工具不外乎如下幾類:
1.本地開發應用軟體開發的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;資料庫開發工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。
2.跨平台開發開發工具如 Java 等。
3.網路開發對客戶端開發工具如:Java Script 等;對伺服器開發工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的環境下幾種開發工具中 VB 法簡單並容易理解,界面設計是可設化的,易學、易用。選 VB 作為入門的方向對出學者是較為適合的。 (但現在已經過時)
培養好的編程習慣
編程入門不難,但入門後不斷學習是十分重要的,相對來說較為漫長。在此期間要注意養成一些良好的編程習慣。編程風格的好壞很大程度影響程序質量。良好的編程風格可以使程序結構清晰合理,且使程序代碼便於維護。如代碼的縮進編排、變數命令規則的一致性、代碼的注釋等。
多問多學習
掌握編程思想必須在編程實際工作中去實踐和體會。編程起步階段要經常自己動手設計程序,具體設計時不要拘泥於固定的思維方式,遇到問題要多想幾種解決的方案。這就要多交流,各人的思維方式不同、角度各異,各有高招,通過交流可不斷吸收別人的長處,豐富編程實踐,幫助自己提高水平。親自動手進行程序設計是創造性思維應用的體現,也是培養邏輯思維的好方法。
總結
1、先照書上的題目寫,題目的設計是有道理的鞏固基礎知識。
2、找數學題,寫個小程序解決,熟悉演算法和基礎函數。
3、自己出題目,小一點的,如自編資源管理器、自編寫字板之類,練習WINDOWS下的編程。
4、結合身邊的事,找個中等課題,或看別人的程序,自已想辦法實現。
5.把教材中的例子,自己仿照著寫一遍,上機運行,看結果.要知道,任何產品都是有例子的,有機結合或仿照。
6.從自己熟悉的事情入手,如成績統計,編制一段程序,完成一個功能.然後再完善。
7.要反復破壞代碼,從破壞中尋找代碼的規律。
8.必須經常反復上機練習。
編程是要用計算機能夠識別的語言讓計算機去運行,現在所說的語言多指高級語言。編程時,先用高級語言編出程序,因為計算機不能識別高級語言,機器只認識0和1,所以要再用專門的編譯程序將高級語言翻譯成計算機可以識別的機器語言。就像你要將你的意願告訴計算機,你就要有一個翻譯,讓他把你的意願翻譯給計算機,語言就是具有這個功能的,同樣,翻譯可以有好多種,現在的計算機語言有好多種,每種語言都有自己的特點,並且隨著時代的發展,一些語言已經被淘汰了,一些語言被改進了(如c語言發展了c++,微軟將Java弄成了C#),現在比較熱門的語言有Java(適用於網路編程,現在很熱門,並且與平台無關)、c語言(盡管很老了,可是效率很高,可移植性很好,大學的計算機,非計算機專業的學生幾乎都要學習它)、VB(即微軟的Visual Basic,由原來的BASIC發展,語法很簡單,但是很多高級程序員嘲笑vb為玩具語言,但是美國的一些大學仍然將此語言作為編程的入門課程)、Dlphi等等。
每種語言都有自己的特點,我的感覺是你還是先學習VB吧,我就是從它開始的,如果想以後搞得大一些,c 、vc++比較好一些,不僅僅因為效率,還因為平台可移植性好。至於Java或者微軟吹噓的.NET,我的感覺是,他們的功能確實很好,Delphi也很不錯的,也有好多的人在學習。但是作為一個中學生,你不可能有太多的時間學這么多多東西。
如果我建議的話,你還是從VB或者c語言(也有些人說c++比較好)開始吧。等你把這些東西學的有點門路了,再接觸Delphi Java甚至是微軟的.NET的幾種語言。
編程是很有意思的事情,祝學習順利!
『貳』 程序員必備知識有哪些
根據軟考程序員職稱的考試內容,我們可以得出,程序員需要具備以下的知識。但這些只是基礎,還要不斷擴展。
計算機硬體基礎知識。
1. 計算機科學基礎。
1.1數制及其轉換。
二進制、十進制和十六進制等常用數制及其相互轉換。
1.2數據的表示。
數的表示(原碼、反碼、補碼表示,整數和實數的機內表示方法,精度和溢出)。
校驗方法和校驗碼(奇偶校驗碼、海明校驗碼)。
1.3算術運算和邏輯運算。
計算機中二進制數的運算方法。
邏輯代數的基本運算和邏輯表達式的化簡。
1.5常用數據結構。
數組(表態數組、動態數組)、線性表、鏈表(單向鏈表、雙向鏈表、循環鏈表)、隊列、棧、樹(二叉樹、查找樹)、圖的定義、存儲和操作
1.6 常用演算法。
演算法與數據結構的關系,演算法效率,演算法設計,演算法描述(流程圖、偽代碼、決策表)
2. 計算機系統基礎知識。
2.1計算機基礎知識。
2.1.1計算機系統的組成,硬體系統、軟體系統及層次結構。
2.1.3 中央處理器CPU。
運算器和控制器的組成,常用的寄存器、指令系統、定址方式、指令執行控
處理機性能。
2.1.4 主存和輔存。
存儲器系統。
存儲介質(半導體、硬碟、光碟、快閃記憶體、軟盤、磁帶等)。
主存儲器的組成、性能及基本原理。
Cache的概念、虛擬存儲的概念。
輔存設備的類型、特性、性能和容量計算。
2.1.5 I/O介面、I/O設備和通信設備。
I/O介面(匯流排、DMA、通道、SCSI、並行口、RS232C、USB、IEEE1394)。
I/O設備的類型和特性(鍵盤、滑鼠、顯示器、列印機、掃描儀、攝像頭,以及各種輔存設備)。
I/O設備控制方式(中斷控制、DMA)。
通信設備的類型和特性(Modem、集線器、交換機、中繼器、路由器、網橋、網關)及其連接方法和連接介質(串列連接、並行連接,傳輸介質的類型和特性)。
2.2 軟體基礎知識。
2.2.1 操作系統基礎知識。
操作系統的類型和功能。
操作系統的內核(中斷控制)和進程概念。
處理機管理、存儲管理、設備管理、文件管理、作業管理、漢字處理。
2.2.2 程序設計語言和語言處理程序基礎知識。
匯編、編譯、解釋系統的基礎知識。
過程(函數)調用。
2.3 網路基礎知識。
網路的功能、分類、組成和拓撲結構。
網路體系結構與協議(OSI/RM,TCP/IP)。
2.4 資料庫基礎知識。
數據模型,ER圖。
數據操作(關系運算)。
資料庫語言(SQL)。
2.5 多媒體基礎知識。
多媒體基礎概念,常用多媒體設備性能特徵,常用多媒體文件格式類型。
3.軟體開發和運行維護基礎知識。
3.2 軟體需求分析、需求定義及軟體基礎知識。
結構化分析概念(數據流圖(DFD)、實體關系圖(ER))。
面向對象設計、結構化設計基礎知識。
模擬設計、代碼設計、人機界面設計要點。
3.3 程序設計基礎知識。
結構設計程序設計,程序流程圖,NS圖,PAD圖。
程序設計風格。
面向對象設計基礎知識、可視化程序設計基礎知識。
3.4 程序測試基礎知識。
黑盒測試、白盒測試、灰盒測試基礎知識。
4. 安全性基礎知識。
安全性基本概念。
加密與解密基礎知識。
5. 標准化基礎知識
標准化基本概念
6. 信息化基本知識。
有關的法律、法規要點。
7. 計算機專業英語。
考試科目2:程序設計。
1. 內部設計
1.1 理解外部設計。
1.3 物理數據設計。
確定數據組織方式、存儲介質,設計記錄格式和處理方式。
2. 程序設計。
2.1 模擬劃分(原則、方法、標准)。
3. 程序實現。
3.1 編程。
編程方法和標准。
程序設計語言的使用。
4.程序設計語言(C語言為必選,其他語言可以任選一種)。
4.1 C程序設計語言(ANSI C標准)。
程序結構,語法,數據類型說明,可執行語句,函數調用,標准庫函數,指針。
4.2C++程序設計語言(ANSI C++標准)。
C++和面向對象程序設計,語法和程序結構,類、成員、構造函數、析構函數、模板、繼承、多態。
4.3Java程序設計(Java 2)。
語言機制(程序結構和語法,類、成員、構造函數、析構函數、繼承、介面)。
4.4Visual Basic程序設計(Visual Basic 6.0)。
用戶界面設計。
『叄』 洞悉比爾蓋茨五大編程秘訣,如何成為像他一樣的程序
我相信很多學習計算機專業的人,最崇拜的就是比爾蓋茨了。
雖然時代在變遷,但比爾蓋茨對編程的認知、編程的思想、處理問題時的解決方案依然是後人值得品讀的經典!!
小編對《編程大師訪談錄》中比爾蓋茨的編程思想進行了總結分析,認為有以下5大編程秘訣。
1.編程的兩件關鍵意識
一是 任何問題,只要你把它細化成很多小問題,都能被解決掉。
二是 在程序中放入哪些功能,你必須合理把握什麼事情容易做、什麼事情不容易做,因為計算機永遠都是精確的按照你要求它的方式運行
2.比爾蓋茨最大的成就
為8080編寫的BASIC,是創辦微軟時所編寫的最早的程序。這個程序小巧但卻能移動整個「大山」並且適合當時的使用場景。
為此,當別人問到他編程最大的成就,他會毫不猶豫的回答:Basic。
3.如何成為一個優秀的程序員?
比爾蓋茨最強調的就是團隊合作這四個字,即便個人的能力再強,但在軟體項目規模擴大時,僅依靠個人是絕對無法完成工作。
比爾蓋茨也絕不喜歡在工作中充當獨行俠的角色。
4.編程中最困難的是什麼?
把程序編程到最後,無非就是將編程簡化,但是這看似簡單的步驟,缺難似登天。
為此,一個優秀的程序員就要制定好計劃,確定好使用什麼演算法,如何讓演算法簡化。
也就是說一切心中有數,了解團隊的分工
5.比爾蓋茨的編程風格
比爾蓋茨在編寫程序之前會花大量的時間去思考、去制定好計劃。
他強調編寫程序最重要的部分是設計數據結構,接下然後再是分解各種代碼塊。
小編收集了 比爾蓋茨的五大忠告 :
1、社會不公是客觀存在,不要想著去改造它而要適應它。
2、社會只在意你的成就而不是你的自尊,你越強調自尊,成功的路就越窄。
3、社會的每一個地方都要分等排名。
4、陷入困境時不要抱怨而要默默地吸取教訓重新奮起。
5、不要在背後批評別人,尤其不能說老闆無能無知
『肆』 為什麼覺得C++編程沒意思了,越來越不想學了!我該怎麼辦呢!
要不,換一個行業吧。別難為自己了。
軟體編程並不適合每一個人,有些人可以在其中很輕易就獲取到成就感和樂趣,有些人不能。對於前者,沿著這條路走下去,會很開心;對於後者,越往後越是折磨。
『伍』 編程哪種語言比較好呢
學習c++的忠告(初學者必看)
1.把C++當成一門新的語言學習(和C沒啥關系!真的。);
2.看《Thinking In C++》,不要看《C++變成死相》;
3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因為他們很難而我們自己是初學者所以就不看;
4.不要被VC、BCB、BC、MC、TC等詞彙所迷惑——他們都是集成開發環境,而我們要學的是一門語言;
5.不要放過任何一個看上去很簡單的小編程問題——他們往往並不那麼簡單,或者可以引伸出很多知識點;
6.會用Visual C++,並不說明你會C++;
7.學class並不難,template、STL、generic programming也不過如此——難的是長期堅持實踐和不遺餘力的博覽群書;
8.如果不是天才的話,想學編程就不要想玩游戲——你以為你做到了,其實你的C++水平並沒有和你通關的能力一起變高——其實可以時刻記住:學C++是為了編游戲的;
9.看Visual C++的書,是學不了C++語言的;
10.浮躁的人容易說:XX語言不行了,應該學YY;——是你自己不行了吧!?
11.浮躁的人容易問:我到底該學什麼;——別問,學就對了;
12.浮躁的人容易問:XX有錢途嗎;——建議你去搶銀行;
13.浮躁的人容易說:我要中文版!我英文不行!——不行?學呀!
14.浮躁的人容易問:XX和YY哪個好;——告訴你吧,都好——只要你學就行;
15.浮躁的人分兩種:a)只觀望而不學的人;b)只學而不堅持的人;
16.把時髦的技術掛在嘴邊,還不如把過時的技術記在心裡;
17.C++不僅僅是支持面向對象的程序設計語言;
18.學習編程最好的方法之一就是閱讀源代碼;
19.在任何時刻都不要認為自己手中的書已經足夠了;
20.請閱讀《The Standard C++ Bible》(中文版:標准C++寶典),掌握C++標准;
21.看得懂的書,請仔細看;看不懂的書,請硬著頭皮看;
22.別指望看第一遍書就能記住和掌握什麼——請看第二遍、第三遍;
23.請看《Effective C++》和《More Effective C++》以及《Exceptional C++》;
24.不要停留在集成開發環境的搖籃上,要學會控制集成開發環境,還要學會用命令行方式處理程序;
25.和別人一起討論有意義的C++知識點,而不是爭吵XX行不行或者YY與ZZ哪個好;
26.請看《程序設計實踐》,並嚴格的按照其要求去做;
27.不要因為C和C++中有一些語法和關鍵字看上去相同,就認為它們的意義和作用完全一樣;
28.C++絕不是所謂的C的「擴充」——如果C++一開始就起名叫Z語言,你一定不會把C和Z語言聯系得那麼緊密;
29.請不要認為學過XX語言再改學C++會有什麼問題——你只不過又在學一門全新的語言而已;
30.讀完了《Inside The C++ Object Model》以後再來認定自己是不是已經學會了C++;
31.學習編程的秘訣是:編程,編程,再編程;
32.請留意下列書籍:《C++面向對象高效編程(C++ Effective Object-Oriented Software Construction)》《面向對象軟體構造(Object-Oriented Software Construction)》《設計模式(Design Patterns)》《The Art of Computer Programming》;
33.記住:面向對象技術不只是C++專有的;
34.請把書上的程序例子親手輸入到電腦上實踐,即使配套光碟中有源代碼;
35.把在書中看到的有意義的例子擴充;
36.請重視C++中的異常處理技術,並將其切實的運用到自己的程序中;