導航:首頁 > 程序命令 > 程序員24年攻略

程序員24年攻略

發布時間:2022-07-27 17:53:39

① 三流程序員如何轉行

首先三流的程序員不叫程序員,那叫做碼農。而你要是想混的好。那你就要擺脫碼農的身份,往真正的程序員的方向走!

第一步,告別碼農,學習新知識。

之所以叫碼農就是因為你們收割的拿回來的不過是別人的辛苦產物。隨便抄一下就能用了。所以就叫做碼農。你們根本沒有所謂的原創程序也沒有拿得出手的技術和成績,所以就一直把自己當三流程序員,其實你們就是碼農。

所以你們應該先告別碼農的身份,從一個程序員的角度來看待問題。不要遇到代碼的事情就要去找別人做的東西。借鑒可以,但是東西還是自己做的好。

這個時段不但是要接受錘煉和多次的打擊更是要學習新鮮的知識,跟上現在的程序員的潮流。這樣你才能第一步脫開碼農的身份。

第二步,跳槽去更能發展的地方,而不是在這里吃老本。

不要停留在你學習不到新鮮知識和東西的地方。程序員是最容易跳槽的職業。因為職業的構成就是要不斷的跳槽出去學習然後進步的。所以不要擔心自己跳槽的速度快或者經常要找工作。這是你要成為一流的可以混吃等成績的程序員的必經之路。

這一條路上你不但要吃苦還要多學習多進步。這種情況可能會持續5-8年左右,所以一定要做好心理准備,切記做好心理准備!

第三步,鞏固現有的,成為一個優秀的混的好的程序員。

一般來講這個時候你已經快35歲左右了。但是更好的未來就在前方,下面就不用教你怎麼做了。因為你已經習慣了一個程序員的生活了。下面就是堅持不懈繼續努力的了。

② 24了,想轉行做程序員,懂的人,或過來人有什麼建議或意見嗎

對於像你一樣,24歲,想轉行做程序員的人,我的建議只有四個字,就是貴在堅持。
轉行做一個技術含量高的行當,不是一個容易的事情,自己要心裡有數,程序員雖然待遇優厚,但是不是白來的一份付出?一份收獲,你要做好努力的准備。

③ 一個程序員所要經歷的步驟

程序員應具備的12種能力
畢業四年來,感覺自己也是從一名不合格的程序員一步步走過來的。回頭反思一下,合格的程序員有很多標准和要求,下面是我總結的一個合格程序員應該具備的12種能力。中國軟體行業的崛起,靠的是合格的程序員。任何華麗的管理制度都不能保證軟體項目的成功交付,合格的程序員就是有力的保證,是項目成功的基礎。寫下這些,是為了給剛剛進入程序員這個職業的新同學們一點參考。我一直以為,當程序員是很辛苦的,如果不是真正的喜歡,很難堅持下去。如果真的不喜歡這個職業,也該尊重這個職業,尊重自己,趕緊改行。

1. 編程語言能力

不用多說,作為合格的程序員,精通一門語言是必須的。這種精通,不是說看了一本《24小時精通XXX》,抄了幾個程序就能說精通的,要靠長時間的積累和浸淫。

2.編碼能力

我曾經看多很多程序員寫的代碼,在同一個jsp或者java源文件里,出現了三種以上的對方法的命名方式,有下劃線間隔的,有全大寫的,有拼音首字母的。就像一個菜市場,雜亂無比,估計10天後,他自己都無法看的懂。遵守編碼規范,是一個程序員最基本的要求,可悲的是,很多程序員根本沒有意識到這個問題的嚴重性。隨意堆砌網上搜來的代碼,根本不管可讀性和可維護性,只要能實現功能就行了,心想做完這個項目,就拍拍屁股走人了,缺少最基本的職責素養。我經常把代碼必須成程序員的孩子,你就是是孩子他爹,孩子他媽,是有感情的。對你自己的孩子,你能不仔細呵護嗎?你是稱職的父母嗎?這是我編寫的一個Java編碼規范,供大家參考,這里可以下載http://gurudk.javaeye.com/blog/111734

另外一個就是注釋,要注意不是為了注釋而注釋。對類,以說明職責為主;對方法,以說明意圖為主;對方法體,以說明實現思路為主。對於大段大段的代碼,要分段,使用空行隔開,並使用行內注釋進行說明。

思維的條理性,寫代碼之前,先簡單計劃一下,用自然語言把流程寫下來,用於整理實現思路。不要看了需求或設計之後,馬上就敲代碼了,敲完代碼馬上就debug。花點時間思考,敲代碼只是最後一個很簡單的工作,不要把自己變成一個代碼打字員,編寫邊想,寫了刪,刪了寫。安安靜靜把實現過程想清楚,在腦子里先實現一遍。再去敲代碼,水到渠成。

