內容簡介
《HeadFirstJava》(中文版)(第2版)是本完整的面向對象(object-oriented,OO)程式設計和Java的學習指導。此書是根據學習理論所設計的,讓你可以從學習程式語言的基礎開始一直到包括執行緒、網路與分散式程式等項目。最重要的,你會學會如何像個面向對象開發者一樣去思考。
而且不只是讀死書,你還會玩遊戲、拼圖、解謎題以及以意想不到的方式與Java互動。在這些活動中,你會寫出一堆真正的Java程式,包括了一個船艦炮戰遊戲和一個網路聊天程式。
作者簡介
KathySierra當過軟體開發人員(遊戲開發與人工智慧),在Sun公司指導Java講師如何傳授最新的技術給用戶。她是Sun公司大部分認證考試的設計領導人,也是Javaranch.com這個獲得SoftwareDevelopment/JoltProductivity大獎肯定的Java志願者社區網站的發起人。
編輯推薦
《HeadFirstJava(中文版)(第2版)(涵蓋Java5.0)》的圖文並茂學習方式能讓你快速地在腦海中掌握住知識。敞開心胸準備好學習這些關鍵性的主題:Java程式語言;面向對象程式開發;Swing圖形化接口;使用JavaAPI函式館;編寫、測試與部署應用程式;處理異常;多執行緒;網路程式設計;集合與泛型。
如果你想要看“一本正經”的書,去找其他的。但如果你真地想要好好地學習Java,你會需要《HeadFirstJava》。這本書可是Amazon編輯推薦的十大好書之一!
目錄
引言
把你的心思放在軟體開發上。此時,你們圍坐在一起,準備開始學習,但你的大腦不停地告訴你,要學習的內容並不重要。你的大腦告訴你說,“最好在大腦中留一點空間,因為還有更重要的事情,就像油價要不要上漲,徒手攀登是不是一個錯誤的想法。”所以,你如何哄騙你的大腦去思考你的生活真地依賴於你學習怎樣開發偉大的軟體?
本書適合誰?
我們知道你們在想什麼
元認知
讓你的大腦順從你
讀我
技術審閱團隊
致謝
1 偉大的軟體開發
讓客戶滿意
如果你的客戶不爽,每個人都不會爽!
軟體系統中每段偉大的代碼都源自客戶的宏大想法。身為職業的軟體開發人員,你的工作就是把這些想法付諸實現。但是,要把客戶模糊不清的想法轉換為可工作的軟體代碼——客戶滿意的代碼,並不是一件很容易的事情。在本章中,你將學到如何通過交付滿足需求、且在預計的時間和預算內的軟體,避免成為軟體開發戰役的陣亡將士。打開你的筆記本電腦,讓我們踏上交付偉大軟體的征途吧!
Tom’s Trail即將上線
大多數項目都有兩個焦點
大霹靂式開發法
時間飛馳:兩周以後
大霹靂開發法通常以一團糟結束
偉大的軟體開發是……
通過開發循環達到目標
每個開發循環是一個微型項目
每個開發循環都會產生有品質的軟體
客戶會請求變更
由你來進行調整
然而,有一些大的問題
開發循環自動處理變更(好啦,一點點啦)
直到軟體交付,你的開發工作才算完成
軟體開發工具箱
2 收集需求
知道客戶想要什麼
你不能總能得到你想要的……但你的客戶應該可以!
偉大的軟體開發交付客戶所需要的軟體系統。本章的內容都將講述與客戶溝通以弄清他們對軟體系統的需求。你將學會使用情節(UserStories)、頭腦風暴(Brainstorming)、估計遊戲(Estimationgame)如何有助於你獲得客戶的真實想法的。這樣的話,在你完成項目之時,你就能深信你開發的軟體系統就是客戶所想要的,而不是一個低劣的、其他系統的仿製品。
orion’s Orbits正在進行現代化
與客戶溝通,獲得更多的信息
與客戶共築願景
有時你的共築願景的會議可以這樣……
找出人們真正在做的事情
需求一定是面向客戶的
通過客戶反饋,澄清需求
使用情節定義了項目要構建什麼……
時間估計值定義了什麼時候完成開發
小組交流
玩計畫撲克牌的遊戲
驗證假設
大而不當的使用情節估計值
目標是收斂
需求與估計的反覆循環
最後,你準備估計整個項目……
3 項目規劃
為成功而籌劃
每段偉大的代碼始於偉大的計畫。
在本章,你就要學會如何創建計畫。你要學會與客戶一道按優先順序排序他們的需求。你還要確定開發循環,使你和你的團隊向一個方向努力。最後,你還要創建一個有可行性的開發計畫,你和你的團隊有信心地執行和監控該計畫。到你工作完成之時,你就確切地知道如何從需求到軟體的第一次交付。
客戶現在就要他們的軟體!
與客戶一起確定優先權順序
我們知道什麼是Milestone 1.0版(好吧,可能知道)
如果功能太多,重新進行優先順序排序
更多人力有時意味著減損績效
找到合理的Milestone 1.0
開發循環應該簡短和易行
將你的計畫與真實情況作比較
時間效率值是在作估計時需要考慮的時間開銷
理想國里的程式設計師……
現實世界裡的開發人員……
你的開發循環何時算太長?
在你著手開發循環之前,先處理時間效率值
該進行評估了
管理愛炭脾氣的客戶
牆上的大白板
如何毀了團隊的生活
4 使用情節和任務
開始你實際的工作
開始去工作。使用情節抓住了你需要為客戶開發什麼,但現在是認真開始工作並分派所需要完成的工作的時候了,這樣你才能使使用情節成為現實。在這一章里,你將學會如何將使用情節分解成任務,任務估計(Task Estimates)如何幫助你從頭到尾跟蹤項目。你將學會如何更新你的白板,使進行中的任務成為完成,最終完成整個使用情節。沿著這條道路,你將處理和優先順序排序你的客戶不可避免地增加給你的工作。
iSwoon簡介
你的任務匯總了嗎?
標註剩餘的任務
把任務寫在白板上
開始為任務工作
“正在進行中”表示任務正在進行
萬一我同時做兩件事呢?
你的第一次碰頭會……
任務1:創建:Data類
碰頭會:第五天,第一周的最後一天……
碰頭會:第二周的第二天……
在此先打斷一下……
你必須跟蹤計畫外的任務
意料之外的任務會讓你的工作量完成情況呈上升趨勢
時間效率值有幫助,但……
我們有很多事情要做……
……但是,我們確切地知道我們身在何處
Velocity的心聲
……
5 足夠好的設計
6.1 版本控制
6.2 構建代碼
7 測試和連續集成
8 測試驅動開發
9 結束開發循環
10 下一勞務出口開發循環
11 軟體錯誤
12 真實的世界
附錄