軟件開(kāi)發(fā)實(shí)踐:項(xiàng)目驅(qū)動(dòng)式的Java開(kāi)發(fā)指南
杜云飛 譯
出版時(shí)間:2020年09月
頁(yè)數(shù):184
“本書(shū)填補(bǔ)了市場(chǎng)上的一個(gè)重要空白。如果你是剛從大學(xué)或代碼訓(xùn)練營(yíng)畢業(yè)的學(xué)生,正在尋找你的第一份Java工作,那么你應(yīng)該購(gòu)買(mǎi)這本書(shū)。它架起了編程練習(xí)和專(zhuān)業(yè)軟件工程師日常工作之間的橋梁?!?br />
——Ben Evans
Java Champion,New Relic公司的首席工程師
如果你剛剛開(kāi)始你的Java職業(yè)生涯,掌握當(dāng)今的許多軟件開(kāi)發(fā)概念可能會(huì)讓你不知所措。你是否應(yīng)該學(xué)習(xí)面向?qū)ο蟮膶?shí)踐,比如測(cè)試驅(qū)動(dòng)開(kāi)發(fā)或者應(yīng)用函數(shù)式編程思想?本書(shū)提供了一種綜合的、項(xiàng)目驅(qū)動(dòng)的方式,幫助你學(xué)習(xí)一些成為高效開(kāi)發(fā)人員所需的核心主題。
作者在本書(shū)中向你展示了如何開(kāi)發(fā)真實(shí)項(xiàng)目,并同時(shí)學(xué)習(xí)最佳實(shí)踐。每一章會(huì)聚焦于一個(gè)項(xiàng)目,該項(xiàng)目從一個(gè)命令行批處理程序開(kāi)始,然后發(fā)展成一個(gè)功能齊全的應(yīng)用程序。如果能夠編寫(xiě)基本的Java代碼,那么你將學(xué)習(xí)先進(jìn)的軟件開(kāi)發(fā)實(shí)踐,以構(gòu)建現(xiàn)代的、健壯的和可維護(hù)的Java軟件。
通過(guò)閱讀本書(shū),你將能夠:
● 了解編寫(xiě)可維護(hù)代碼的核心設(shè)計(jì)原則。
● 增加代碼庫(kù)的靈活性,提升代碼可維護(hù)性,以及處理異常。
● 理解如何應(yīng)用耦合、內(nèi)聚和SOLID原則。
● 使用測(cè)試驅(qū)動(dòng)開(kāi)發(fā)來(lái)處理新的設(shè)計(jì)問(wèn)題。
● 從外到內(nèi)思考:從全局轉(zhuǎn)移到應(yīng)用程序領(lǐng)域的核心。
● 了解函數(shù)式編程并學(xué)習(xí)如何在Java中使用它。
- 前言
- 第1章 開(kāi)始旅程吧
- 1.1 主題
- 1.2 章節(jié)概要
- 1.3 迭代
- 第2章 銀行賬單分析器
- 2.1 挑戰(zhàn)
- 2.2 目標(biāo)
- 2.3 銀行賬單分析器需求
- 2.4 KISS原則
- 2.5 代碼可維護(hù)性和反模式
- 2.6 單一職責(zé)原則
- 2.7 內(nèi)聚
- 2.8 耦合
- 2.9 測(cè)試
- 2.10 要點(diǎn)
- 2.11 迭代
- 2.12 完成這個(gè)挑戰(zhàn)
- 第3章 擴(kuò)展銀行賬單分析器
- 3.1 挑戰(zhàn)
- 3.2 目標(biāo)
- 3.3 銀行賬單分析器的擴(kuò)展需求
- 3.4 開(kāi)閉原則
- 3.5 接口陷阱
- 3.6 顯式API和隱式API
- 3.7 多樣化導(dǎo)出
- 3.8 異常處理
- 3.9 使用構(gòu)建工具
- 3.10 要點(diǎn)
- 3.11 迭代
- 3.12 完成這個(gè)挑戰(zhàn)
- 第4章 文檔管理系統(tǒng)
- 4.1 挑戰(zhàn)
- 4.2 目標(biāo)
- 4.3 文檔管理系統(tǒng)需求
- 4.4 充實(shí)這個(gè)設(shè)計(jì)
- 4.5 里氏替換原則
- 4.6 可選方案
- 4.7 擴(kuò)展和重用代碼
- 4.8 保持測(cè)試健康
- 4.9 要點(diǎn)
- 4.10 迭代
- 4.11 完成這個(gè)挑戰(zhàn)
- 第5章 業(yè)務(wù)規(guī)則引擎
- 5.1 挑戰(zhàn)
- 5.2 目標(biāo)
- 5.3 業(yè)務(wù)規(guī)則引擎需求
- 5.4 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)
- 5.5 mocking
- 5.6 添加條件
- 5.7 流式API設(shè)計(jì)
- 5.8 要點(diǎn)
- 5.9 迭代
- 5.10 完成這個(gè)挑戰(zhàn)
- 第6章 Twootr
- 6.1 挑戰(zhàn)
- 6.2 目標(biāo)
- 6.3 Twootr的需求
- 6.4 設(shè)計(jì)概述
- 6.5 從事件到設(shè)計(jì)
- 6.6 從哪里開(kāi)始
- 6.7 密碼和安全性
- 6.8 關(guān)注者和twoot
- 6.9 位置
- 6.10 要點(diǎn)
- 6.11 迭代
- 6.12 完成這個(gè)挑戰(zhàn)
- 第7章 擴(kuò)展Twootr
- 7.1 挑戰(zhàn)
- 7.2 目標(biāo)
- 7.3 回顧
- 7.4 持久性和存儲(chǔ)庫(kù)模式
- 7.5 函數(shù)式編程
- 7.6 用戶(hù)界面
- 7.7 依賴(lài)倒置和依賴(lài)注入
- 7.8 包和系統(tǒng)構(gòu)建
- 7.9 限制和簡(jiǎn)化
- 7.10 要點(diǎn)
- 7.11 迭代
- 7.12 完成這個(gè)挑戰(zhàn)
- 第8章 總結(jié)
- 8.1 基于項(xiàng)目的結(jié)構(gòu)
- 8.2 迭代
- 8.3 刻意練習(xí)
- 8.4 下一步及附加資源
書(shū)名:軟件開(kāi)發(fā)實(shí)踐:項(xiàng)目驅(qū)動(dòng)式的Java開(kāi)發(fā)指南
譯者:杜云飛 譯
國(guó)內(nèi)出版社:機(jī)械工業(yè)出版社
出版時(shí)間:2020年09月
頁(yè)數(shù):184
書(shū)號(hào):978-7-111-66091-0
原版書(shū)書(shū)名:Real-World Software Development
原版書(shū)出版商:O'Reilly Media
Raoul-Gabriel Urma
Raoul-Gabriel Urma博士是Cambridge Spark(一家領(lǐng)先的面向數(shù)據(jù)科學(xué)家的培訓(xùn)機(jī)構(gòu))的CEO和創(chuàng)始人。他還是幾本編程書(shū)籍的作者,包括暢銷(xiāo)書(shū)Modern Java in Action(Manning出版社)。
Richard Warburton
Richard Warburton,一位經(jīng)驗(yàn)豐富的技術(shù)專(zhuān)家,善于解決復(fù)雜深?yuàn)W的技術(shù)問(wèn)題,擁有華威大學(xué)計(jì)算機(jī)科學(xué)專(zhuān)業(yè)博士學(xué)位。近期他一直從事高性能計(jì)算方面的數(shù)據(jù)分析工作。他是英國(guó)倫敦Java社區(qū)的領(lǐng)導(dǎo)者,組織過(guò)面向Java 8中Lambda表達(dá)式、日期和時(shí)間的Adopt-a-JSR項(xiàng)目,以及Openjdk Hackdays活動(dòng)。Richard還是知名的會(huì)議演講嘉賓,曾在JavaOne、DevoxxUK和JAX London等會(huì)議上演講。