3.面向對象思維能力

如今,多數編程語言都是面向對象的編程語言。而這些面向對象的編程語言的共同的精髓就是面向對象的思想。掌握這些比面向對象語言本身更重要,比如對繼承,多態,重載的理解。對面向對象基本原則的理解,比如開閉原則,介面隔離原則,單一職責原則等。在此基礎上,應該掌握常用的設計模式,比如工廠模式,策略模式,觀察者模式,模板方法模式,命令模式等等。我面試過很多程序員,沒有一個能說得上幾句的。

4.利用工具能力

工欲善其事,必先利其器。有了趁手的傢伙,工作效率可以提升數倍。你編程序,有沒有選擇一個很好的IDE,以前聽說編程高手都用記事本寫程序,我覺得那是一種自虐。就像以前看到的一篇文章,說一幫戶外旅行愛好者,出去旅遊,背了重重的旅行包,裡面裝著什麼壓縮餅乾等快速食品。他們寧可就著礦泉水啃壓縮餅干,也不肯去1里路都不到的快餐店,農家菜館吃飯。工具是為目的服務的,好用,提高效率就行,形式無所謂。

另外一個常用的工具就是日記本,好聽點可以稱為知識管理工具,我用的是myBase,感覺非常好用,在之前,我的所有的片段內容都是記錄的單獨的文本文件里的,非常不好找,管理也很混亂。

經常上互聯網,看到好多好的資料想保存下來,作為日後查看之用.一開始,我用的是firefox自帶的書簽,但是自己分類太累,多了之後不便於查找,很麻煩。後來用了得樂書簽(del.icio.us)的firefox插件,非常方便,現在成為了我必備的一個工具。

還有一個最重要的工具就是搜索引擎了,我裝了google forfirefox插件,感覺不錯,還有英文翻譯功能。按照我同事的說法,內事用,外事用google。很多技術資料都是英文的,用google搜索效率高一些。搜索引擎用好了,就等於打開了一扇通向知識寶庫的門,使用搜索引擎,關鍵字選擇很重要。

經常去瀏覽大牛的blog,逐個網站訪問很麻煩,去看了又可能沒有更新,可以藉助於RSS訂閱工具,我是用iGoogle桌面工具,每天早上花半個小時掃一下,大牛的最新文章盡收眼底了。

5. 英語能力

新的技術資料都是英文的,英語國家的IT技術走在我們前面至少10年(這是我自己估計的數字,可能正在縮小)。就連印度,一個連基礎設施建設都不太完善的國家,因為其英語基礎較好,其在軟體外包領域的發展也非常迅猛,遠遠超過了我們。學英語,首先是有信心,其次就是花時間。多閱讀英文資料,使用金山詞霸,google的firefox插件等工具配合,貴在堅持。

6.學習能力

在IT也混飯吃不容易,整個環境進化的太快,你不學習,就等於落後了。學習要有針對性,別今天學ruby,明天學python,後天php的。首先要認清自己的目標,自己短期目標是什麼,1年後,3年後,5年後的目標是什麼。結合這些目標,確定自己的學習計劃,人的精力畢竟是有限的。當然,多掌握幾門編程語言也是好的,可以擴充自己的知識面,重要的是為自己的目標服務。

要想系統的學習一門技術或工具,看書是最好的方法。看完後,然後上網找相關資料,進行深入學習。學習要抓緊一切可以利用的時間,比如電腦啟動要花1分多鍾,旁邊放一本書,可以看上幾頁了。公交車上,地鐵上也可以看。

當然,不能只學習技術,要經常聯系自己的軟技能,比如溝通能力,表達能力。你可以把自己學到的東西,解釋給自己的同事聽,既加深了理解,又增進了同事之間的交流。學習的最高境界就是你能夠把學到的東西解釋給別人聽,這才說明你理解了。在學習心理學上,稱之為構成主義。

我學一樣東西,總是先上網了解有沒有相關書籍,如果想學,就買一本或者去圖書館找相關的書來讀。我買的書,家裡快放不下了(到目前位置,我買了1萬多塊的書)。我多半是把目錄看完,了解這本書講解的主要內容,然後需要的時候,我就可以立即補充它進入到我的知識結構。每個人可能都有自己的學習方法,意識到學習的重要,並能夠根據需要補充自己的知識,這種能力更重要。

7.創造能力

