出版時間:2011-3 出版社:人民郵電出版社 作者:[捷] Jaroslav Tulach 頁數(shù):365 譯者:王磊,朱興
Tag標簽:無
前言
對于《軟件框架設(shè)計的藝術(shù)》,我有一種相見恨晚的感覺,相信很多讀者在讀后也會有同感?!《嗄甑能浖_發(fā)經(jīng)驗讓我體會到了各種酸甜苦辣的滋味,很多開發(fā)人員對此都應(yīng)感同身受。除了這些滋味,最常出現(xiàn)的卻是迷茫:碰到問題,卻無法解決;解決問題,卻無法避免同樣的錯誤一犯再犯。這一次次的迷茫,對每一位軟件開發(fā)人員都會帶來沉重的打擊。幸好,這個世界上總不乏先行者為我們點亮一盞盞明燈,也總有大師級人物為我們指點迷津。閱讀他們的著述,便有一種醍醐灌頂?shù)念D悟,如Gamma等人的《設(shè)計模式》、Bloch的Effective Java,這些書常令我掩卷而嘆:原來如此!而此刻你手中拿到的也正是這樣的一本書?!√岬竭@本書,就不能不提到作者Jaroslav Tulach。作為NetBeans的創(chuàng)始人,十多年來,他一直致力于NetBeans產(chǎn)品的開發(fā),并贏得了開源社區(qū)的尊重和美譽。這本書是他對自己十多年NetBeans開發(fā)的一個總結(jié)。他將自己的心路歷程如實記下,見證了NetBeans從IDE走向平臺、從混亂的代碼走向清晰的模塊化架構(gòu)這一不平凡的歷程。這一路走來并不平坦,但他終在每一次迷茫和困惑中找到了完善的解決方案。在本書中,從API的設(shè)計思想、兼容性解決方案到編碼的技術(shù)要點,他都娓娓道來,與我們一同分享?!∽x者也許會問:此書與市場上同類的設(shè)計書籍相比有何突出之處呢?我們不妨想想,近十年蓬勃發(fā)展的開源運動,引無數(shù)英雄競折腰。而為什么有些開源框架或者系統(tǒng)能夠快速地擁有大量用戶并維持下去,但自己開發(fā)的類庫、軟件卻無法取得類似的成功呢?我想告訴讀者,答案盡在此書中。這就是本書與其他設(shè)計書籍的迥異之處:它告訴讀者的是一種大道,而非小技。 坦誠地說,本書不是寫給初學者的,即使是有經(jīng)驗的開發(fā)人員,深讀此書也并非易事。但我仍然確信,不論是一位富有經(jīng)驗的架構(gòu)師還是一位堪堪入門的初學者,只要他細心研讀,就能從本書中有所收獲。本書不應(yīng)讀過后就束之高閣,而應(yīng)常備于手邊。當遇到難思難解之事時,翻翻此書,必有意想不到之收獲。還可以將此書放于案頭,閑暇之時讀上幾頁,必有所得?!》g本書決非一件輕松的工作,但于我,無論多苦多累,都是值得,應(yīng)該說翻譯本書帶給我更多的是收獲。我也希望這本書可以為讀者帶來同樣的收獲。人民郵電出版社圖靈公司給了我足夠的時間和自由度來翻譯本書,對此致以我最真誠的謝意。受限于自身的水平,書中若有翻譯不到位或不妥之處,責任盡歸于本人,煩請各位讀者諒解一二?!⊥趵凇?011年早春
內(nèi)容概要
本書幫助你解決API設(shè)計方面的問題,共分3個部分,分別指出學習API設(shè)計是需要進行科學的訓練的、Java語言在設(shè)計方面的理論及設(shè)計和維護API時的常見情況,并提供了各種技巧來解決相應(yīng)的問題。本書作者是NetBeans的創(chuàng)始人,也是NetBeans項目最初的架構(gòu)師。相信在API設(shè)計中遇到問題時,本書將不可或缺。
本書適用于軟件設(shè)計人員閱讀。
作者簡介
Jaroslav
Tulach,NetBeans的創(chuàng)始人,也是NetBeans項目最初的架構(gòu)帥,有著豐富的項目開發(fā)經(jīng)驗,一直致力于如何提高開發(fā)人員的設(shè)計技巧。
書籍目錄
目錄
第一部分 理論與理由
第1章 軟件開發(fā)的藝術(shù)
1.1 理性主義,經(jīng)驗主義以及無緒
1.2 軟件的演變過程
1.3 大型軟件
1.4 漂亮,真理和優(yōu)雅
1.5 更好的無緒
第2章 設(shè)計API的動力之源
2.1 分布式開發(fā)
2.2 模塊化應(yīng)用程序
2.3 交流互通才是一切
2.4 經(jīng)驗主義編程方式
2.5 開發(fā)第一個版本通常比較容易
第3章 評價API好壞的標準
3.1 方法和字段簽名
3.2 文件及其內(nèi)容
3.3 環(huán)境變量和命令行選項
3.4 文本信息也是API
3.5 協(xié)議
3.6 行為
3.7 國際化支持和信息國際化
3.8 API的廣泛定義
3.9 如何檢查API的質(zhì)量
3.9.1 可理解性
3.9.2 一致性
3.9.3 可見性
3.9.4 簡單的任務(wù)應(yīng)該有簡單的方案
3.9.5 保護投資
第4章 不斷變化的目標
4.1 第一個版本遠非完美
4.2 向后兼容
4.2.1 源代碼兼容
4.2.2 二進制兼容
4.2.3 功能兼容——阿米?變形蟲效應(yīng)
4.3 面向用例的重要性
4.4 API設(shè)計評審
4.5 一個API的生命周期
4.6 逐步改善
第二部分 設(shè)計實戰(zhàn)
第5章 只公開你要公開的內(nèi)容
5.1 方法優(yōu)于字段
5.2 工廠方法優(yōu)于構(gòu)造函數(shù)
5.3 讓所有內(nèi)容都不可更改
5.4 避免濫用setter方法
5.5 盡可能通過友元的方式來公開功能
5.6 賦予對象創(chuàng)建者更多權(quán)利
5.7 避免暴露深層次繼承
第6章 面向接口而非實現(xiàn)進行編程
6.1 移除方法或者字段
6.2 移除或者添加一個類或者接口
6.3 向現(xiàn)有的繼承體系中添加一個接口或者類
6.4 添加方法或者字段
6.5 Java中接口和類的區(qū)別
6.6 弱點背后的優(yōu)點
6.7 添加方法的另一種方案
6.8 抽象類有沒有用呢
6.9 要為增加參數(shù)做好準備
6.10 接口VS.類
第7章 模塊化架構(gòu)
……
第三部分 日常生活
參考書目
媒體關(guān)注與評論
這絕對是一本不容錯過的好書,據(jù)我所知,市場上還不曾有哪本書在框架設(shè)計領(lǐng)域有如此深刻的闡述。——亞馬遜讀者評論 這本書是作者對自己十多年NetBeans開發(fā)的一個總結(jié)。他將自己的心路歷程如實記下,見證了NetBeans從IDE走向平臺、從混亂的代碼走向清晰的模塊化架構(gòu)這一不平凡的歷程。……本書與其他設(shè)計書籍的迥異之處:它告訴讀者的是一種大道,而非小技。——本書譯者
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載