第一篇:java程序員到架構師之路
作為Java程序員來說,最痛苦的事情莫過于可以選擇的范圍太廣,可以讀的書太多,往往容易無所適從。我想就我自己讀過的技術書籍中挑選出來一些,按照學習的先后順序,推薦給大家,特別是那些想不斷提高自己技術水平的Java程序員們。
一、Java編程入門類
對于沒有Java編程經驗的程序員要入門,隨便讀什么入門書籍都一樣,這個階段需要你快速的掌握Java基礎語法和基本用法,宗旨就是“囫圇吞棗不求甚解”,先對Java熟悉起來再說。用很短的時間快速過一遍Java語法,連懵帶猜多寫寫代碼,要“知其然”。
1、《Java編程思想》
在有了一定的Java編程經驗之后,你需要“知其所以然”了。這個時候《Java編程思想》是一本讓你知其所以然的好書,它對于基本的面向對象知識有比較清楚的交待,對Java基本語法,基本類庫有比較清楚的講解,可以幫你打一個良好的Java編程基礎。這本書的缺點是實在太厚,也比較羅嗦,不適合現代人快節奏學習,因此看這本書要懂得取舍,不是每章每節都值得一看的,挑重點的深入看就可以了。
2、《Agile Java》中文版
這本書是出版社送給我的,我一拿到就束之高閣,放在書柜一頁都沒有翻過,但是前兩天整理書柜的時候,拿出來一翻,竟然發現這絕對是一本好書!這本書一大特點是以單元測試和TDD來貫穿全書的,在教你Java各種重要的基礎知識的過程中,潛移默化的影響你的編程思維走向敏捷,走向TDD。另外這本書成書很新,以JDK5.0的語法為基礎講解,要學習JDK5.0的新語法也不錯。還有這本書對于內容取舍也非常得當,Java語言畢竟類庫龐大,可以講的內容太多,這本書選擇的內容以及內容的多寡都很得當,可以讓你以最少的時間掌握Java最重要的知識,順便培養出來優秀的編程思路,真是一本不可多得的好書。
雖然作者自己把這本書定位在入門級別,但我不確定這本書用來入門是不是稍微深了點,我自己也準備有空的時候翻翻這本書,學習學習。
二、Java編程進階類
打下一個良好的Java基礎,還需要更多的實踐經驗積累,我想沒有什么捷徑。有兩本書值得你在編程生涯的這個階段閱讀,培養良好的編程習慣,提高你的代碼質量。
1、《重構 改善既有代碼的設計》
這本書名氣很大,不用多介紹,可以在閑暇的時候多翻翻,多和自己的實踐相互印證。這本書對你產生影響是潛移默化的。
2、《測試驅動開發 by Example》
本書最大特點是很薄,看起來沒有什么負擔。你可以找一個周末的下午,一邊看,一邊照做,一個下午就把書看完,這本書的所有例子跑完了。這本書的作用是通過實戰讓你培養TDD的思路。
三、Java架構師之路
到這個階段,你應該已經非常嫻熟的運用Java編程,而且有了一個良好的編程思路和習慣了,但是你可能還缺乏對應用軟件整體架構的把握,現在就是你邁向架構師的第一步。
1、《Expert One-on-One J2EE Design and Development》
這本書是Rod Johnson的成名著作,非常經典,從這本書中的代碼誕生了springframework。但是好像這本書沒有中譯本。
2、《Expert One-on-One J2EE Development without EJB》
這本書由gigix組織翻譯,多位業界專家參與,雖然署名譯者是JavaEye,其實JavaEye出力不多,實在是忝居譯者之名。
以上兩本書都是Rod Johnson的經典名著,Java架構師的必讀書籍。在我所推薦的這些書籍當中,是我看過的最仔細,最認真的書,我當時讀這本書幾乎是廢寢忘食的一氣讀完的,有小時候挑燈夜讀金庸武俠小說的勁頭,書中所講內容和自己的經驗知識一一印證,又被無比精辟的總結出來,讀完這本書以后,我有種被打通經脈,功力爆增的感覺。
但是后來我看過一些其他人的評價,似乎閱讀體驗并沒有我那么high,也許是因為每個人的知識積累和經驗不同導致的。我那個時候剛好是經驗知識積累已經足夠豐富,但是還沒有系統的整理成型,讓這本書一梳理,立刻形成完整的知識體系了。
3、《企業應用架構模式》
Martin的又一本名著,但這本書我只是泛泛的看了一遍,并沒有仔細看。這本書似乎更適合做框架的人去看,例如如果你打算自己寫一個ORM的話,這本書是一定要看的。但是做應用的人,不看貌似也無所謂,但是如果有空,我還是推薦認真看看,會讓你知道框架為什么要這樣設計,這樣你的層次可以晉升到框架設計者的角度去思考問題。Martin的書我向來都是推崇,但是從來都沒有像Rod Johnson的書那樣非常認真去看。
4、《敏捷軟件開發原則、模式與實踐》
Uncle Bob的名著,敏捷的經典名著,這本書比較特別,與其說是講軟件開發過程的書,不如說講軟件架構的書,本書用了很大篇幅講各種面向對象軟件開發的各種模式,個人以為看了這本書,就不必看GoF的《設計模式》了。
四、軟件開發過程
了解軟件開發過程不單純是提高程序員個人的良好編程習慣,也是增強團隊協作的基礎。
1、《UML精粹》
UML其實和軟件開發過程沒有什么必然聯系,卻是軟件團隊協作溝通,撰寫軟件文檔需要的工具。但是UML真正實用的圖不多,看看這本書已經足夠了,完全沒有必要去啃《UML用戶指南》之類的東西。要提醒大家的是,這本書的中譯本翻譯的非常之爛,建議有條件的看英文原版。
2、《解析極限編程 擁抱變化》XP
這是Kent Beck名著的第二版,中英文對照。沒什么好說的,必讀書籍。
3、《統一軟件開發過程》UP
其實UP和敏捷并不一定沖突,UP也非常強調迭代,測試,但是UP強調的文檔和過程驅動卻是敏捷所不取的。不管怎么說,UP值得你去讀,畢竟在中國真正接受敏捷的企業很少,你還是需要用UP來武裝一下自己的,哪怕是披著UP的XP。
4、《敏捷建模》AM
Scott Ambler的名著,這本書非常的progmatic,告訴你怎么既敏捷又UP,把敏捷和UP統一起來了,又提出了很多progmatic的建議和做法。你可以把《解析極限編程擁抱變化》、《統一軟件開發過程》和《敏捷建模》這三本書放在一起讀,看XP和UP的不同點,再看AM是怎么統一XP和UP的,把這三種理論融為一爐,形成自己的理論體系,那么你也可以去寫書了。
五、軟件項目管理
如果你突然被領導提拔為項目經理,而你完全沒有項目管理經驗,你肯定會心里沒底;如果你覺得自己管理項目不善,很想改善你的項目管理能力,那么去考PMP肯定是遠水不解近渴的。
1、《快速軟件開發》
這也是一本名著。可以這樣說,有本書在手,你就有了一個項目管理的高級參謀給你出謀劃策,再也不必擔心自己不能勝任的問題了。這本書不是講管理的理論的,在實際的項目管理中,講這些理論是不解決問題的,這本書有點類似于“軟件項目點子大全”之類的東西,列舉了種種軟件項目當中面臨的各種問題,以及應該如何解決問題的點子,你只需要稍加變通,找方抓藥就行了。
六、總結
在這份推薦閱讀書籍的名單中,我沒有列舉流行的軟件框架類學習書籍,例如Struts,Hibernate,Spring之類,也沒有列舉AJAX方面的書籍。是因為這類書籍容易過時,而上述的大半書籍的生命周期都足夠長,值得你去購買和收藏。
第二篇:android從程序員到架構師之路介紹
麥可網http:/// 高端android體系化學習
Android:從程序員到架構師之路
Android發展多年的今天,很多工程師都遇到職業發展瓶頸了,不知道如何向上走,因此麥可網攜手臺灣Android教父高煥堂老師推出了《Android架構師之路》這套國內唯一的課程,通過這套課程學習,學員們會學習高老師提出的EIT架構設計模式,能從普通Android工程師往Android架構設計師這個新的臺階攀登,同時更加熟悉Android本身體系結構設計,也可以換位以Android系統的設計師角度來思考問題。
由于Android是開源開放的平臺,國內開發者不僅涉及App應用開發,也深入到底層軟硬整合開發。
隨著Android產業急速擴大,上下層模塊日益增多,復雜性增高。無論是軟硬件開發者都需要優越的架構思維、模式和方法,來支撐復雜的軟硬整合、跨平臺和自動化測試問題。
本課程解析移動應用開發的架構思維、模式和方法;并落實為Android的多層框架體系;所介紹的架構設計決策,都能落實為代碼,為一個非常務實的課程。
隨著這套課程的推出,麥可網已經有了高級應用,Framework,底層嵌入式,架構師之路等一系列互補系統的Android課程,全面覆蓋縱橫領域。毫無懸念的麥可網已經具備了國內最強大,系統,專業的Android課程體系。
這套課程的針對人群: Android開發已經有至少兩年經驗的IT工程師,多年開發經驗想深入了解Android這個開源平臺的資深工程師,Android項目團隊的技術管理者。
我們不建議:不建議Android初學者學習這套課程;不建議沒有項目經驗者學習這套課程;不建議沒有遇到瓶頸者學習這套課程。
有人問:架構課程是否會講解的很虛? 這套課程有超過2/5 都是案例,結合代碼和UML案例來分析各個設計場景,所以大可放心,歡迎點擊我們的試聽課程。
第三篇:架構師之路--- 一個四年 JAVA 程序員的工作經歷
論壇的帖子看的多了,講大道理的也很多,可是真正懂的并去做的有多少?本人第一次發帖子,不說什么道理,只是個人的一點經歷,很普通但是本人這幾年的親身經歷。
首先介紹下自己,男,06 年畢業來的北京,從事 J2EE 開發,現在 4 個年頭了。
06 年和剛畢業的很多同行一樣。二本畢業,CET-4,沒有其它證書也沒得過什么獎,很普通,面臨找工作的問題。不過運氣不錯,剛來北京二周就拿了二個 offer,一個是北京磁共振研究所,從事 VB,DEPHI 開發,另一個是一個新成立的公司,從事 JAVA 開發。我選擇了后者,當時自己接受過 4 個月的培訓,可能會比一般的學生多些動手能力,這公司的上機本來是一道題的,做一個 GUI 畫圖程序,很簡單,時間三天,不過我用了一天就搞定了,所以公司又多考了我二道上機題。只做出來了一道,當時很害怕公司不要我,后來才知道是公司有意試我 的,無論后面兩道我做成什么樣,一樣會拿到 offer。剛畢業嗎,沒社會經驗。工資 2000,稅后 1600,試用 80%,三個月,不過我二個月轉正了,第 5 個月時提到了 3000,第 8 個月時提到了 4000。當時開心的很,老板初看是很老實的人,開會還是私下給了我很多希望,甚至邀請我去他家去玩,自認為和老板的關系很好。不過后來證實這點是錯誤 的,千萬不要和你的老板走的太近。就是同事關系。工作內容嗎是負責公司一個可視化程序的開發和對應的 B/S 插件以及對外支持工作,產品要賣錢嗎,當時工作真的很賣力,在這公司的時間真的把心都給公司了,基本沒有 11 點前過家,有時是工作,有時是學習,剛畢業嗎,沒經驗,尤其是支持還需要很廣的知識面。在這公司呆了三年,當時公司就 20 多人,所以有些工作不是分的那么清,我呢基本是一個人做三個人的活,開發,測試,支持,后來又兼職售前。當時工作太忙,北京又太大,有時一天要跑幾個地 方,公司僅有的一輛車基本成了我的專用車了。當時老板對我也不錯,這樣過了兩年多,我學了很多知識,而且了解了公司運作和產品開發流程,并一手支撐起了支 持部門,一共 5 個人。
到第二年半的時間,公司新招了一批程序員,都是 2-4 年工作經驗的,他們工資都是 7000+,我呢當時是 4500,所以有點不得勁,找老板談了次,我要求是 5500,結果不歡而散,老板向我保證的是 5 年后,會有 20W 的個人買房補助和車補,這時我才明白人們常說的不要和你的老板做朋友是啥意思。完了后我故意沒以前工作努力了,但也沒誤過事。只是不會多做事,老板沒辦法 給我漲到了 5200。我這時才有了跳槽的想法,一個月后提出辭職。結果老板罵了我,說我應該提前 3-4 個月和他說,還說我沒職業道德。合同法規定是一個月,半個月時工作交接完了,到了一個月我要走了,辦離職證明,公司不給開,不讓我走,這之前老板找了談了 三回,最后一回才提漲工資的事,說實在的我當時就是因為這事要走的,不過都談三回了,也沒啥意思了。
當時我找到工作了,那邊讓我報到,這邊不給證明,后來我和老板商量我先報到,然后再回來半個月,再幫半個月時間。還是不歡而散,我一生氣,就直接走了,結 果到了那邊沒有離職證明可以簽個協議就行了。當時還有工資沒結,取工資時老板不給我讓扣一個月的,我真的生氣了,我說我不要了,明天我去告他。我走到門 口,老板拉住我又說可以給工資但不給開離職證明,我還是那句話,老板沒辦法,后來手續和工資都給我了。安心去第二家公司上班。
不過說實在的,我還是很感激這個公司和老板的,教了我 N 多東西,我也在這公司學了 N 多東西,很多是和技術沒關的。
09 年,第二家公司是開發組長,帶了7個人做J2EE,當時我就不會設計大的系統,不過我們經理是高級架構師,所以應聘時根本沒在乎工資還是5000。這公司 很大,但開發流程不太正規,底層開發人員不受重視,做了很多大的項目,和組員和經理處的都不錯,我剛來時我們經理又是業務又是技術的累死了,我之前做過很 多不同職位,所以我來了后技術這塊我們經理基本是沒操過心,唯一做的工作是看我的階段報告。整體把控一下。和我們經理這時真的是朋友了,因為不涉及到錢。所以當時我請假啥的根本不用走流程,只要我事做完了,可以不來,也可以在家做,一周基本 3-4 天班。
后來因為家里的原因,我 08 年的房子要下來了,而且也結婚了,老婆是上家公司的同事。而且到 2010 年時老婆又有小孩了,迫于經濟原因只能走了。走時我們經理沒有當面留我,只是找我抽煙的時候多了好多,而且從來不提我找工作的事,這事他早知道。說實的,我是真的不想走。
我之前沒在網上寫過任何東西,也沒有博客和網站,甚至連 QQ 空間都沒。有時懷疑是不是搞 IT 的,回
家的路上想了很多,要記錄的東西真的很多。我寫這個東西主要的目的是給一些有些迷惘的同行看的,其實就一個觀點,天上不會掉錢,好工作是運氣加實氣 的。在第一家公司嗎,我認為我得到了人生第一桶金,雖然不是錢,對我真的很重要----關系和經驗。在第一家公司呢我買了房子,成了家。生意上接觸過總經 理,總裁,部長,銷售總監。。知道了和不同身份的人說什么樣不同的話;知道了工作和友情要怎么來分;也結交了很多朋友,有同事,有其它公司的朋友,這 些都是很好的朋友,在我后兩年生活中給了我很多的幫助。
還有一點是最重要的,做為技術人員一定要有一門過硬的技術,即使將來你會升為經理或其它管理職位。我喜歡買書,也喜歡看書,有時去書店看到好書了,即使不 看也要買回來,總有用到的時候。所以這四年我買書能花幾千塊錢了。也看了不少,現在家時至少有 100 多本 IT 和管理方面的書。離開第一家公司之前,技術方面呢,我會用了 struts,spring,hibernate,webwork,ibatis,extjs,jquery,各種版本的服務器,linux 等,還研究了 struts 的代碼。幾乎是 J2EE 開發的技術都了解了,這其中我看了 13 本書,有些書是看了 3,4 回。這三年為我日后兩年的發展真的很重要。
09 年到了第二家公司,雖然也是程序員,但開始正式帶人了,也很少寫業務代碼了,主要是整體架構,設計和工具模塊方面的編寫的工作。還和我們經理我們兩個人寫 過一個 MVC 框架,有幾個項目一直在用,這之間我也一直在看書,不過是 SOA 方面多些。
在第二家公司呢技術方面主要是學習了 SOA 架構方面,分布式呀什么的,同樣也結交了很多朋友。這個關系網是你人生的一大看到的財富,甚至可以左右你的人生。在第二家公司呆了一年多,離職的主要原因一是經濟壓力,二呢是學不到什么東西了。
2010 年我離職了,找工作時也很頭疼,不知道我能做什么,程序員嗎不干心,開發經理嗎說實話我能做,但怕公司不要我,你說你有能力,誰知道?至于跳槽后的薪水問 題嗎,不知道自己值幾個錢,身邊過 10K 的朋友太多了,可是我從來沒碰到過。這次找工作呢我投了 15 份簡歷,全是 500 人以上的公司,應聘了 7 家,找工作過程中我郁悶過,覺的自己能力還是不行,最后拿到 4 份 offer,還算可以。這時我肯定了自己,前幾年的努力沒白付出。
看了幾個回帖,大家比較關心薪水的問題,這里呢我也不回避,我的工資呢從畢業是 2000,3000,4000,5000 這么漲過來的,5000 塊錢持續了三年,很穩定。我和我愛人呢家里都很普通,沒錢也沒關系,在北京沒什么親人,所以什么事都要靠自己,08 年時我們在北京買了第一套房,10 年時我們在老家買了第二套房,我的工資水平呢大家都看到了,我借了不少錢,現在還欠別人 2W 多呢。這其間很感謝我的朋友們,生活和事業上幫了我很多很多!
現在的工作呢還是 J2EE 開發,小小 boss。薪水呢一年能保證稅前 12W。這樣的工資呢我認為不是很多,但也不是很少,這次換工作有一家公司給我一個月 12K,因為老婆要生小孩,所以沒有去。在北京我認識很多就業的朋友,這地方你找年薪 100W 的工作也有,就怕你沒有能力。
我現在呢還是喜歡看書,但是 SOA 和云計算的書多了些。個人感覺呢,不要指望運氣,也別只看到別人風光,不看別人吃苦那會。尤其是做 IT 這行,憑實力說話,我接觸過很多 IT 公司的老總,從程序員做起的能占了近80%,大家都知道的 SINA,163,SOHU 老總都是程序員起家。
最后呢,自己的 4 年程序員經驗吧,給同行:
1、要有一門過硬的技術;
2、要盡量擴展你的知識點,即使你現在的工作用不到;
3、要多學習,為了學習花點書錢是值得的,雖然IT書真的很貴;
4、書呢盡量不要買國內的,實在不行看影印的,對學習英文還很有幫助;
5、對于看書呢,一本書至少要看二次甚至更多,同時做好筆記,你不可能記住所有的東西;
6、多交朋友,和你薪水有關系的除外;
7、學習IT技術時候呢,要多學學管理和人際交往;
8、沒事多去一些大的網站,學學新的技術;
9、做項目時,不要光為了完成功能要寫代碼,要多了解一下整體項目,即使其它模塊不需要你負責,但你
了解清楚了就是你的東西;
10、要學會匯報;
11、所有的事落到紙面上才是真的,包括你的工資,不要太期望獎金能拿多少,對于程序員來說那只是零花錢。
第四篇:JAVA程序員之路
怎么學好java
JAVA程序員之路
很多網友問我學習Java有沒有什么捷徑,我說“無他,唯手熟爾”。但是我卻很愿意將自己學習的一些經驗寫出來,以便后來者少走彎路,幫助別人是最大的快樂嘛!
要想學好Java,首先要知道Java的大致分類。我們知道,自從Sun推出Java以來,就力圖使之無所不包,所以Java發展到現在,按應用來分主要分為三大塊:J2SE,J2ME和J2EE,這也就是Sun ONE(Open Net Environment)體系。J2SE就是Java2的標準版,主要用于桌面應用軟件的編程;J2ME主要應用于嵌入是系統開發,如手機和PDA的編程;J2EE是Java2的企業版,主要用于分布式的網絡程序的開發,如電子商務網站和ERP系統。J2SE開發桌面應用軟件比起VC,VB,DEPHI這些傳統開發語言來說,優勢好象并不明顯。J2ME對于初學者來說,好象又有點深奧,而且一般開發者很難有開發環境。所以現在應用最廣泛又最好學的就是J2EE了。J2EE又包括許多組件,如
Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要學習起來可不是一兩天的事。那么又該如何學習J2EE呢?當然Java語法得先看一看的,I/O包,Util包,Lang包你都熟悉了嗎?然后再從JSP學起。如果你學過HTML,那么事情要好辦的多,如果沒有,那你快去補一補HTML基礎吧。其實JSP中的Java語法也不多,它更象一個腳本語言,有點象ASP。然后你就該學一學Servlet了。Servlet就是服務器端小程序,他負責生成發送給客戶端的HTML文件。JSP在執行時,也是先轉換成Servlet再運行的。雖說JSP理論上可以完全取代Servlet,這也是SUN推出JSP的本意,可是Servlet用來控制流程跳轉還是挺方便的,也令程序更清晰。接下來你應該學習一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代碼的混亂方式了,這種方式跟ASP又有什么區別呢?還好,SUN提供了Javabean可以把你的JSP中的Java代碼封裝起來,便于調用也便于重用。接著就是EJB了,EJB就是Enterprise JavaBean,看名字好象它是Javabean,可是它和Javabean還是有區別的。它是一個體系結構,你可以搭建更安全、更穩定的企業應用。它的大量代碼已由中間件(也就是我們常聽到的Weblogic,Websphere這些J2EE服務器)完成了,所以我們要做的程序代碼量很少,大部分工作都在設計和配置中間件上。至于JDBC,就不用我多說了,你如果用java編過存取數據庫的程序,就應該很熟悉。還有,如果你要用Java編發送電子郵件的程序,你就得看看Javamail了。
好了,對Java和J2EE有了一些基本概念之后,你就應該編一些程序了,千萬不要紙上談兵哦。最好找一些有實例且帶光盤的書來看,這樣看到好的程序就可以直接Ctrl+C再Ctrl+V,也不用勞您老大架再親自把它再輸一遍吧,再說直接復制還不用怕出錯,何樂而不為呢!還有就是要經常上一些好的Java編程文章,有好的文章要Cut下來,有問題盡管問,只要問題不是太傻,一般高手都會回答你的。下面介紹幾個好的Java方面的編程網站:
CSDN論壇http:/// 中國最有名的技術論壇,《程序員》雜志就是他們出版的,你可以在上面提出問題,馬上就有人回答你,如果你覺得好,你可以給那人加分;
Java研究組http:/// 那里Java資料比較全;
java.com.cn http://.cn/ 看這域名就知道有多牛,注冊用戶快接近一萬了,同時在線人數也在一千左右,人氣很旺的;
IBM的開發者網http:// IBM永遠的藍色巨人;
那么我書也看了,程序也做了,別人問我的問題我都能解決了,是不是就成為高手了呢?當然沒那么簡單,這只是萬里長征走完了第一步。不信?那你出去接一個項目,你知道怎么下手嗎,你知道怎么設計嗎,你知道怎么組織人員進行開發嗎?你現在腦子里除了一些散亂的代碼之外,可能再沒有別的東西了吧!你現在最缺的是實際的工作經驗,而不是書本上那些憑空想出來的程序。所以你快去找一份Java的編程工作來做吧(如果是在校學生可以去做兼職啊),在實踐中提高自己,那才是最快的。不過你得祈禱在公司里碰到一個高手,而且他還愿意不厭其煩地教你,這樣好象有點難哦!
還有一個辦法就是讀開放源碼的程序了。我們知道開放源碼大都出自高手,他們設計合理,考慮周到,再加上有廣大的程序員參與,代碼的價值自然是字字珠嘰,鏗鏘有力(對不起,最近《金裝四大才子》看多了)。學Java必讀的兩個開源程序就是Jive和Pet Store.。Jive是國外一個非常著名的BBS程序,完全開放源碼。論壇的設計采用了很多先進的技術,如Cache、用戶認證、Filter、XML等,而且論壇完全屏蔽了對數據庫的訪問,可以很輕易的在不同數據庫中移植。論壇還有方便的安裝和管理程序,這是我們平時編程時容易忽略的一部份(中國程序員一般只注重編程的技術含量,卻完全不考慮用戶的感受,這就是我們與國外軟件的差距所在)。Jive的資料在很多網站上都有,大家可以找來研究一下。相信你讀完代碼后,會有脫胎換骨的感覺。遺憾的是Jive從2.5以后就不再無條件的開放源代碼,同時有licence限制。不過幸好還有中國一流的Java程序員關注它,外國人不開源了,中國人就不能開源嗎?這里向大家推薦一個漢化的Jive版本—J道。Jive(J道版)是由中國Java界大名鼎鼎的banq在Jive2.1版本基礎上改編而成, 全中文,增加了一些實用功能,如貼圖,用戶頭像和用戶資料查詢等,而且有一個開發團隊在不斷升級。你可以訪問banq的網
http:/// 去下載,或到同濟技術論壇的服務器上
ftp://nro.shtdu.edu.cn去下,安裝上有什么問題,可以到論壇上去提問。Pet Store.(寵物店)是SUN公司為了演示其J2EE編程規范而推出的開放源碼的程序,應該很具有權威性,想學J2EE和EJB的朋友不要錯過了。
你一定會高興地說,哈哈,原來成為Java高手就這么簡單啊!記得我也曾碰到過一個項目經理,號稱Java很簡單,只要三個月就可以學會。其實說這種話的人就如當年小日本號稱“三個月拿下中國”一樣大言不慚。不是我潑你冷水,你現在只是學到了Java的骨架,卻還沒有學到Java的精髓。接下來你得研究設計模式了。設計模式是高級程序員真正掌握面向對象核心思想的必修課。設計模式并不是一種具體“技術”,它講述的是思想,它不僅僅展示了接口或抽象類在實際案例中的靈活應用和智慧,讓你能夠真正掌握接口或抽象類的應用,從而在原來的Java語言基礎上躍進一步,更重要的是,設計模式反復向你強調一個宗旨:要讓你的程序盡可能的可重用。關于設計模式的資料,還是向大家推薦banq的網http:///,他把GOF的23種模式以通俗易懂的方式詮釋出來,純Java描述,真是經典中的經典。有時間再研究一下MVC結構(把
Model-View-Control分離開的設計思想)吧,現在很流行的Structs就是它的一種實現方式,不過Structs用起來實在是很繁,我們只要學習其精髓即可,我們完全可以設計自己的MVC結構。然后你再研究一下軟件Refactoring(重整)和極限XP編程,相信你又會上一個臺階。
做完這些,你不如整理一下你的Java代碼,把那些經典的程序和常見的應用整理出來,再精心打造一番,提高其重用性和可擴展性。你再找幾個志同道合的朋友成立一個工作室吧,你可以去承接一些項目做了,一開始可能有些困難,可是你有技術積累,又考慮周全,接下項目來可以迅速作完,相信大家以后都會來找你的,所以Money就嘩啦啦的來了。。。
當然你也可以參加一些開源項目,一方面可以提高自己,另一方面也是為中國軟件事業做貢獻嘛!開發者在互聯網上用CVS合作開發,用QQ,MSN,E-mail討論聯系,天南海北的程序員分散在各地卻同時開發同一個軟件,是不是很有意思呢?
下面介紹兩個好的開源項目網站:
湖北省軟件公共開發平http://gro.clinux.org/
共創聯http://cosoft.org.cn/
哇,好高興哦,我終于成為高手了!非也,非也。古人云:“識時務者為俊杰”。你知道計算機界現在的發展形勢嗎?你知道微軟的.NET藍圖和SUN ONE計劃之間的明爭暗斗嗎?你知道計算機技術將向何處發展嗎?其實從各大計算機廠商最近的動作,都可以看出來“Web服務將是下一代互聯網應用的制高點”,而微軟的.NET藍圖和SUN ONE計劃的斗爭焦點,也就是Web服務。Web服務就是一個嶄新的分布式計算模型,它是一系列標準的綜合(XML,SOAP,UDDI,WSDL和WSFL等)。它使得不同語言編寫的軟件能夠輕易的集成起來,使網絡資源和Web站點變成一種服務而不是混亂的垃圾場。不遠的將來,我們就可以在家里點擊一下鼠標,就可以完成出門旅游的全部準備工作,包括定飛機票,定旅游線路,定好房間等。請注意,這所有的一切都是Web站點間自動完成的,再也不用象現在一樣,表面上是電子商務,實際上很多環節都是人工操作。也許你會覺得這是天方夜談,不過就近的說,你也很有可能承接一個項目,要集成兩個企業的ERP系統。很有可能上游企業的系統是用Dephi編的,而下游企業的系統是用Java編的。你說你是Java高手,大家都看者你怎么做呢。所以啊,你還得學習新技術,如Web服務,而且你Dephi也要懂一點吧(Dephi6現在已經提供Web服務的控件了)。你編的Java系統,可能要和.NET集成,所以你.NET要懂一點吧?到最后,你可能發現你已經成為Java高手了,但很多時間卻在搞別的技術。太極張三豐里說,最厲害的招式就是沒有招式,可能就是這個道理吧!因為剛剛興起,所以網上Web服務的資料不是很多,我還是給大家推薦幾個網站吧:
中國UDDI技術聯http:///developerWorks/cn/xml/index.shtml?csdn IBM可是Web服務的力推者
嗚…你費勁千心萬苦,總算成為Java高手了,怎叫人不由喜極而泣呢!是啊,真不容易,真不簡單,真叫人感動啊!那么打個電話告訴我吧,什么?我的電話號碼是多少?昏到,你打電話問不就知道了嗎,真是的……
如上是在網上考下來的,但個人認為SCJP證書也好,程序員等級證書也好,不要太看重它;關鍵是你手中有沒有技術,能不能拿出活來。我面試時候都是以證書為參考,主要衡量你的手段還是提問技術性問題以及一些編程方面的基礎問題。建議不要把證書看的太重。
第五篇:java程序員之路
很多網友問我學習Java有沒有什么捷徑,我說“無他,唯手熟爾”。但是我卻很愿意將自己學習的一些經驗寫出來,以便后來者少走彎路,幫助別人是最大的快樂嘛!
要想學好Java,首先要知道Java的大致分類。我們知道,自從Sun推出Java以來,就力圖使之無所不包,所以Java發展到現在,按應用來分主要分為三大塊:J2SE,J2ME和J2EE,這也就是Sun ONE(Open Net Environment)體系。J2SE就是Java2的標準版,主要用于桌面應用軟件的編程;J2ME主要應用于嵌入是系統開發,如手機和PDA的編程;J2EE是Java2的企業版,主要用于分布式的網絡程序的開發,如電子商務網站和ERP系統。J2SE開發桌面應用軟件比起VC,VB,DEPHI這些傳統開發語言來說,優勢好象并不明顯。J2ME對于初學者來說,好象又有點深奧,而且一般開發者很難有開發環境。所以現在應用最廣泛又最好學的就是J2EE了。J2EE又包括許多組件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要學習起來可不是一兩天的事。
那么又該如何學習J2EE呢?當然Java語法得先看一看的,I/O包,Util包,Lang包你都熟悉了嗎?然后再從JSP學起。如果你學過HTML,那么事情要好辦的多,如果沒有,那你快去補一補HTML基礎吧。其實JSP中的Java語法也不多,它更象一個腳本語言,有點象ASP。然后你就該學一學Servlet了。Servlet就是服務器端小程序,他負責生成發送給客戶端的HTML文件。JSP在執行時,也是先轉換成Servlet再運行的。雖說JSP理論上可以完全取代Servlet,這也是SUN推出JSP的本意,可是Servlet用來控制流程跳轉還是挺方便的,也令程序更清晰。接下來你應該學習一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代碼的混亂方式了,這種方式跟ASP又有什么區別呢?還好,SUN提供了Javabean可以把你的JSP中的Java代碼封裝起來,便于調用也便于重用。接著就是EJB了,EJB就是Enterprise JavaBean,看名字好象它是Javabean,可是它和Javabean還是有區別的。它是一個體系結構,你可以搭建更安全、更穩定的企業應用。它的大量代碼已由中間件(也就是我們常聽到的Weblogic,Websphere這些J2EE服務器)完成了,所以我們要做的程序代碼量很少,大部分工作都在設計和配置中間件上。至于JDBC,就不用我多說了,你如果用java編過存取數據庫的程序,就應該很熟悉。還有,如果你要用Java編發送電子郵件的程序,你就得看看Javamail了。
好了,對Java和J2EE有了一些基本概念之后,你就應該編一些程序了,千萬不要紙上談兵哦。最好找一些有實例且帶光盤的書來看,這樣看到好的程序就可以直接Ctrl+C再Ctrl+V,也不用勞您老大架再親自把它再輸一遍吧,再說直接復制還不用怕出錯,何樂而不為呢!還有就是要經常上一些好的Java編程文章,有好的文章要Cut下來,有問題盡管問,只要問題不是太傻,一般高手都會回答你的。下面介紹幾個好的Java方面的編程網站:
CSDN論壇http:/// 那里Java資料比較全;
java.com.cn http://.cn/ 看這域名就知道有多牛,注冊用戶快接近一萬了,同時在線人數也在一千左右,人氣很旺的;
IBM的開發者網http:// IBM永遠的藍色巨人;
那么我書也看了,程序也做了,別人問我的問題我都能解決了,是不是就成為高手了呢?當然沒那么簡單,這只是萬里長征走完了第一步。不信?那你出去接一個項目,你知道怎么下手嗎,你知道怎么設計嗎,你知道怎么組織人員進行開發嗎?你現在腦子里除了一些散亂的代碼之外,可能再沒有別的東西了吧!你現在最缺的是實際的工作經驗,而不是書本上那些憑空想出來的程序。所以你快去找一份Java的編程工作來做吧(如果是在校學生可以去做兼職啊),在實踐中提高
自己,那才是最快的。不過你得祈禱在公司里碰到一個高手,而且他還愿意不厭其煩地教你,這樣好象有點難哦!
還有一個辦法就是讀開放源碼的程序了。我們知道開放源碼大都出自高手,他們設計合理,考慮周到,再加上有廣大的程序員參與,代碼的價值自然是字字珠嘰,鏗鏘有力(對不起,最近《金裝四大才子》看多了)。學Java必讀的兩個開源程序就是Jive和Pet Store.。Jive是國外一個非常著名的BBS程序,完全開放源碼。論壇的設計采用了很多先進的技術,如Cache、用戶認證、Filter、XML等,而且論壇完全屏蔽了對數據庫的訪問,可以很輕易的在不同數據庫中移植。論壇還有方便的安裝和管理程序,這是我們平時編程時容易忽略的一部份(中國程序員一般只注重編程的技術含量,卻完全不考慮用戶的感受,這就是我們與國外軟件的差距所在)。Jive的資料在很多網站上都有,大家可以找來研究一下。相信你讀完代碼后,會有脫胎換骨的感覺。遺憾的是Jive從2.5以后就不再無條件的開放源代碼,同時有licence限制。不過幸好還有中國一流的Java程序員關注它,外國人不開源了,中國人就不能開源嗎?這里向大家推薦一個漢化的Jive版本—J道。Jive(J道版)是由中國Java界大名鼎鼎的banq在Jive2.1版本基礎上改編而成, 全中文,增加了一些實用功能,如貼圖,用戶頭像和用戶資料查詢等,而且有一個開發團隊在不斷升級。你可以訪問banq的網http:/// 去下載,或到同濟技術論壇的服務器上ftp://nro.shtdu.edu.cn去下,安裝上有什么問題,可以到論壇上去提問。Pet Store.(寵物店)是SUN公司為了演示其J2EE編程規范而推出的開放源碼的程序,應該很具有權威性,想學J2EE和EJB的朋友不要錯過了。
你一定會高興地說,哈哈,原來成為Java高手就這么簡單啊!記得我也曾碰到過一個項目經理,號稱Java很簡單,只要三個月就可以學會。其實說這種話的人就如當年小日本號稱“三個月拿下中國”一樣大言不慚。不是我潑你冷水,你現在只是學到了Java的骨架,卻還沒有學到Java的精髓。接下來你得研究設計模式了。設計模式是高級程序員真正掌握面向對象核心思想的必修課。設計模式并不是一種具體“技術”,它講述的是思想,它不僅僅展示了接口或抽象類在實際案例中的靈活應用和智慧,讓你能夠真正掌握接口或抽象類的應用,從而在原來的Java語言基礎上躍進一步,更重要的是,設計模式反復向你強調一個宗旨:要讓你的程序盡可能的可重用。關于設計模式的資料,還是向大家推薦banq的網http:///,他把GOF的23種模式以通俗易懂的方式詮釋出來,純Java描述,真是經典中的經典。有時間再研究一下MVC結構(把Model-View-Control分離開的設計思想)吧,現在很流行的Structs就是它的一種實現方式,不過Structs用起來實在是很繁,我們只要學習其精髓即可,我們完全可以設計自己的MVC結構。然后你再研究一下軟件Refactoring(重整)和極限XP編程,相信你又會上一個臺階。
做完這些,你不如整理一下你的Java代碼,把那些經典的程序和常見的應用整理出來,再精心打造一番,提高其重用性和可擴展性。你再找幾個志同道合的朋友成立一個工作室吧,你可以去承接一些項目做了,一開始可能有些困難,可是你有技術積累,又考慮周全,接下項目來可以迅速作完,相信大家以后都會來找你的,所以Money就嘩啦啦的來了。。。
當然你也可以參加一些開源項目,一方面可以提高自己,另一方面也是為中國軟件事業做貢獻嘛!開發者在互聯網上用CVS合作開發,用QQ,MSN,E-mail討論聯系,天南海北的程序員分散在各地卻同時開發同一個軟件,是不是很有意思呢?
下面介紹兩個好的開源項目網站:
湖北省軟件公共開發平http://gro.clinux.org/
共創聯http://cosoft.org.cn/
哇,好高興哦,我終于成為高手了!非也,非也。古人云:“識時務者為俊杰”。你知道計算機界現在的發展形勢嗎?你知道微軟的.NET藍圖和SUN ONE計劃之間的明爭暗斗嗎?你知道計算機技術將向何處發展嗎?其實從各大計算機廠商最近的動作,都可以看出來“Web服務將是下一
代互聯網應用的制高點”,而微軟的.NET藍圖和SUN ONE計劃的斗爭焦點,也就是Web服務。Web服務就是一個嶄新的分布式計算模型,它是一系列標準的綜合(XML,SOAP,UDDI,WSDL和WSFL等)。它使得不同語言編寫的軟件能夠輕易的集成起來,使網絡資源和Web站點變成一種服務而不是混亂的垃圾場。不遠的將來,我們就可以在家里點擊一下鼠標,就可以完成出門旅游的全部準備工作,包括定飛機票,定旅游線路,定好房間等。請注意,這所有的一切都是Web站點間自動完成的,再也不用象現在一樣,表面上是電子商務,實際上很多環節都是人工操作。也許你會覺得這是天方夜談,不過就近的說,你也很有可能承接一個項目,要集成兩個企業的ERP系統。很有可能上游企業的系統是用Dephi編的,而下游企業的系統是用Java編的。你說你是Java高手,大家都看者你怎么做呢。所以啊,你還得學習新技術,如Web服務,而且你Dephi也要懂一點吧(Dephi6現在已經提供Web服務的控件了)。你編的Java系統,可能要和.NET集成,所以你.NET要懂一點吧?到最后,你可能發現你已經成為Java高手了,但很多時間卻在搞別的技術。太極張三豐里說,最厲害的招式就是沒有招式,可能就是這個道理吧!
因為剛剛興起,所以網上Web服務的資料不是很多,我還是給大家推薦幾個網站吧:中國UDDI技術聯http:///developerWorks/cn/xml/index.shtml?csdn IBM可是Web服務的力推者
嗚…你費勁千心萬苦,總算成為Java高手了,怎叫人不由喜極而泣呢!是啊,真不容易,真不簡單,真叫人感動啊!那么打個電話告訴我吧,什么?我的電話號碼是多少?昏到,你打電話問不就知道了嗎,真是的……
如上是在網上考下來的,但個人認為SCJP證書也好,程序員等級證書也好,不要太看重它;關鍵是你手中有沒有技術,能不能拿出活來。我面試時候都是以證書為參考,主要衡量你的手段還是提問技術性問題以及一些編程方面的基礎問題。建議不要把證書看的太重。
參考資料:參考高手建議