普遍認為,東方人模仿能力很強,但創造能力差。我見過很多這樣的程序員,經常說,「這個只能這么解決了,我想不出有什麼別的方法。」可能他根本都沒想過別的方法,或者懶得去想。對任何一個問題,找出兩種以上的解決辦法都是非常容易的,簡單的google一下,可能就是數十種。悲哀的是,有些程序員經常止步於自己構建的狹小領地之內。對待客戶也是這種態度,不是積極的幫助客戶解決問題,而是推脫這只是唯一解決方案。

打破這一思維定勢的首先的一個辦法就是在面臨一個問題時,首先想到的是「沒有不可能」,或是「一切皆有可能」,前面那個是阿迪的廣告語,後面是李寧的。只有這樣去想,才能尋找解決問題的別的出路,即使最後我們試了很多種辦法,還是只有著一種解決方案,但我們在這種尋找解決方案的過程中,常常會產生很多好的想法,這樣才會使我們真正深刻思考一個問題。建議大家看一看《水平思考》這本書,他提供了一些進行創造性思考的方法和工具。

但我認為,堅持認為存在另一種解決方案的信念是第一位的,方法和工具都是其次。

8.文檔能力

也許有人會質疑,程序員跟寫文檔有什麼關系。大家開源軟體也用過不少,看看Spring,hibernate,Struts等最流行的開源軟體的文檔就知道,他么的tutorial,他們的getstarted,他們的reference文檔寫的多麼的易懂。其實寫代碼也相當於寫文檔,只不過用的是編程語言。同樣,寫文檔,用自然語言,也相當於寫程序,簡單明了,清晰易懂,這樣的「程序」誰看誰舒服。同樣,對於想進階到設計師或者需求分析員角色的程序員,文檔能力更是非常重要。

word是一個最實用的工具,很多程序員,多級編號都不會用,索引目錄也不知道如何生成,更別靈活應用樣式了。很多排版都是所謂的dirty work。垃圾樣式一大堆。其實,靜下心來,稍微學習一下,就能寫出一篇格式漂亮的文檔。

9.抽象能力

抽象能力是認識事物從現象到本質的能力。如果你只是停留在「見山是山,見水是水」的層次,客戶說什麼,你就做什麼,設計怎麼做,你就怎麼實現,從來不過問為什麼,也不去想他是滿足了用戶哪些方面的需求呢。這樣可能只解決了表面的問題,可能會引起返工。認識到本質,才能讓你的程序具備更大的靈活性和可擴展性。在做企業應用軟體開發中,抽象能力體現為對問題域的理解能力,對領域模型的抽象。合理的抽象也是代碼重構的前提,每一次重構,都是向更好的抽象邁進了一步。

10.代碼評審能力

代碼評審和單元測試是保證代碼質量的兩種常用手段之一。代碼評審能力,說明了你的審美標准,知道什麼是好的,什麼是不好的,什麼是優雅的代碼,什麼是糟糕的代碼,你才能讓自己做的更好。

11.單元測試能力

沒有單元測試的代碼,只能說是半成品。因為沒有什麼能證明你的代碼是可以運行的。測試驅動開發是一個非常好的敏捷過程的最佳實踐。單元測試還可以作為回歸測試,在修改代碼時,起到警戒線標志的作用。是否具有單元測試的意識是區分程序員是否合格的重要標准。寫不寫單元測試是區分平庸程序員和優秀程序員的重要標桿。

12.DRY
DRY是一種原則,就是Don't RepeatYourself.出自《程序員修煉之道-從小工到專家》。這條原則可以用到很多地方,比如你經常要編譯,打包,部署應用程序,供集成測試用。每次你都在重復你自己,寫一個自動化腳本(比如用ant,批處理命令)來將這些工作自動化,以提高效率。

還有一個就是我們經常在不同的地方切換IP,如果每次手工做,也非常浪費時間,寫一個bat命令可以解決,找一個小工具也可以解決。

編碼時,對代碼的復用也是在重復你自己,雖然拷貝過程很爽,但是維護一致性就要付出巨大的工作量,特別是將來維護的人不是你的時候,使用代碼生成工具可以解決這個問題。類似的例子太多了,如果你發現你經常做一些重復的工作,就要警惕了,是否違背了這個原則,想一些辦法將他們自動化。

④ 我是如何從程序員到年入80萬的自由職業者的

1.最簡單的方法:
public static String reverse1(String str)
{
return new StringBuffer(str).reverse().toString();
}
2.最常用的方法:
public static String reverse3(String s)
{
char[] array = s.toCharArray();
String reverse = ""; //注意這是空串,不是null
for (int i = array.length - 1; i >= 0; i--)
reverse += array[i];
return reverse;
}
3.常用方法的變形:
public static String reverse2(String s)
{
int length = s.length();
String reverse = ""; //注意這是空串,不是null
for (int i = 0; i < length; i++)
reverse = s.charAt(i) + reverse;//在字元串前面連接, 而非常見的後面
return reverse;
}
4.C語言中常用的方法:
public static String reverse5(String orig)
{
char[] s = orig.toCharArray();
int n = s.length - 1;
int halfLength = n / 2;
for (int i = 0; i <= halfLength; i++) {
char temp = s[i];
s[i] = s[n - i];
s[n - i] = temp;
}
return new String(s); //知道 char數組和String相互轉化
}

