偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Java系統(tǒng)程序員修煉之道

開(kāi)發(fā) 后端
從2002開(kāi)始接觸Java學(xué)會(huì)HelloWorld這么經(jīng)典的程序到如今不知不覺(jué)已經(jīng)十年啦,十年中親耳聽(tīng)到過(guò)不少大牛的演講,見(jiàn)到過(guò)項(xiàng)目中的神人在鍵盤(pán)上運(yùn)指如飛的編程速度,當(dāng)時(shí)就被震撼了。當(dāng)編程越來(lái)越成體力活,我們還能有自己的思想,還能修煉為Java系統(tǒng)級(jí)別的程序員嘛?學(xué)習(xí)與修煉以下知識(shí)與技能,幫你早日達(dá)成愿望。

從2002開(kāi)始接觸Java學(xué)會(huì)HelloWorld這么經(jīng)典的程序到如今不知不覺(jué)已經(jīng)十年啦,十年中親耳聽(tīng)到過(guò)不少大牛的演講,見(jiàn)到過(guò)項(xiàng)目中的神人在鍵盤(pán)上運(yùn)指如飛的編程速度,當(dāng)時(shí)就被震撼了。當(dāng)編程越來(lái)越成體力活,我們還能有自己的思想,還能修煉為Java系統(tǒng)級(jí)別的程序員嘛?學(xué)習(xí)與修煉以下知識(shí)與技能,幫你早日達(dá)成愿望。

一:Java語(yǔ)言學(xué)習(xí)

[[82696]]
 

對(duì)線程(thread),串行化,反射,網(wǎng)絡(luò)編程,JNI技術(shù),容器(Map,List, Iterator), 類(lèi)加載器(ClassLoader),輸入輸出流,垃圾回收機(jī)制, 有比較深入的了解,最起碼做過(guò)項(xiàng)目應(yīng)用。有過(guò)Java項(xiàng)目的性能優(yōu)化經(jīng)驗(yàn),最起碼掌握一種性能監(jiān)視工具的使用,熟悉JVM參數(shù),最起碼知道可以在JVM啟動(dòng)時(shí)指定不同垃圾回收機(jī)制,以及不同垃圾回收機(jī)制之間的差別,熟悉JVM參數(shù)優(yōu)化。

二:J2EE方面


 

***知道JDBC規(guī)范是怎么回事情,面對(duì)Oracle數(shù)據(jù)庫(kù)如果告訴你JDBC驅(qū)動(dòng)不能用了,你還知道有OCI驅(qū)動(dòng)可以。掌握常見(jiàn)的SQL語(yǔ)句,熟悉JMS, JNDI等組件,掌握一套web開(kāi)發(fā)模式,從前臺(tái)到后臺(tái),有能力整合好這樣的框架。理解并掌握MVC思想,像SSH已經(jīng)實(shí)現(xiàn)了MVC的分層,幾乎不需要你自己再實(shí)現(xiàn),假設(shè)你開(kāi)發(fā)一個(gè)簡(jiǎn)單的Swing程序,你能MVC就說(shuō)明你真的掌握了MVC的精髓。有能力在J2EE前端開(kāi)發(fā)中構(gòu)建自己的MVC模式,知道什么是WEB2.0,知道什么是SOA, SaaS, SaaP等含義。

三:理解并能合理運(yùn)用設(shè)計(jì)模式,UML建模


 

知道并理解設(shè)計(jì)模式中蘊(yùn)含的幾種基本原則如:里氏替換原則, 開(kāi)閉原則,合成復(fù)用原則,依賴(lài)倒置原則有很好的理解,并能舉例說(shuō)明。對(duì)常用的設(shè)計(jì)模式如工廠模式,單例模式,觀察者模式,責(zé)任鏈模式,橋接模式等知道靈活運(yùn)用,明白什么是回調(diào)(Callback)。***用一位高人話來(lái)總結(jié)設(shè)計(jì)模式,它是為了讓軟件更容易被別人讀懂,更容易維護(hù)而產(chǎn)生,設(shè)計(jì)模式本質(zhì)是程序員之間的交流,如果A用工廠模式設(shè)計(jì)一個(gè)模塊B來(lái)接替,A只要說(shuō)該模塊是工廠模式實(shí)現(xiàn),B維護(hù)起來(lái)應(yīng)該容易得多,所以設(shè)計(jì)模式是關(guān)于交流,不關(guān)于代碼。切忌濫用設(shè)計(jì)模式。學(xué)會(huì)使用UML建模工具至少熟悉一種URL建模工具。

