Ⅰ 如何成長為一個真正合格的程序員
優秀程序員都是很努力的
一個真正合格的程序員,除了要有扎實的理論基礎和代碼能力,還要有諸多的綜合素質。除非你只是一個純粹的碼農,除非你只是想做一點平淡的代碼工作,否則如果你想有更好的發展,那就必須「學習」。從我自己的發展經歷來講,其實我只是一個半路出家的程序員,我沒上過高中,只是師范畢業,學的還不是計算機,而是美術專業,從參加工作那天起開始自學計算機,花了半年學會了VB程序設計,寫了第一個vb程序,一個校園的自動播音系統,實現了校園鈴聲、升旗、課間操等定時音樂的自動播放,免費提供給學校使用,給學校帶來極大方便,從此我愛上了編程。後來為了宣傳單位的形象開始自學ASP腳本語言,一個月時間寫出了第一個ASP網站,在這個過程中學習了網頁前端布局,知道了前端可以有JS控制,知道了域名是什麼,知道了http協議,知道了WEB服務的發布。從那時起,我覺得網站建設就是一個商機,從此開啟了我的網站建設之路。其實也就是程序員發展之路,至此,我在這條路上一發不可收拾。
在這期間我開始接一些網站建設的活兒,一開始,在網上搜索一些開源的代碼進行修改,滿足客戶需求,但是很快發現一些問題,大多數代碼都是預先掛了一些廣告在裡面,如果對程序不熟悉,等你網站發布出來,你就只能看到滿山的網站,客戶當然就不滿意了,最後你還不知道這些廣告從哪裡冒出來的,甚至有些網站留了很多漏洞和後門,讓你防不勝防。所以,想想還是自己寫一套CMS系統,我只自己使用,只放在自己的伺服器上,這樣的話安全性高了很多,至少被攻擊的幾率少了多,也不擔心莫名其妙冒出來的廣告。於是,我開發了第一套產品,屬於我自己的CMS,期間我可以說學到了更多的知識,累積了不少的產品開發經驗。所以這里我總結一條,要成為一個合格程序員,最好完整的做一個項目吧。哪怕是項目的前端不懂,資料庫不懂,逼迫自己去學習,去了解,最終產品雖然不夠完善,至少你了解一個項目需要什麼,和什麼技術有關聯,這樣對你自己所擅長的東西就很有幫助。
不斷學習,與時俱進。我喜歡一句話叫萬變不離其宗。雖然程序語言有很多,但是基本原理還是相通的。我做了第一個ASP的CMS以後,很快發現ASP的程序網站已經不能適應項目開發的需求,需要更加高效的腳本語言來實現更多的功能。這個時候php就成了我首先研究的語言,因為我發現很多第三方開放的APi提供的都是PHP的,這讓我們使用更多其他第三方功能的時候開發會更加方便快捷,所以我花了一個周,學習了基本語法和函數,我發現從ASP遷移到PHP其實是很簡單的事情,只是語法不同,程序結構也是一樣的,條件格式、邏輯判斷、條件分支、循環處理也都差不多。經過學習很快掌握了這個語言,開始了項目開發之路。可見不斷的學習,也就是自我成長的一個重要的過程。
良好的思維能力,這是一個程序員必須具備的技能。思維能力就是一個能夠讓代碼在你頭腦中執行一遍的能力,也就是說你在寫代碼的時候你的腦海里就能呈現出代碼運行以後的結果,呈現給用戶的界面,把抽象的邏輯代碼轉成具體形象的能力。良好的思維還體現在,一個程序的處理其實都離不開計算機運行的本質,那就是數據輸入(數據從哪裡來),到數據處理(獲取的數據需要怎麼加工處理或者轉換為另一種形式),最後到數據輸出(給用戶呈現一個結果,圖像的、文字的、視頻的、聲音的或者是多媒體的)。程序整體是這個理念,分解到很多細小的模塊也是這樣,所以只要有這些核心理念,你的思維能力就不會有問題。
通過我的學習和發展,我總結了,要讓自己成長為合格程序員,離不開學習,離不開項目實踐,離不開思維的創新,更離不開努力勤奮和汗水,願有志青年都想有所成,學有所收,成就自我!
Ⅱ 如何才能夠成為一個合格的程序員呢
隨著計算機行業的發展,市場上程序員的數量越來越大,很多人開始轉行學習軟體開發,這就導致程序員開始分為三六九等。怎麼才能成為優秀的程序員呢?程序員不僅需要掌握開發技能,職業素養也是非常關鍵的。那麼作為程序員需要具備哪些素質呢?下面小編為大傢具體介紹。
一、團隊精神和協助能力
協助是一個團隊裡面不可或缺的精神,這是一種互相信任的無私奉獻,在任何團隊中,團隊裡面的隊員都是互補的。對於一名優秀的程序員來說,他知道團隊的力量是遠遠超過一個人的力量。在工作中沒有個人主義,團隊不僅強調個人的工作結果,更重要的是強調團隊的整體表現。團隊不僅依賴於頭腦風暴和決策,還依賴於其成員的貢獻。我們都知道一根筷子容易折,一把筷子難折斷,這就是團結的力量。
二、求新求精
優秀的程序員善於尋求新的想法,並且能夠對新技術充滿更多的好奇心。
三、條理清晰
毫無疑問,優秀程序員解決問題的想法特別明確,事情能夠有條不紊的進行。對於很多程序員來說,編寫代碼是一種能夠使人非常幸福的過程。
四、書寫注釋和文檔能力
很多人認為編程就是寫代碼,其實這種想法是非常片面的。軟體開發主要是由代碼和文檔組成的,一名優秀的程序員,不僅需要寫好代碼,還需要具備很強的注釋和文檔書寫能力。注釋和文檔是非常重要的環節,如果在寫代碼的過程中沒有進行注釋和文檔,後期進行代碼修改和調整是非常困難的,並且還會出現很多麻煩。程序員不僅需要具備編寫代碼的能力,在學習中掌握注釋和文檔也是非常關鍵的步驟。
Ⅲ 如何成為一名合格的程序員
我覺得你要看足夠的編程書,因為你必須要掌握如何編程,你才能成為一個合格的程序員,並且你還要電腦的運用非常的熟練,這樣你就可以更好,也可以更快的運用電腦了,可以把我們的工作弄得更完美
Ⅳ 作為一個好的程序員,都需要具備哪些基本的
你好,小U來為您解答這個問題,眾所周知,程序員是從事程序開發、維護的專業人員。
作一個真正合格的程序員,需要具備:
1:團隊精神和協作能力
團隊精神和協作能力是作為一個程序員應具備的最基本的素質。
2:文檔習慣
文檔是一個軟體系統的生命力。作為代碼程序員,必須將30%的工作時間寫用於技術文檔。沒有文檔的程序員勢必會被淘汰。
3:規范化的代碼編寫習慣
知名軟體公司的代碼的變數命名、注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和糾錯,也有助於不同技術人員之間的協作。
4:需求理解能力
程序員要能正確理解任務單中描述的需求。
5:模塊化思維能力
作為一個優秀的程序員,其思想不能在局限當前的工作任務裡面,要想想看自己寫的模塊是否可以脫離當前系統存在,通過簡單的封裝在其他系統中或其他模塊中直接使用。
6:測試習慣
測試是軟體工程質量保證的重要環節,但是測試不僅僅是測試工程師的工作,而是每個程序員的一種基本職責。程序員要認識測試不僅是正常的程序調試,而要是要進行有目的有針對性的異常調用測試,這一點要結合需求理解能力。
7:學習和總結的能力
程序員是很容易被淘汰的職業,所以要善於學習總結。
Ⅳ 如何成為一名程序員
成為程序員的具體步驟:
第一步:
掌握一種編程語言。學習任意一種主流的編程語言,例如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軟體來。
Ⅵ 北大青鳥java培訓:如何成為一名合格的程序員
如何成為一名合格的程序員?一般來說,合格程序員要具備多方面的知識素養與能力,下面由北大青鳥安徽計算機學院http://www.kmbdqn.cn/老師為你分析一下。
程序員分類與素質要求:程序員一般分為網路程序員、游戲程序員、資料庫程序員等。
網路程序員主要以開發動態頁面為主,例如電子商務網站的購物程序、論壇和BBS等。
游戲程序員作為新軍,目前在IT市場上非常紅火。
一般游戲程序員可以分為圖形程序員、聲音程序員、人工智慧或游戲關卡程序員、物理程序員。
而資料庫程序員的工作很大一部分就是管理數據,這其中有一門專業的技術叫做數據挖掘,有許多公司都相當重視數據挖掘並且從中獲得了經濟效益。
1.創新能力做程序員千萬不要小看創新能力,本身計算機就是一個發揮創意的好地方。
舉個例子,ICQ這個知名聊天軟體是由以色列Mirablis公司開發的。
1998年6月,AOL以2.87億美元買下了Mirablis以及該公司所有的ICQ互聯網聊天技術。
由此可見,將創意應用到工程項目中,其中所含的經濟價值將不容小視。
2、團隊合作精神在軟體公司,團隊精神是非常重要的。
在軟體開發過程中,往往都採取項目運作方式。
任何個人的力量都是有限的,在大型商業軟體的開發工作中,一個成功的軟體來源於團隊的精誠合作。
團隊精神正是程序員應該具備的最基本的素養。
如何成為一名合格的程序員?參加職業培訓也是一個不錯的學習途徑,例如北大青鳥ACCP軟體工程師培訓,是不錯的課程。
如果你時間不多,可以考慮一下通過網校進行學習,學習成本比較低廉,適合在職人士學習。
Ⅶ 怎麼樣才算是真正合格的程序員
作一個真正合格的程序員,或者說就是可以真正合格完成一些代碼工作的程序員,應該具有的素質。
1:團隊精神和協作能力把它作為基本素質,並不是不重要,恰恰相反,這是程序員應該具備的最基本的,也是最重要的安身立命之本。把高水平程序員說成獨行俠的都是在囈語,任何個人的力量都是有限的,即便如linus這樣的天才,也需要通過組成強大的團隊來創造奇跡,那些遍布全球的為linux寫核心的高手們,沒有協作精神是不可想像的。獨行俠可以作一些賺錢的小軟體發點小財,但是一旦進入一些大系統的研發團隊,進入商業化和產品化的開發任務,缺乏這種素質的人就完全不合格了。
2:文檔習慣說高水平程序員從來不寫文檔的肯定是乳臭未乾的毛孩子,良好的文檔是正規研發流程中非常重要的環節,作為代碼程序員,30%的工作時間寫技術文檔是很正常的,而作為高級程序員和系統分析員,這個比例還要高很多。缺乏文檔,一個軟體系統就缺乏生命力,在未來的查錯,升級以及模塊的復用時就都會遇到極大的麻煩。
3:規范化,標准化的代碼編寫習慣作為一些外國知名軟體公司的規矩,代碼的變數命名,代碼內注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規定,良好的編寫習慣,不但有助於代碼的移植和糾錯,也有助於不同技術人員之間的協作。
有些coding fans叫囂高水平程序員寫的代碼旁人從來看不懂,這種叫囂只能證明他們自己壓根不配自稱程序員。代碼具有良好的可讀性,是程序員基本的素質需求。
再看看整個linux的搭建,沒有規范化和標准化的代碼習慣,全球的研發協作是絕對不可想像的。
4:需求理解能力程序員需要理解一個模塊的需求,很多小朋友寫程序往往只關注一個功能需求,他們把性能指標全部歸結到硬體,操作系統和開發環境上,而忽視了本身代碼的性能考慮,有人曾經放言說寫一個廣告交換程序很簡單,這種人從來不知道在百萬甚至千萬數量級的訪問情況下的性能指標是如何實現的,對於這樣的程序員,你給他深藍那套系統,他也做不出太極鏈的並訪能力。性能需求指標中,穩定性,並訪支撐能力以及安全性都很重要,作為程序員需要評估該模塊在系統運營中所處的環境,將要受到的負荷壓力以及各種潛在的危險和惡意攻擊的可能性。就這一點,一個成熟的程序員至少需要2到3年的項目研發和跟蹤經驗才有可能有心得。
5:復用性,模塊化思維能力經常可以聽到一些程序員有這樣的抱怨,寫了幾年程序,變成了熟練工,每天都是重復寫一些沒有任何新意的代碼,這其實是中國軟體人才最大浪費的地方,一些重復性工作變成了熟練程序員的主要工作,而這些,其實是完全可以避免的。
復用性設計,模塊化思維就是要程序員在完成任何一個功能模塊或函數的時候,要多想一些,不要局限在完成當前任務的簡單思路上,想想看該模塊是否可以脫離這個系統存在,是否可以通過簡單的修改參數的方式在其他系統和應用環境下直接引用,這樣就能極大避免重復性的開發工作,如果一個軟體研發單位和工作組能夠在每一次研發過程中都考慮到這些問題,那麼程序員就不會在重復性的工作中耽誤太多時間,就會有更多時間和精力投入到創新的代碼工作中去。
一些好的程序模塊代碼,即便是70年代寫成的,拿到現在放到一些系統裡面作為功能模塊都能適合的很好,而現在我看到的是,很多小公司軟體一升級或改進就動輒全部代碼重寫,大部分重復性工作無謂的浪費了時間和精力。6:測試習慣作為一些商業化正規化的開發而言,專職的測試工程師是不可少的,但是並不是說有了專職的測試工程師程序員就可以不進行自測;軟體研發作為一項工程而言,
Ⅷ 如何才能修煉成一名不可替代的程序員,避免裁員危機
程序員,就是從事程序開發、程序設計、程序維護的專業人士。
作為一種專業性極強的技術性專業,程序員的工作難度非常高,只有專業技能水平高超的人才能在這個領域獲得良好的發展前景。……那些實力不足的人,只能被最終淘汰。
因此,要想在程序員這一行里成為不可替代的人,避免自己被淘汰出局的情況,就必須具備以下幾方面能力:
1,高人一籌的專業技能。
在職場上,要想確保自身生存,就必須具備一項專業技能。……要想確保自己不被淘汰,就必須具備高人一籌的專業技能水平。
因此,要想讓自己成為不可替代的程序員,要想讓自己避免被淘汰的情況,就必須確保自己的專業技能水平高人一籌。
2,強大的羅輯思維能力。
程序,是一個邏輯性極強的系統。
一個程序的各個部分之間、各項功能之間,都存在著極強的關聯,也擁有著非常強的邏輯關系。
因此,要想編寫出性能優異的程序,就必須擁有極強的邏輯思維能力。……這是確保自己擁有更強實力、確保自己不被淘汰的重要能力。
3,高超的數學水平。
程序的表象,是一段代碼。而其核心,則是數學模型,是具體的演算法。……只有具備高超的數學水平,才有能力編寫出演算法精妙、邏輯嚴謹的程序來。……這是自己具備更高水準的關鍵因素。也是自己高人一籌,不可替代的關鍵因素。
4,精通至少一門編程語言。
編程語言是程序員在編程時所用的工具。……只有熟練掌握手中的工具,才能讓自己編寫出優秀的軟體。……編程語言有很多種,一個程序員不可能面面俱到。……但是一個合格的程序員必須掌握至少一門編程語言,這就是自己工作時最得力的工具。……運用這個工具,自己就可以編寫出優秀的軟體,就可以獲得更好的業績,最終成為不可替代的優秀人才了。……自己也就不可能被淘汰了……
Ⅸ 小白如何成為程序員
學唄。想成為程序員,無非就是學習計算機編程語言,學習編程唄,現在互聯網上的編程教程一搜一大把,編程應該如何學、怎麼學和資料都不是什麼秘密,任何人只要想學的都可以馬上開始了。
如果心裡沒譜,可以參照我寫的Java學到什麼程度可以找工作。
Ⅹ 如何成為一個合格的程序員
技術能力
技術技能才能讓你得到面試機會。當招聘一個Java開發人員時,公司會考慮若干因素,如
基礎,對Java編程語言基礎的理解,知道如何編寫代碼是很好的,但是知道代碼背後的推理和/或所選擇的演算法將使你從人群中脫穎而出
2.了解主流編程工具
構建工具:Maven或Gradle。
SCM:Git(不是GitHub。大不相同)。
構建自動化:Jenkins。
IDE:Netbeans或Eclipse——不僅用於編寫代碼,而且還從IDE中重構和調試代碼。我遇到了很多沒有如何從他們最喜歡的IDE調試的開發人員。
Bug跟蹤:Bugzilla或Jira。
主流編程框架
Spring MVC用於Web開發
JSF的知識
應用程序伺服器
所有Java開發人員應該知道如何在Apache Tomcat中部署。
當Glassfish開發停止時,下一個最好的事情是JBoss WildFly。
雲開發
在Amazon EC或PaaS上獲取免費帳戶。
Amazon的另一個選擇是Red Hat OpenShift。
認知技能
對Java編程語言和各種工具有深入的了解自然是一件好事,但你的僱主/客戶也會從以下方面對你進行評估。
3.溝通
能夠和同事,領導很好溝通,與周圍的環境互動,提出問題的解決方案。
4.問題解決
開發人員是問題解決者,也是哲學家和思想家。不能做那種只會寫代碼,不參與討論如何解決問題的程序猿。不要成為那種只會說「告訴我要創建什麼,我就創建什麼,不要問我這是否為最佳方法」的程序猿。
5.有團隊精神
無論是結對編程還是大型項目,所有開發人員都是作為團隊的一部分在工作。你需要致力於團隊的目的和目標。幫助指導初級成員,或幫助苦苦掙扎的團隊成員克服障礙,成為團隊的一員。
6.會自學
這是一個非常重要的技能;在你自己的時間學習新技能的能力。不要總是等待公司為你提供培訓。你需要自己去學習新技術,提升自己在相關領域的水平。從前端開發到架構模式,總是有一些新生事情值得學習。