⑤ 有哪些新手程序員該知道的工作小技巧

1.積極大膽的谷歌。你得知道如何有效的組織搜索關鍵字,查閱別人寫的代碼,然後合理地用在代碼里,從而解決問題。

2.擁抱變化,堅持不懈。老手程序員在接觸新技術時,能欣然接受像個初學者一樣處處受挫,並總能在完成工作的同時自學成才。

3.承認細節的重要性。例如變數和函數的命名、CSS屬性的命名、該用哈希還是數組,以及其他看起來微不足道,但可能對項目有深遠影響的事情。

4.承認大多數的「重要決定」其實並沒有那麼重要。一般的開發者經濟常在技術選型等「重大問題」上陷入唇槍舌戰,而程序員老鳥們會避免浪費時間在罵戰中。這一點上,它們就像禪宗大師一樣。

5.選擇合適的工具解決問題。網上有無數的開源庫、工具和框架,讓人眼花繚亂。而老手們清楚地知道針對怎樣的問題,應該用怎麼樣的工具。

6.明白代碼「不值錢」(該刪就刪)。你必須習慣於刪掉幾百行代碼來重寫程序的某一部分,毫不留情。

7.在評估技術的時候要全面。例如,我一直在鼓吹Elixir。它語法優美,社區完善,有很大的潛力。但Elixir誕生的時間太短,所以如果要構建復雜的功能,可能會難以找到能幫你提高效率的開源工具。因此,在評估要不要選擇使用一項技術時,你得把所有這些因素都考慮在內。

23.知道什麼時候開始回饋。到了某個時候你需要將你的技能和經驗傳授給年輕的開發人員,就像你的導師當時教授你一樣。

24. 能寫爛代碼。有時候可以當一當「膠帶式程序員」。關鍵是隨著時間推移,你需要弄清楚什麼時候可以走捷徑,什麼時候必須走捷徑。這其實是最難掌握的技能之一。

25. 禮貌地告訴別人你工作到很晚。如果你是辦公室里最後一個,可以發一封簡短的匯報郵件。別人一般會注意到郵件上的時間戳的。

26. 像一個領導者(Leader)一樣做事,而不是老闆(Boss)。老闆是讓別人為他工作的人,領導者是人們追隨的人。做個領導者。

27. 去打打桌上足球。從長期來看,同其他開發者(或不同崗位上的同事)建立聯系比在緊巴巴的期限里交付一個功能更有價值。

28. 在壓力下學習。你需要知道如何應對像系統宕機而你要負責將它復原的情況,即使一開始你完全沒有頭緒。

⑥ Java程序員職場全攻略:從小工到專家的目 錄

