㈠ 如何成為一名程序員
成為程序員的具體步驟:
第一步:
掌握一種編程語言。學習任意一種主流的編程語言,例如C++語言。熟練掌握一種語言的語法和基本的編程技巧。
學習時間:
3個月左右
注意事項:
編程語言和編程工具是兩回事情,編程語言是指C++、Basic、Object Pascal等。程序設計語言,它們是像漢語、英語一樣的抽象的語法規則,編程工具是指Visual C++ 6.0、Visual Basic 6.0、Delphi 7.0等包括了源代碼編輯器、程序編譯器 在內的集成化、可視化的軟體開發工具。C++源程序可以在Visual C++ 6.0里編寫,也可以在記事本里編寫,而同一個C++源程序可以用Visual C++ 6.0編譯、執行,也可以用C++ Builder 5.0
編譯、執行,所以: C++ 不等於 Visual C++ 6.0。
第二步:
掌握一種編程工具,學習任意一種主流的編程工具。注意編程工具要和第一階段學習的編程語言一致,例如你學習的編程語言是C++,那麼編程工具要選Visual C++ 6.0或者C++ Builder 5.0。熟練掌握這種編程工具基本用法,例如:菜單、組件、程序跟蹤調試、編寫Windows程序等。
學習時間:
3個月左右
注意事項:
這個階段側重編程工具的使用,同時進一步熟習編程語言,最後達到能熟練編寫各種基本的Windows程序。
第三步:
掌握「演算法與數據結構」這門課程,推薦許卓群的《數據結構》,熟練掌握各種常用的演算法與數據結構。
學習時間:
4個月左右
注意事項:
這是一門不可或缺的軟體開發課程,曾經有一本經典計算機專業書籍叫做《數據結構+演算法=程序》,這說明了數據結構和演算法的重要性。它能幫我們建立良好的程序分析與設計能力。
第四步:
實現一個模擬的小型軟體項目,掌握軟體項目的基本開發過程和方法。
學習時間:
4個月左右
注意事項:
自己完成一個模擬的小型軟體項目,強烈推薦做一個MIS(管理信息系統)軟體,參考用書推「中小型信息管理系統開發實例系列叢書」,人民郵電出版社,它的例子詳實有效, 以它為基礎再加以擴展,就可以做出實用的MIS軟體來。
㈡ 怎麼才能算是一個合格的程序員要求要懂些什麼東西,到什麼程度
如何成為一個合格的程序員
確定目標
做什麼事都要有明確的目標,因此,你首先要為自己確定一個可測量的目標,並把這個大目標分解為幾個分階段的小目標。比如,要在一年內開發出一套倉庫管理軟體:第一月的目標是學會一種計算機語言;第二個月的目標是熟悉倉庫管理業務;第三個月學會資料庫;第四個月寫出原型……然後按計劃去做,每完成一步你的信心就會增加一些,並會感受到成功的快樂。
選擇工具
當你開始著手的時候,會發現市面上有太多的計算機語言和工具供你選擇了。具體選擇某種語言和環境與你的目標直接相關,比如要開發單片機系統和要開發管理系統,所選擇的語言會有天壤之別。下面是一些參考意見(純屬個人意見):
1、腳本類:特點是簡單、易學、易用。比較常用的有:Unix/ Linux的Shell語言,網頁里用的VBScript/javaScript,MS-Office里用的VBA,動態主頁用的JSP、ASP、PHP等,通用語言Perl、Python等。當然像Python/Perl語言的功能已非常強大,有用它們寫出的資料庫、系統管理等大型系統,如Zope、WebMin等。
2、RAD類:這類以快速開發著稱的語言及工具比較流行,常用的有VB、Delphi、Powerbuilder、Visual FoxPro等,這類工具常用來開發管理信息系統,如用友、金碟等,也用來開發通用軟體。
3、專業類:最常用的是C/C++,Java等,如果你想成為專業的程序員,就要學習這些內容。它們通常用來開發系統級程序,比如操作系統(MS-Windows、Unix/Linux等)、資料庫(Oracle、SQL-Server等)、開發語言(C/C++、Python等)、工具軟體(WPS、KV3000等),在大型系統里基本都有它們的身影。
4、專用類:這類語言種類最多,它們一般設計用來完成一項特殊的工作。例如現在最流行的Flash,它內含Action Script語言;AutoCAD內帶VBA和AutoLisp;每一種單片機都帶有自己的ASM語言;許多系統如MatLab、Spss、Intouch、Modsoft等都有自己的專用語言。
總的來說,當選擇語言的時候,一定要與自己的目標相結合,另外,入門的時候,可先選擇容易一些的,入門後,再選擇專業些的。一開始就選擇C++可能會讓你知難而退,但如果選用Python,你就可能會覺得計算機語言原來也挺容易。
勤奮練習
除了多寫程序,沒有別的辦法去更快地提高你的程序水平了。看書的時候,最好把書上的例子自己輸進電腦實踐一遍,然後進行各種試驗,再聯想出各種相關的程序,自己寫出來,並驗證自己的結果。如果有好的想法,就嘗試把它寫出來,很快你會發現你的水平在快速上升。
當你有了一定的基礎的時候,可以嘗試去讀高手寫的程序,解讀他們的程序的設計理念、風格、解決問題的思路等。在這方面,GNU/Linux為我們提供了一個巨大的源程序寶庫,裡面有各種各樣的程序源代碼,詳細研究一套你感興趣的系統,你的水平會得到大幅度提高。
不斷提高
除了多加練習,你還需要多讀書,特別是英文書。讀書可以在理論上提高你的水平。信息技術發展太快,而大部分的技術最先出現的時候都是英文版本的,要幾個月以後才有中文版本的書出來,因此要想跟上步伐,一定要努力提高自己的英文水平,這樣才能同步跟上信息技術。你可能擔心自己的英語水平不行,沒關系,剛開始多查字典,很多就會發現計算機英語其實很容易。當然,這里的書是泛指,包括網路上的各種文章,電子書等。
另外,多與他人交流經驗也有助於自己水平的提高。互聯網為我們提供了一個巨大的交流平台,各種BBS和新聞組上都有熱心的高手回答你的問題。不過在問問題之前,自己一定要先努力嘗試過,再給出自己的想法。動不動就問別人,自己水平得不到提高,別人也不再會回答你的問題。
繼續深造
當你覺得自己成了程序員的時候,你就會發覺還有很多東西要學,你可以繼續深入學習來提升你的水平。
1、向下深入:了解操作系統的機制,了解底層的API,這對開發系統級程序非常有用。
2、向上延伸:學習項目管理,軟體工程,設計模式,分析設計等,這對你開發大型系統非常有幫助,特別是一個團隊去開發一個大型項目的時候。
3、橫向擴展:熟悉各種系統如資料庫、多媒體、人工智慧等,然後集成起來應用,會產生更大的效果。
㈢ 如何用一句話證明你是程序員
1、女朋友就是私有變數,只有我這個類才能調用
2、愛上一個人,就是內存泄露-你永遠釋放不了
3、編碼間,bug灰飛煙滅
4、這句話老值錢了:Helloworld
5、1+2==3
6、老闆湊個整數吧,1024
7、你說第一句? 從0算起還是從1算起
8、不管寫什麼,沒事在後面加個分號;
9、真的勇士,敢於直面慘淡的warning、敢於正視淋漓的error。
10、神馬,我打開firebug看看那玩意怎麼實現的。
11、一同學問我,軟體外包是什麼。解釋了幾句還沒明白,遂想了一下:包工頭知道吧?頓悟!
12、繼承,是幸福的延續;重載,是幸福的重生。
13、情人就是指針,用的時候一定要注意,要不然就帶來巨大的災難。
14、擦,沒同步就覆蓋了
15、UTF-8還是GBK?
㈣ 什麼是程序員什麼是代碼
程序員所寫的代碼,是為某一特定程序或某一個應用程序所制定的編碼和內部測試的組織實施,使此應用或程序應能夠在程序員編寫的代碼中,實現各種功能。程序員(英文Programmer)是從事程序開發、程序維護的專業人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚,特別是在中國。軟體從業人員分為初級程序員、中級程序員、高級程序員(現為軟體設計師)、系統分析員,系統架構師,測試工程師六大類。代碼又臭又長
我見過最長的方法是5000多行,那段代碼沒人敢動,只敢往下加 if else,每次需要改這段代碼的開發都戰戰兢兢,生怕出現什麼莫名其妙的bug。java 可是一門面向對象的語言,一個方法裡面有5000多行可以說是很可惡的事情了。我想一開始代碼長度可能沒這么誇張,是什麼導致這種結果的?一個是當初寫這段代碼的人本身寫的是直來直去的方法,一堆if else ;後面迭代的開發,面對這么長的代碼瞬間失去了從頭讀到尾的耐心,直接繼續在後面加 if else 迭代,最後這個方法就變成了一個縫合怪一樣的玩意。
好的 sql 可以很大程度上簡化代碼的復雜程度,但是太過復雜sql 本身就會給後來的開發人員造成閱讀困難,結果又是變成一條無人敢動的祖傳代碼,我想這應該是不少公司極度抵制存儲過程的原因之一。當然不少銀行應用開發還是大量使用存儲過程,存儲過程有用武之地的,但是一個又臭又長的存儲過程就等著變成祖傳代碼吧。當年我見到一個60多個join的sql,看到第一眼就驚為天人從此難以忘懷,當然那段sql也成了沒人敢去動的代碼了。
代碼邏輯不明
代碼邏輯不明所以是我們開發很容易去犯的毛病,是一個不致命卻煩人的毛病。在代碼上的體現是,邏輯判斷寫的比較反人類各種雙重否定是肯定,不把你繞暈不罷休。或者是寫起代碼來東一榔頭西一棒槌,讓人不知道你想幹嘛。導致這個的原因有可能是開發人員在需求理解上出現偏差,做到後面發現不對勁,再回去改又不大可能了,只能硬著頭皮往下寫,結果就是代碼彎彎繞繞;還有很重要的鍋是在產品經理,任意變更需求,想一出是一出,開發人員無奈只能跟著想一出寫一出。還用可能是開發人員方法或者類命名太藝術了,什麼四川方言拼音這種沒有十年腦血栓想不出的命名咱就不說了。就說那種國產凌凌漆式的無厘頭命名——這看上去是個刮鬍刀實際上是個吹風機,就這種不知道讓人說什麼好。
規劃代碼的核心思想
吐槽了一堆代碼規范問題,接下來我們說說如何去規范我們的代碼以及如何做到就算開發人員更換了,或者項目轉手給他人了,仍然可以讓後面的開發可以無礙的去閱讀代碼修改代碼。當然各個公司/團隊都有自己的一套代碼規范,比如項目的結構、代碼命名風格、代碼格式等等。不同團隊有不同的風格,但核心思想是大同小異的。接下來我就我個人的開發經驗來分享一下一些代碼規范的思想。
㈤ 如何才能觀察得出一個人是不是程序員
首先我們都知道程序員是一個非常辛苦的職業,因為他們常常要熬夜,並且在電腦前一坐就是一整天對他們的身體影響是非常大的久而久之,他們就會發現他們有脫發的行為,在我們縣程序員的時候,我們會發現程序員的發際線一般都比較的高。這是因為他們不規律的生活習慣所造成的。因此,當我們看到一個年輕的人,但是她的頭發卻非常的少,那麼他一定是程序員。
㈥ 怎樣才算真正的程序員
將想要做的事情分解成小的事情,並將小的事情轉換成計算機能處理的程序。
㈦ 如何成為一個程序員
想要從零開始成為程序員,先不要著急的去學習,而是先要去了解程序員。
1.隨便在招聘網站搜索就會發現程序員會分有很多類型,那你就需要確定自己將來想要發展的方向,自己的職業規劃是什麼?
2.通過搜索可以看到,剛剛起步的程序員工資並不是很高而且學習階段也會比較忙,那這個時候你是不是靠考慮一下如何兼顧生活和工作?工資如何支配合理等問題(沒有經驗限制的工作相對較低)
PHP程序員崗位要求
關於學習建議你這樣試試看:
學習的方式基本可分為兩個類型,一個是碎片化的學習,一個是系統進修。
你可以從網路上各機構大量的視頻或者書籍得到相關的學習資料。從大量的資料中,發現真正的干貨,從而不斷學習,這屬於碎片化的自習。由於自學周期比較長,還有不少小夥伴選擇是一邊工作賺取生活費,一邊再利用閑暇時間學習,當然如果你的精力充沛,這也是一個好辦法。
如果要報培訓班, 一定要找正規的培訓機構學習,不然容易被坑。培訓機構裡面的課程都是現在工作中需要用到的,時間短,基本上是可以讓你快速上手工作的。但是要把所有的知識點都消化就沒那麼快了,所以需要自己私下更加的努力,鞏固學習。
注意事項:
1. 自學要注意的是:自學入門時會很枯燥,不要兩天打魚三天曬網!!!切記
2. 在培訓機構里學習要注意的是:勤加練習、主動自學、有問題提,不懂的盡管問老師(把交的錢發揮到極致),不然之後再有問題就沒有這么好的機會能夠直接得到老師的指點了。
最後,祝願想要成為程序員的小夥伴都能心想事成哦(*^▽^*)~
㈧ 怎樣才能成為一名程序員
要選擇一本基礎教程,選擇哪本不重要,重要的是必須從頭至尾堅持讀完整,能記住多少都無所謂,下一步就是做範例,按書里的範例一個個實操,不懂就翻讀過的基礎書和範例實解,堅持做過去,到這時就已經入門了,然後給自己找個課題做,這時候會發現教科書的內容已經不足以回答你的問題了,就該到編程論壇或專業網站找答案,這關過了,基本是程序猿了,但也僅僅是入門而已,再要發展,就是系統架構分析師。
㈨ 如何才算是一個程序員
曾有高人曰過:寫了10W行代碼,才是程序員的入門。
㈩ 如何自學成為程序員
如何學習自學編程的方式最好的莫過於在網路上面查找資源。
目前,網路上電腦資源多不勝數。其中有很多都是基礎到精通的視頻教程。通過視頻講解。讓你明白重點知識。你通過查找一套適合自己的視頻。然後看完是基本。
這里推薦幾個可以在線學習的好網站:慕課、極客學院、傳智播客、如朋網、網易公開課等等做筆記在進行看視頻的過程中,一定注意要記筆記。
對視頻中重點的部分進行截圖,並加以文字解釋。就形成了自己的筆記。這些筆記對於你來說很重要。通過記筆記的形式,你就不需要重新觀看視頻了。只需要復習的時候查看筆記就夠了,這樣就大大的節約了時間。
下面介紹一個記筆記的好軟體:CherryTree多練習代碼在視頻中講解的代碼,我認為你至少需要自己寫三遍以上。在寫代碼的時候,就用到了上面寫的筆記了。通過看筆記截圖,即可自己慢慢摸索寫出來代碼。當然練習到一定程度,就需要你適當的做個項目。鞏固自己的知識。
程序員必備技能
1、熟練開發工具
做為一名程序員至少熟練掌握兩到三種開發工具的使用,這是程序員的立身之本,其中C/C++和JAVA是重點推薦的開發工具,C/C++以其高效率和高度的靈活性成為開發工具中的利器,很多系統級的軟體還是用C/C++編寫。
而JAVA的跨平台和與WEB很好的結合是JAVA的優勢所在,而JAVA即其相關的技術集JAVAOne很可能會成為未來的主流開發工具之一。
其次,能掌握一種簡便的可視化開發工具,如VB,PowerBuilder,Delphi,CBuilder,則更好,這些開發工具減小了開發難度,並能夠強化程序員對象模型的概念。另外,需要掌握基本的腳本語言,如shell,perl等,至少能讀懂這些腳本代碼。
2、熟知資料庫
為什麼資料庫是如此重要?作為程序員,他們自然有自己的理由:很多應用程序都是以資料庫的數據為中心,而資料庫的產品也有不少,其中關系型資料庫仍是主流形式,所以程序員至少熟練掌握一兩種資料庫,對關系型資料庫的關鍵元素要非常清楚,要熟練掌握SQL的基本語法。
雖然很多資料庫產品提供了可視化的資料庫管理工具,但SQL是基礎,是通用的資料庫操作方法。如果沒有機會接觸商業資料庫系統,可以使用免費的資料庫產品是一個不錯的選擇,如mySQL,Postgres等。
3、了解操作系統
當前主流的操作系統是Windows,Linux/Unix,熟練地使用這些操作系統是必須的,但只有這些還遠遠不夠。要想成為一個真正的編程高手,需要深入了解操作系統,了解它的內存管理機制、進程/線程調度、信號、內核對象、系統調用、協議棧實現等。
Linux作為開發源碼的操作系統,是一個很好的學習平台,Linux幾乎具備了所有現代操作系統的特徵。雖然Windows系統的內核實現機制的資料較少,但通過互聯網還是能獲取不少資料。懂得網路協議TCP/IP。
在互聯網如此普及的今天,如果您還沒有對互聯網的支撐協議TCP/IP協議棧有很好的掌握,就需要迅速補上這一課。
網路技術已改變了軟體運行的模式,從最早的客戶/伺服器結構,到今天的WEBServices,再到未來的網格計算,這一切都離不開以TCP/IP協議棧為基礎的網路協議支持,深入掌握TCP/IP協議是非常必要的。
至少,需要了解ISO七層協議模型,IP/UDP/TCP/HTTP等常用協議的原理和三次握手機制。
4、明白DCOM/CORBA/XML/WEBServices存在的意義
隨著技術的發展,軟體與網路的無縫結合是必然趨勢,軟體系統的位置無關性是未來計算模式的重要特徵之一,DCOM/CORBA是當前兩大主流的分布計算的中間平台,DCOM是微軟COM(組件對象模型)的擴展,而CORBA是OMG支持的規范。
XML/WebServices重要性不言而喻,XML以其結構化的表示方法和超強的表達能力被喻為互聯網上的「世界語」,是分布式計算的基石之一。
5、不要將軟體工程與CMM分開
大型軟體系統的開發中,工程化的開發控製取代個人英雄主義,成為軟體系統成功的保證,一個編程高手並不一定是一個優秀的程序員,一個優秀的程序員是將出色的編程能力和開發技巧同嚴格的軟體工程思想有機結合。
編程只是軟體生命周期中的其中一環,優秀的程序員應該掌握軟體開發各個階段的基本技能,如市場分析,可行性分析,需求分析,結構設計,詳細設計,軟體測試等。
6、需求理解能力
程序員要能正確理解任務單中描述的需求。
在這里要明確一點,程序員不僅僅要注意到軟體的功能需求,還應注意軟體的性能需求,要能正確評估自己的模塊對整個項目中的影響及潛在的威脅,如果有著兩到三年項目經驗的熟練程序員對這一點沒有體會的話,只能說明他或許是認真工作過,但是沒有用心工作。
7、模塊化思維能力
作為一個優秀的程序員,他的思想不能局限在當前的工作任務裡面,要想想看自己寫的模塊是否可以脫離當前系統存在,通過簡單的封裝在其他系統中或其他模塊中直接使用。
這樣做可以使代碼能重復利用,減少重復的勞動,也能使系統結構越趨合理。模塊化思維能力的提高是一個程序員的技術水平提高的一項重要指標。