四:注重用戶(hù)體驗(yàn),掌握KISS原則,知道歐卡姆剃刀原則


 

顧客就是上帝這個(gè)口號(hào)我們已經(jīng)喊了N年了,程序員的勞動(dòng)成果最終也需要轉(zhuǎn)換為服務(wù)提供給客戶(hù),用戶(hù)體驗(yàn)至關(guān)重要,常常看到的場(chǎng)景是功能實(shí)現(xiàn)了,軟件很難使用,程序員有個(gè)很充足的理由我不是美工,其實(shí)注重用戶(hù)體驗(yàn)跟美工八桿子也打不到一起,F(xiàn)oxMail的成功在很大程度是用戶(hù)體驗(yàn)的成功,友好,清晰的用戶(hù)提示,強(qiáng)的容錯(cuò)與糾錯(cuò)設(shè)計(jì)是獲得好的用戶(hù)體驗(yàn)的不二法門(mén)。傻瓜相機(jī)顧名思義***都會(huì)使用,這個(gè)就著名的KISS原則(Keep it simple and stupid)意思是UI設(shè)計(jì)要簡(jiǎn)單明了,***一看就知道怎么用,想想我們做出來(lái)的東西,對(duì)照說(shuō)明書(shū)都不知道怎么用。另外一個(gè)就是***的例子IPhone手機(jī)外觀設(shè)計(jì),是典型的歐卡姆剃刀設(shè)計(jì)原則來(lái)完成人機(jī)交互。

五:自動(dòng)測(cè)試與軟件配置管理(SCM)實(shí)現(xiàn)

[[82697]]
 

知道什么是軟件配置管理,知道Hudson - http://java.net/projects/hudson/運(yùn)用該工具SCM,知道怎么獲取測(cè)試代碼覆蓋率, Java有效代碼行數(shù)(NCSS),完成firebug, JDepend等工具集成ant/maven。熟悉并注重在開(kāi)發(fā)過(guò)程中使用JUnit單元測(cè)試,理解白盒測(cè)試規(guī)范。

六:熟悉常見(jiàn)的網(wǎng)絡(luò)通信協(xié)議


 

對(duì)HTTP協(xié)議,知道POST, GET的區(qū)別是什么,閱讀過(guò)HTTP相關(guān)的RFC文檔。學(xué)會(huì)使用sniffer工具查看數(shù)據(jù)包,幫助查找與調(diào)試程序,知道TCP與UDP的區(qū)別,知道并理解E-Mail發(fā)送與接受的協(xié)議如SMTP, POP3,IMAP等協(xié)議,了解MIME與Base64編碼。知道組播是怎么回事情。

七:面向市場(chǎng),永遠(yuǎn)對(duì)新技術(shù)保持渴望

[[82698]]
 

計(jì)算機(jī)技術(shù)的發(fā)展日新月異,做為IT行業(yè)的軟件開(kāi)發(fā)人員要不斷的給自己充電,更新自己的技術(shù)與時(shí)代保持同步,同時(shí)還要面向市場(chǎng),華為總裁任正非說(shuō)過(guò)-“華為的技術(shù)革新必須面向市場(chǎng)”,作為程序員同樣要有市場(chǎng)意識(shí),很多人都后悔沒(méi)有在android剛出來(lái)的時(shí)候加以關(guān)注學(xué)習(xí)。那些很早關(guān)注android開(kāi)發(fā)技術(shù)的很多程序員因此獲得豐厚回報(bào)。如今HTML5得到越來(lái)越多的瀏覽器廠家支持,你是否已經(jīng)跟上腳步,開(kāi)始學(xué)習(xí)。

八:保持謙虛,三人行必有我?guī)?/strong>


 