上篇 我與江湖
第1章 初窺門徑——行業揭秘 2
1.1 IT精英在中國的生存現狀 2
1.1.1 外行人眼中的IT人 2
1.1.2 IT行情分布 5
1.1.3 IT語言平台 7
1.1.4 你說我容易嗎 10
1.1.5 我挨踢我驕傲 12
1.2 當今主流公司的企業文化 12
1.2.1 歐美企業的特色文化 12
1.2.2 日韓企業的工作模式 14
1.2.3 中資企業的傳統特色 15
1.2.4 兩種不同的軟體外包方式 16
1.2.5 加入什麼樣的公司 18
1.3 散兵游勇還是團隊作戰 18
1.3.1 哪樣多一些 18
1.3.2 團隊和單兵 19
1.3.3 不要停止思考 20
1.4 這條路大家都是怎麼走的 20
1.4.1 職位和待遇是怎麼升的 20
1.4.2 有干不動的時候嗎 23
1.4.3 走的人多了,還會有路嗎 24
1.5 大公司,小公司 26
1.5.1 大公司愛專才 26
1.5.2 小公司愛多面手 27
1.6 本章小結 28
第2章 霧里看花——職場誤區 29
2.1 到底差不差錢 29
2.1.1 大家都是個什麼身價 29
2.1.2 給自己估個好價 32
2.1.3 先掙的是資本,後掙的是錢 34
2.2 誰給我解決戶口問題 35
2.2.1 講講戶口的故事 35
2.2.2 各地戶口政策面面觀 37
2.2.3 別怕,咱有暫住證呢 39
2.2.4 戶口問題小結 40
2.3 我們不是愛加班 40
2.3.1 常態加班是為何 40
2.3.2 你為什麼加班 43
2.3.3 讓自己不再加班 43
2.4 莫學狗熊掰棒子 44
2.4.1 做過的這輩子永遠都不會忘嗎 44
2.4.2 為自己維護一個小倉庫 46
2.4.3 多寫開發心得 48
2.5 本章小結 49
第3章 下山之路——有備無患 50
3.1 從學生升級到開發人員 50
3.1.1 學校給了你什麼 50
3.1.2 咱們還缺啥 54
3.1.3 經驗,還是經驗 56
3.2 為自己定下目標 58
3.2.1 目標的意義 58
3.2.2 樹立目標的學問 59
3.2.3 讓自己知道今天該干什麼 61
3.3 IT認證的問題 63
3.3.1 認證那點事 63
3.3.2 現在的認證 65
3.3.3 該不該考個證 69
3.4 本章小結 70
第4章 必須通關的游戲——求職之旅 71
4.1 簡歷靚起來 71
4.1.1 簡歷不是這樣寫的 71
4.1.2 寫出出色的簡歷 74
4.1.3 如果是機器篩選簡歷 77
4.1.4 簡歷小結 77
4.2 筆試,混可不行 78
4.2.1 初識筆試 78
4.2.2 牛刀初試 80
4.2.3 筆試小結 83
4.3 面試——最難的BOSS 83
4.3.1 面試面什麼 83
4.3.2 支招面試 85
4.3.3 面試演習 87
4.3.4 面試小結 92
4.4 試用期——這才是最後一關 92
4.4.1 試用期考查什麼 92
4.4.2 多做什麼,少做什麼 93
4.4.3 試用期小結 94
4.5 本章小結 94
第5章 步入江湖——做事的學問 95
5.1 身為菜鳥 95
5.1.1 打碎牙齒往肚裡咽 95
5.1.2 菜鳥不應該自卑 97
5.1.3 一葉障目,不見泰山 99
5.2 銳意進取,菜鳥無敵 101
5.2.1 既是初生牛犢,就別怕虎 101
5.2.2 勤於學習,落後就要挨打 104
5.2.3 菜鳥應該懂得的幾件事 106
5.3 知足常樂,健康心態 109
5.3.1 總有你達不到的高度 109
5.3.2 職場爬山論 110
5.3.2 做最好的自己 112
5.4 菜鳥何以菜,大牛何以牛 113
5.4.1 代碼量的問題 113
5.4.2 敢於往上走一步 115
5.4.3 升天不成,掉下來也是個半仙 116
5.5 酒香也怕巷子深 117
5.5.1 找到你的優勢 117
5.5.2 學會競爭 118
5.5.3 發展才是硬道理 120
5.6 本章小結 121
第6章 立足江湖——做人的學問 122
6.1 新環境有新態度 122
6.1.1 開發人員和廚師 122
6.1.2 做人是為了做事 123
6.2 同事——戰友和對手 124
6.2.1 競爭與合作中的做人智慧 124
6.2.2 做一個好同事 127
6.3 上級,不是校長或家長 130
6.3.1 是員工,不是學生 130
6.3.2 上級討厭的員工 130
6.3.3 怎樣與上級處理好關系 135
6.4 新人和下屬,曾經的你 136
6.4.1 准備工作 136
6.4.2 學著做個好領導 137
6.4.3 被夾在自己的上級和下級之間怎麼辦 139
6.5 客戶,領導內行的外行上帝 140
6.5.1 如何招待上帝 140
6.5.2 不要這樣對待上帝 142
6.5.3 如何對付不可能完成的任務 144
6.6 學著處理和MM的關系 145
6.6.1 這個行業的男女比例 145
6.6.2 如何面對異性員工 146
6.7 本章小節 146
第7章 百尺竿頭,更進一步 147
7.1 技術不是萬能的 147
7.1.1 為何IT是個服務業 147
7.1.2 業務流程要清楚 147
7.1.3 專業領域的知識要了解 149
7.1.4 軟體系統的操作方式 149
7.2 書是人類進步的階梯 150
7.2.1 還要不要讀書學習 150
7.2.2 選本好書不容易 151
7.3 解決問題的方法 152
7.3.1 正招和歪招 153
7.3.2 優先使用正招 154
7.3.3 正招不夠,歪招也可以上 156
7.4 軟體產品的目標 159
7.4.1 實現功能是底線 159
7.4.2 提升性能帶來質的飛躍 160
7.5 多多參加技術大會和沙龍 164
7.5.1 何為技術大會 164
7.5.2 我們為什麼去技術大會 165
7.5.3 技術大會PK 165
7.5.4 技術沙龍 169
7.6 本章小結 169
第8章 江湖多歧路 170
8.1 「學院」派和「企業」派 170
8.1.1 何為「學院」派 170
8.1.2 「企業」派的實干 173
8.1.3 一起來做「企業」派 176
8.2 關於「劍宗」和「氣宗」的討論 177
8.2.1 何為「劍宗」 177
8.2.2 何為「氣宗」 178
8.2.3 奇技淫巧不如提升修為 180
8.3 有自己的平台才是王道 181
8.3.1 關於框架的純「拿來主義」 181
8.3.2 項目的分割 184
8.4 「大而全」還是「精而深」 186
8.4.1 「大而全」和「精而深」矛盾嗎 186
8.4.2 「大而全」托出「精而深」 188
8.5 本章小結 189
下篇 笑傲江湖
第9章 天下功夫出少林 192
9.1 Java EE開發人員必知必會 192
9.1.1 堅實的基礎——核心Java 192
9.1.2 只會Java可不行——大牛的百寶囊 195
9.2 Java ME開發人員必知必會 197
9.2.1 了解不同平台對Java ME的支持 198
9.2.2 游戲開發的基礎知識 200
9.2.3 網路編程知識 205
9.2.4 3G、Android對Java ME開發人員的挑戰和機遇 206
9.3 當下流行EE框架揭秘 207
9.3.1 Struts和WebWork那點事 208
9.3.2 Tapestry框架 211
9.3.3 Spring——不可多得的好框架 212
9.3.4 Hibernate——從關繫世界到對象世界 215
9.4 大型項目青睞的技術與平台 217
9.4.1 JSF框架 217
9.4.2 EJB 3.0業務層技術 219
9.4.3 JPA持久層技術 223
9.4.4 常見應用伺服器簡介 224
9.4.5 Java企業平台的榮耀之路 225
9.5 如何學好框架 226
9.5.1 全面了解各項功能 226
9.5.2 徹底研究工作機理 227
9.6 本章小結 228
第10章 幾種自廢武功的做法 229
10.1 相信謬論 229
10.1.1 說出來別不信——鏈表和數組的速度問題 229
10.1.2 Java真的比C/C++慢嗎 232
10.2 迷信工具,缺乏純代碼能力 234
10.2.1 迷信ORM 235
10.2.2 神化IDE 237
10.3 淺嘗輒止,孤陋寡聞 240
10.3.1 finally的忽視 240
10.3.2 PreparedStatement的誤解 243
10.3.3 管理資料庫連接不知連接池 246
10.4 忽視內存管理 250
10.4.1 對象的3種引用 251
10.4.2 「小肥豬」問題 255
10.5 看了就不要再犯的錯誤 256
10.5.1 「+」惹的禍 256
10.5.2 魔法數字 258
10.5.3 代碼復制師的渺茫前途 259
10.5.4 老壽星變數 260
10.6 本章小結 262
第11章 沒有必殺技,怎麼敢出來混 263
11.1 精通SQL 263
11.1.1 掀起SQL的蓋頭來 263
11.1.2 強大的SQL 265
11.1.3 SQL優化問題 268
11.1.4 當下主流的資料庫產品 270
11.2 拿下正則式 272
11.2.1 細說正則式 273
11.2.2 正則式在Java中的運用 277
11.2.3 正則式在JavaScript中的運用 281
11.3 不會用Ant的開發人員不是好Developer 284
11.3.1 Why Ant 284
11.3.2 Ant初體驗 286
11.4 淺談設計模式 288
11.4.1 設計模式的重要性 288
11.4.2 MVC設計模式 289
11.4.3 單例模式 292
11.4.4 最終守護者模式 293
11.5 本章小結 295
第12章 新銳兵器譜 296
12.1 面向服務的體系架構(SOA) 296
12.1.1 對面的SOA看過來 296
12.1.2 零距離接觸Web Service開發 299
12.1.3 博採眾長之集大成者——CXF 302
12.1.4 英雄不問歲數——Axis 2 306
12.1.5 走近ESB——企業服務匯流排 309
12.2 富客戶端應用(RIA) 313
12.2.1 從平淡到酷炫——RIA與AJAX 313
12.2.2 酷炫背後的基石——核心JavaScript 316
12.2.3 AJAX的開發利器——Dojo 319
12.2.4 AJAX的最酷代表作——GoogleMap 323
12.2.5 Web 2.0時代的異軍突起——Mashup 326
12.2.6 RIA殿堂的技術新貴——JavaFX 328
12.3 搜索引擎技術 337
12.3.1 Lucene開源項目 337
12.3.2 Nutch框架 342
12.4 本章小結 345
第13章 武學奧義 346
13.1 單元測試的利器——JUnit 346
13.1.1 JUnit簡介 346
13.1.2 單槍匹馬,赤膊上陣——JUnit的單獨使用 347
13.1.3 豈曰無衣,與子同袍——JUnit和Ant的聯合 350
13.1.4 得道者多助——JUnit在Eclipse和NetBeans中的使用 352
13.2 版本管理 354
13.2.1 版本不可一日不控 354
13.2.2 沙場秋點兵之版本控制系統 355
13.2.3 版本控制系統與IDE的協作 356
13.3 UML建模語言 357
13.3.1 UML就這么回事 358
13.3.2 UML之實戰IDE 359
13.4 大型伺服器操作系統 360
13.4.1 UNIX平台 360
13.4.2 Linux平台 361
13.4.3 Windows Server平台 362
13.5 集群與負載均衡 362
13.5.1 集群 363
13.5.2 冪等操作 364
13.5.3 我們的程序運行在哪 365
13.6 虛擬化與雲計算 366
13.6.1 舉杯邀明月,對影成三人——虛擬化 367
13.6.2 雲中誰寄錦書來——雲計算 368
13.7 本章小結 370
第14章 雜項 371
14.1 專業英語不能不熟練 371
14.1.1 向高新技術看齊 371
14.1.2 等到中文版的時候 372
14.1.3 做一個大牛的需要 373
14.2 維護大腦這個資料庫 373
14.2.1 書到用時方恨少 373
14.2.2 讓積累成為一種習慣 374
14.2.3 搜索引擎的使用 375
14.3 IT人也要不務正業 379
14.3.1 不懂數學豈不是很糟糕 380
14.3.2 誰說物理是白學了 382
14.3.3 一起來不務正業吧 383
14.4 讀學術論文 383
14.4.1 別怕我,我是好人 383
14.4.2 醍醐灌頂,如坐春風 385
14.5 本章小結 386

⑦ 小白,想入門程序員,應該從什麼開始學,順序是什麼

小白想要成為程序員,首選是選擇一門合適的語言,比如說:Python、Java、C、C++、GO語言等;其次,選擇合適的學習方式,比如培訓,周末班、脫產班還是網路班。
如果完全沒有編程基礎,建議大家學習Python,Python入門簡單、語法清晰、通俗易懂,非常適合零基礎人員。

⑧ 極客時間IT課程的老師胡峰寫的《程序員進階攻略》主要是什麼內容

在專欄中,他圍繞程序員這個職業,繪制了一條清晰的成長路徑圖,深入講解了技術人在不同的成長階段會面臨的常見問題和困擾,結合他自己和團隊成員的親身經歷,總結了一套從畢業入行到逐步進階的完整方法論,掃清迷茫與障礙的同時,幫你建立明確的自我定位與認知,進而一步一個腳印地,實現理想中的自我。

⑨ 想學習編程,怎麼入手,求攻略,告訴方法就可以

信息技術的發展時間雖然不長,但其爆炸式的發展速度使信息技術迅速覆蓋社會和人類生活的各個角落。程序員們是這場信息化浪潮的見證者之一,更是其中的主要參與者,這是時代賦予每個程序員的機會和責任。

信息技術的更新速度是驚人的,程序員的職業生涯則是一個要求不斷學習的過程,永遠不能固步自封。本人在工作期間曾看見過很多程序員只要有閑暇時間就瀏覽一些沒有太大作用的網頁,在網上聊天,打游戲,浪費了大量的時間,十分不可取。而另外一種情況是,IT技術的日新月異使很多程序員眼花繚亂,什麼都想學,卻又不知從何學起,今天看看這個,明天學學那個,貪多不熟。