喬幫主說(shuō)他要保持初心,努力學(xué)習(xí),我等更應(yīng)該保持謙虛,IT技術(shù)發(fā)展日新月異,在你眼中不可能實(shí)現(xiàn)的技術(shù),也許別人早已經(jīng)有思路。保持謙虛就有機(jī)會(huì)吸取別人身上的長(zhǎng)處,古人有云:滿招損,謙受益。一個(gè)得道的高人更是說(shuō)出了”下下人,上上智”的禪語(yǔ)。永遠(yuǎn)不要拒絕幫助你周?chē)娜私鉀Q難題,解決難題是進(jìn)步最快途徑。不要放棄任何一次可以提升自己技術(shù)與能力的機(jī)會(huì)。

九:養(yǎng)成總結(jié)的習(xí)慣,不斷反思

[[82699]]
 

上學(xué)的時(shí)候老師常讓寫(xiě)小結(jié),也沒(méi)總結(jié)出來(lái)所以然,以至于工作以后再也不提這檔子事情,建議每個(gè)項(xiàng)目做完以后對(duì)自己都有個(gè)小結(jié),總結(jié)自己在項(xiàng)目里面學(xué)到了什么,反問(wèn)自己能不能完成在不需要?jiǎng)e人幫助的情況下自己完成這樣的系統(tǒng)搭建,是否熟悉與掌握項(xiàng)目中所用到的技術(shù),即使有些東西不是你負(fù)責(zé)完成的但是什么也不能阻擋一顆求知的心,總結(jié)要盡量詳細(xì)記錄你遇到那些難題是怎么一個(gè)一個(gè)的解決的,下次再遇到你是否可以很快解決或者避免這樣的問(wèn)題。有總結(jié)才有提高,孔子曰:學(xué)而不思則罔,如果我們只是coding到吐血,不思考,不總結(jié)提高,永遠(yuǎn)不可能有能有本質(zhì)提高,秦相李斯有云:“泰山不讓土壤,故能成其大,河海不擇細(xì)流,故能就其深”,點(diǎn)滴積累不斷總結(jié)方能量變導(dǎo)致質(zhì)變。

十:數(shù)學(xué)功底與算法知識(shí)


 

用任何編程語(yǔ)言開(kāi)發(fā)應(yīng)用,都離不開(kāi)核心算法支持,很多國(guó)外的軟件單單從UI上看,恐怕寫(xiě)幾年程序的人都可以模仿,但是UI之下的那些真實(shí)深淺不一,相信不是你想模仿就可以模仿的,為什么我們?cè)絹?lái)越山寨,因?yàn)槲覀儧](méi)有核心競(jìng)爭(zhēng)力,對(duì)于程序員來(lái)說(shuō)算法與數(shù)學(xué)顯然是他最重要的核心競(jìng)爭(zhēng)力之一。《算法導(dǎo)論》,《編程珠璣》等書(shū)絕對(duì)值得讀十遍。微軟亞洲研究院視覺(jué)計(jì)算組負(fù)責(zé)人在一次演講中說(shuō)到他們招人的標(biāo)準(zhǔn)是“三好學(xué)生– 數(shù)學(xué)好,編程好,態(tài)度好”??墒乾F(xiàn)實(shí)的普遍情況卻是 - 微機(jī)原理鬧危機(jī),匯編語(yǔ)言不會(huì)變,實(shí)變函數(shù)學(xué)十遍。計(jì)算機(jī)基礎(chǔ)知識(shí)被大家普遍忽視。從今天開(kāi)始好好學(xué)習(xí)吧…… 

十一:Java代碼反編譯與代碼保護(hù)

[[82700]]
 

Java編譯產(chǎn)生字節(jié)碼,因而可以被輕松的逆向工程(反編譯),微軟的C#生產(chǎn)的DLL也一樣可以被輕松反編譯。正式由于這個(gè)原因產(chǎn)生了許多Java開(kāi)源的代碼保護(hù)工具,而Proguard是其中佼佼者,已經(jīng)被google集成在android之中用于Java代碼保護(hù),訪問(wèn)這里了解更多:http://proguard.sourceforge.net/

十二:努力成為某個(gè)行業(yè)或者領(lǐng)域骨干

[[82701]]
 