雖然IT技術發展迅速,但很多技術都是有規律可循,一些基本的概念、原理和方法還很通用,可以舉一反三。本人根據自己的體會和經驗,向那些剛剛踏入IT行業的新程序員們或正在迷茫的程序員們推薦程序員必須掌握的七種武器,有了這七種武器,雖不敢說笑傲江湖,但將自己立於不敗之地還是可以的。

第一種武器:開發工具

至少熟練掌握兩到三種開發工具的使用,這是程序員的立身之本,其中C/C++和JAVA是我重點推薦的開發工具,C/C++以其高效率和高度的靈活性成為開發工具中的利器,很多系統級的軟體還是用C/C++編寫。而JAVA的跨平台和與WEB很好的結合是JAVA的優勢所在,而本人對SUN公司的「網路即計算機」的概念相當欣賞,並相信JAVA即其相關的技術集JAVA One會成為未來的主流開發工具之一。其次,如果能掌握一種簡便的可視化開發工具,如VB,PowerBuilder,Delphi,C++ Builder,則更好,這些開發工具減小了開發難度,並能夠強化程序員對象模型的概念。另外,需要掌握基本的腳本語言,如shell,perl等,至少能讀懂這些腳本代碼。

第二種武器:資料庫

為什麼資料庫是如此重要?很多應用程序都是以資料庫的數據為中心,而資料庫的產品也有不少,其中關系型資料庫仍是主流形式,所以程序員至少熟練掌握一兩種資料庫,對關系型資料庫的關鍵元素要非常清楚,要熟練掌握SQL的基本語法。雖然很多資料庫產品提供了可視化的資料庫管理工具,但SQL是基礎,是通用的資料庫操作方法。如果沒有機會接觸商業資料庫系統,可以使用免費的資料庫產品是一個不錯的選擇,如mySQL, Postgres等。

第三種武器:操作系統

當前主流的操作系統是Windows,Linux/Unix,熟練地使用這些操作系統是必須的,但只有這些還遠遠不夠。要想成為一個真正的編程高手,需要深入了解操作系統,了解它的內存管理機制、進程/線程調度、信號、內核對象、系統調用、協議棧實現等。Linux作為開發源碼的操作系統,是一個很好的學習平台,Linux幾乎具備了所有現代操作系統的特徵。雖然Windows系統的內核實現機制的資料較少,但通過互聯網還是能獲取不少資料。只有對操作系統有一定的了解後,你會發現自己上了一個新的台階。

第四種武器:網路協議TCP/IP

在互聯網如此普及的今天,如果您還沒有對互聯網的支撐協議TCP/IP協議棧有很好的掌握,就需要迅速補上這一課,網路技術已改變了軟體運行的模式,從最早的客戶/伺服器結構,到今天的WEB Services,再到未來的網格計算,這一切都離不開以TCP/IP協議棧為基礎的網路協議支持,所以,深入掌握TCP/IP協議是非常必要的。至少,你需要了解ISO七層協議模型,IP/UDP/TCP/HTTP等常用協議的原理和三次握手機制。

第五種武器:DCOM/CORBA/XML/WEB Services

隨著技術的發展,軟體與網路的無縫結合是必然趨勢,軟體系統的位置無關性是未來計算模式的重要特徵之一,DCOM/CORBA是當前兩大主流的分布計算的中間件平台,DCOM是微軟COM(組件對象模型)的擴展,而CORBA是OMG支持的規范。程序員需要做的不僅僅是利用商業的開發平台來開發軟體,而是要理解這些技術的初衷,即為什麼需要這項技術,如果你能理解了這一點,再回頭看這些技術的具體實現,就如庖丁解牛,迎刃而解。XML/WebServices重要性不言而喻,XML以其結構化的表示方法和超強的表達能力被喻為互聯網上的「世界語」,是分布計算的基石之一。

第六種武器:軟體工程與CMM

現代大型軟體系統的開發中,工程化的開發控製取代個人英雄主義,成為軟體系統成功的保證,一個編程高手並不一定是一個優秀的程序員,一個優秀的程序員是將出色的編程能力和開發技巧同嚴格的軟體工程思想有機結合,編程只是軟體生命周期中的其中一環,優秀的程序員應該掌握軟體開發各個階段的基本技能,如市場分析,可行性分析,需求分析,結構設計,詳細設計,軟體測試等。一句話可以概括我的看法:「創意無限,流程保證」。

第七種武器:強烈的好奇心

什麼才是一個程序員的終極武器呢,那就是強烈的好奇心和學習精神。沒有比強烈的好奇心和學習精神更好的武器了,它是程序員們永攀高峰的源泉和動力所在。

閱讀全文

與程序員24年攻略相關的資料

熱點內容
堵車如何緩解壓力 瀏覽:15
喜鵲快貸app怎麼了 瀏覽:263
海龜編輯器積木編程怎麼安裝 瀏覽:185
程序員理發店生意怎麼樣 瀏覽:603
程序員羅技 瀏覽:180
軟考初級程序員課程2021下載 瀏覽:491
杭州程序員奶奶 瀏覽:880
不聽命令造成錯誤 瀏覽:981
kool系統源碼 瀏覽:610
流氓app在哪裡看 瀏覽:98
域名購買了怎麼指向伺服器 瀏覽:121
安卓手機如何讓照片顏色反轉 瀏覽:859
怎麼下載卓睿安手機版 瀏覽:514
h3crange命令 瀏覽:468
php前景和python 瀏覽:338
php壓縮圖片內存大小 瀏覽:495
在哪裡可以查看雲伺服器的信息 瀏覽:70
python讀取非txt文件 瀏覽:799
艾莫迅用什麼編程軟體好 瀏覽:227
android文件存儲讀取 瀏覽:214