面對(duì)漫長(zhǎng)的職業(yè)生涯,要想不被淘汰,必須具備一招鮮吃遍天下的能力,選擇自己感興趣的方向,努力而深入的研究,計(jì)算機(jī)技術(shù)發(fā)展到今天已經(jīng)細(xì)分很細(xì),努力研究一種Java開(kāi)源框架或者開(kāi)源HTTP服務(wù)器源碼或者研究過(guò)網(wǎng)絡(luò)爬蟲(chóng)源碼或者WEBKIT內(nèi)核,不愁沒(méi)有人要你。如果你是非常了解金融,企業(yè)ERP,證券,保險(xiǎn),移動(dòng)應(yīng)用行業(yè)的應(yīng)用開(kāi)發(fā)業(yè)務(wù)的人,一樣不用愁工作。這些知識(shí)不隨語(yǔ)言而改變,努力做一個(gè)有核心競(jìng)爭(zhēng)力的Java程序員。 

十三:提高語(yǔ)言與書(shū)面表達(dá)能力,掌握基礎(chǔ)的項(xiàng)目管理知識(shí)

[[82702]]
 


 

文檔與語(yǔ)言表達(dá)能力是***的向外界展現(xiàn)自己能力的方式,很多程序員編程能力很高,表達(dá)能力一般,Linux能夠成功,除了歸功于網(wǎng)絡(luò)社區(qū)的力量之外,也得益于Linux作者本人給各大基金會(huì)寫(xiě)信,宣傳推廣,試想如果沒(méi)有良好的書(shū)面語(yǔ)言表達(dá)能力,即使Linux系統(tǒng)再優(yōu)秀,卻無(wú)法被準(zhǔn)確表達(dá),失去各大基金會(huì)的支持,Linux還會(huì)像今天這么好的局面嘛。所以重視文檔,重視提升溝通與表達(dá)能力,才有可能成為Java系統(tǒng)程序員。掌握基本的2/8原則,學(xué)會(huì)將模塊細(xì)化分配給不同的人,預(yù)見(jiàn)并控制項(xiàng)目風(fēng)險(xiǎn),把握項(xiàng)目進(jìn)度,優(yōu)化流程,合理的時(shí)間管理,了解TDD,熟悉敏捷開(kāi)發(fā)模式,常規(guī)軟件開(kāi)發(fā)模式。

十四:掌握英語(yǔ),良好的讀寫(xiě)能力

[[82703]]
 

英語(yǔ)是計(jì)算機(jī)的母語(yǔ),掌握好英語(yǔ)對(duì)于閱讀英文資料學(xué)習(xí)新技術(shù)大有幫助,我的建議是盡量讀英文原版書(shū),如果是算法方面的可能會(huì)困難一點(diǎn),但是其它像設(shè)計(jì)模式,軟件工程,OO編程思想等盡量讀原版,提高自己的英文水平,多多訪問(wèn)開(kāi)發(fā)者,code project,程序員天堂,Pc-magazine等英文IT網(wǎng)站。英語(yǔ)絕對(duì)是你必須修煉與提高的技能。此外英語(yǔ)好在外資企業(yè)尤其重要,只有外語(yǔ)足夠好才可能在外資企業(yè)中突破職業(yè)瓶頸,向上發(fā)展。

原文鏈接:http://blog.csdn.net/jia20003/article/details/7671595

責(zé)任編輯:林師授 來(lái)源: 博客園
相關(guān)推薦

2009-12-04 10:45:20

程序員職場(chǎng)

2009-07-21 10:16:51

ASP.NET程序員

2010-08-11 13:56:03

Flex程序員

2011-05-10 09:29:30

代碼重寫(xiě)

2009-07-27 10:00:17

程序員ASP.NET

2021-03-26 11:52:50

Debug效率運(yùn)行

2009-11-27 09:07:38

程序員

2015-04-14 09:29:25

CTO程序員

2009-11-04 11:54:33

程序員職業(yè)水準(zhǔn)

2014-04-23 17:58:32

碼農(nóng)碼農(nóng)思想

2009-10-26 17:36:13

Oracle管理員DBA

2018-10-19 09:03:37

程序員管理思維

2015-04-08 11:09:28

優(yōu)秀程序員深入理解你的代碼

2012-11-08 09:49:30

C++Java程序員

2012-03-06 09:22:46

程序員

2013-08-20 09:33:59

程序員

2020-09-10 15:16:38

Java程序員代碼

2009-08-05 11:54:04

互聯(lián)網(wǎng)

2011-01-13 14:37:43

David Thoma

2011-07-27 09:52:38

軟件項(xiàng)目
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)