點(diǎn)擊加載圖片
持續(xù)學(xué)習(xí)的心態(tài)是軟件開發(fā)人員想要保持專業(yè)相關(guān)性并增長(zhǎng)自身價(jià)值的關(guān)鍵品質(zhì)。
在這篇博文中,我將推薦20本最受歡迎的軟件工程書籍清單,以幫助你實(shí)現(xiàn)這一目標(biāo)。
面向軟件開發(fā)人員的書籍
對(duì)于想要了解最新趨勢(shì)并敞開心扉的開發(fā)者來(lái)說(shuō),這份清單是必不可少的。
1.《流暢的Python》
點(diǎn)擊加載圖片
描述:Python的簡(jiǎn)單性讓你可以快速提高工作效率,但這通常意味著你不會(huì)使用它所提供的全部功能。通過(guò)本書,你將學(xué)習(xí)如何利用其最佳創(chuàng)意編寫高效、現(xiàn)代的Python3代碼。
作者LucianoRamalho將指導(dǎo)你了解Python的核心語(yǔ)言特性和庫(kù),并教你如何使代碼更短、更快和更具可讀性。
《流暢的Python》第二版對(duì)整本書進(jìn)行了重大更新,包括:
特殊方法:Python對(duì)象行為一致的關(guān)鍵
數(shù)據(jù)結(jié)構(gòu):序列、字典、集合、Unicode和數(shù)據(jù)類
函數(shù)作為對(duì)象:函數(shù)聲明中的一流函數(shù)、相關(guān)設(shè)計(jì)模式和類型提示
面向?qū)ο蟮牧?xí)語(yǔ):組合、繼承、混合、接口、運(yùn)算符重載、靜態(tài)類型和協(xié)議
控制流:上下文管理器、生成器、協(xié)程、異步/等待和線程/進(jìn)程池
元編程:屬性、屬性描述符、類裝飾器和比元類更簡(jiǎn)單的新類元編程掛鉤。
2.《學(xué)習(xí)Go語(yǔ)言》
點(diǎn)擊加載圖片
描述:Go正迅速成為構(gòu)建Web服務(wù)的首選語(yǔ)言。雖然有很多教程可以向具有其他編程語(yǔ)言經(jīng)驗(yàn)的開發(fā)人員教授Go的語(yǔ)法,但教程是不夠的。他們不教授Go的習(xí)慣用法,因此開發(fā)人員最終會(huì)重新創(chuàng)建在Go上下文中沒(méi)有意義的模式。本書提供了編寫清晰且地道的Go所需的基本背景。
無(wú)論你的經(jīng)驗(yàn)水平如何,你都將學(xué)習(xí)如何像Go開發(fā)人員一樣思考。作者JonBodner介紹了經(jīng)驗(yàn)豐富的Go開發(fā)人員采用的設(shè)計(jì)模式,并探討了使用它們的基本原理。你還將預(yù)覽Go即將推出的泛型支持以及它如何融入該語(yǔ)言。
學(xué)習(xí)如何在Go中編寫地道的代碼并設(shè)計(jì)一個(gè)Go項(xiàng)目
了解Go中設(shè)計(jì)決策的原因
為獨(dú)立開發(fā)者或團(tuán)隊(duì)設(shè)置Go開發(fā)環(huán)境
了解如何以及何時(shí)使用反射、不安全和cgo
探索Go的特性如何讓語(yǔ)言高效運(yùn)行
知道哪些Go特性你應(yīng)該少用或根本不用
3.《軟件架構(gòu):架構(gòu)模式、特征及實(shí)踐指南》
點(diǎn)擊加載圖片
描述:全球薪酬調(diào)查定期將軟件架構(gòu)師列為前10名最佳工作,但沒(méi)有真正的指南可以幫助開發(fā)人員成為架構(gòu)師。到目前為止。本書首次全面概述了軟件架構(gòu)的許多方面。有抱負(fù)的和現(xiàn)有的架構(gòu)師都將研究架構(gòu)特征、架構(gòu)模式、組件確定、圖表和呈現(xiàn)架構(gòu)、演化架構(gòu)和許多其他主題。
MarkRichards和NealFord是多年來(lái)專業(yè)教授軟件架構(gòu)課程的實(shí)踐從業(yè)者——專注于適用于所有技術(shù)棧的架構(gòu)原則??紤]到過(guò)去十年的所有創(chuàng)新,你將以現(xiàn)代的眼光探索軟件架構(gòu)。
本書考察:
架構(gòu)模式:許多架構(gòu)決策的技術(shù)基礎(chǔ)
組件:標(biāo)識(shí)、耦合、內(nèi)聚、分區(qū)和粒度
軟技能:有效的團(tuán)隊(duì)管理、會(huì)議、談判、演示等
現(xiàn)代性:在過(guò)去幾年中發(fā)生根本變化的工程實(shí)踐和操作方法
架構(gòu)作為一門工程學(xué)科:可重復(fù)的結(jié)果、指標(biāo)和具體的評(píng)估,增加了軟件架構(gòu)的嚴(yán)謹(jǐn)性
4.《Python編程:從入門到實(shí)踐》
點(diǎn)擊加載圖片
描述:這是世界上最暢銷的Python書籍的第二版。Python速成課程,第2版簡(jiǎn)單介紹了Python編程的核心。作者埃里克·馬修斯(EricMatthes)摒棄了可能妨礙學(xué)習(xí)如何編程的那種乏味、不必要的信息,而是選擇提供一般編程概念、Python基礎(chǔ)知識(shí)和問(wèn)題解決方面的基礎(chǔ)。本書第二部分中的三個(gè)真實(shí)世界的項(xiàng)目允許讀者以有用的方式應(yīng)用他們的知識(shí)。
讀者將學(xué)習(xí)如何創(chuàng)建簡(jiǎn)單的視頻游戲,使用數(shù)據(jù)可視化技術(shù)制作圖形和圖表,以及構(gòu)建和部署交互式Web應(yīng)用程序?!禤ython編程:從入門到實(shí)踐》第2版向初學(xué)者快速教授Python的基本知識(shí),以便他們可以構(gòu)建實(shí)用的程序并開發(fā)強(qiáng)大的編程技術(shù)。
5.《深入淺出設(shè)計(jì)模式》
點(diǎn)擊加載圖片
描述:
你將從這本書中學(xué)到什么?
你知道你不想重新發(fā)明輪子,所以你看看設(shè)計(jì)模式:那些遇到過(guò)相同軟件設(shè)計(jì)問(wèn)題的人的經(jīng)驗(yàn)教訓(xùn)。使用設(shè)計(jì)模式,你可以利用其他人的最佳實(shí)踐和經(jīng)驗(yàn),這樣你就可以將時(shí)間花在更具挑戰(zhàn)性的事情上以及更有趣的東西。本書向你展示了重要的模式、何時(shí)使用它們以及為什么使用它們、如何將它們應(yīng)用到你自己的設(shè)計(jì)中,以及它們所基于的面向?qū)ο笤O(shè)計(jì)原則。加入成千上萬(wàn)通過(guò)《深入淺出設(shè)計(jì)模式》提高了面向?qū)ο笤O(shè)計(jì)技能的開發(fā)人員。
這本書有什么特別之處?
如果你讀過(guò)《深入淺出設(shè)計(jì)模式》一書,你就會(huì)知道會(huì)發(fā)生什么:一種視覺(jué)豐富的格式,專為你的大腦工作方式而設(shè)計(jì)。借助《深入淺出設(shè)計(jì)模式》你將以一種不會(huì)讓你入睡的方式學(xué)習(xí)設(shè)計(jì)原則和模式,因此你可以走出去解決軟件設(shè)計(jì)問(wèn)題并與團(tuán)隊(duì)中的其他人交流模式語(yǔ)言。
6.《代碼整潔之道》
點(diǎn)擊加載圖片
描述:即使是糟糕的代碼也能正常運(yùn)行。但如果代碼不干凈,它可能會(huì)讓開發(fā)組織崩潰。每年,由于編寫不當(dāng)?shù)拇a,都會(huì)損失無(wú)數(shù)的時(shí)間和大量的資源。
你會(huì)從事什么樣的工作?你會(huì)閱讀代碼—很多代碼。你將面臨思考該代碼的正確之處和錯(cuò)誤之處的挑戰(zhàn)。更重要的是,你將面臨重新評(píng)估你的專業(yè)價(jià)值觀和對(duì)你的技術(shù)承諾的挑戰(zhàn)。
讀者能夠從本書學(xué)到:
如何區(qū)分好代碼和壞代碼
如何編寫好的代碼以及如何將糟糕的代碼轉(zhuǎn)化為好的代碼
如何創(chuàng)建好的名稱、好的函數(shù)、好的對(duì)象和好的類
如何格式化代碼以獲得最大的可讀性
如何在不混淆代碼邏輯的情況下實(shí)現(xiàn)完整的錯(cuò)誤處理
如何進(jìn)行單元測(cè)試和實(shí)踐測(cè)試驅(qū)動(dòng)開發(fā)
本書是任何有興趣編寫更好代碼的開發(fā)人員、軟件工程師、項(xiàng)目經(jīng)理、團(tuán)隊(duì)負(fù)責(zé)人或系統(tǒng)分析師的必備書籍。
7.《RUST程序設(shè)計(jì):第二版》
點(diǎn)擊加載圖片
描述:系統(tǒng)編程為世界的計(jì)算提供了基礎(chǔ)。編寫對(duì)性能敏感的代碼需要一種編程語(yǔ)言,使程序員能夠控制內(nèi)存、處理器時(shí)間和其他系統(tǒng)資源的使用方式。Rust系統(tǒng)編程語(yǔ)言將這種控制與現(xiàn)代類型系統(tǒng)結(jié)合起來(lái),現(xiàn)代類型系統(tǒng)可以捕獲廣泛的常見錯(cuò)誤,從內(nèi)存管理錯(cuò)誤到線程之間的數(shù)據(jù)競(jìng)爭(zhēng)。
通過(guò)這本書,經(jīng)驗(yàn)豐富的系統(tǒng)程序員將學(xué)習(xí)如何使用Rust成功地彌合性能和安全性之間的差距。JimBlandy、JasonOrendorff和LeonoraTindall展示了Rust的特性如何通過(guò)將可預(yù)測(cè)的性能與內(nèi)存安全和可信賴的并發(fā)性相結(jié)合,讓程序員控制內(nèi)存消耗和處理器的使用。
你會(huì)學(xué)到:
Rust的基本數(shù)據(jù)類型以及所有權(quán)和借用的核心概念
如何編寫具有特征和泛型的靈活、高效的代碼
如何編寫沒(méi)有數(shù)據(jù)競(jìng)爭(zhēng)的快速多線程代碼
Rust的關(guān)鍵強(qiáng)大工具:閉包、迭代器和異步編程
集合、字符串和文本、輸入和輸出、宏、不安全代碼和外部函數(shù)接口
8.《OCPORACLECERTIFIEDPROFESSIONALJAVASE11DEVELOPERCOMPLETESTUDYGUIDE》
點(diǎn)擊加載圖片
截至目前,本書還沒(méi)有中文版。
描述:本書OCPOracleCertifiedProfessionalJavaSE11Developer認(rèn)證最全面的準(zhǔn)備指南—它涵蓋了考試1Z0–819和升級(jí)考試1Z0–817(以及退休的程序員I考試1Z0–815和程序員II考試1Z0–816)!
Java廣泛用于后端云應(yīng)用程序、軟件即服務(wù)應(yīng)用程序(SAAS),并且是用于開發(fā)Android應(yīng)用程序的主要語(yǔ)言。這種面向?qū)ο蟮木幊陶Z(yǔ)言旨在在所有支持Java的平臺(tái)上運(yùn)行而無(wú)需重新編譯。OracleJavaProgrammer認(rèn)證受到整個(gè)技術(shù)行業(yè)雇主的高度重視。
本書能學(xué)到:
幫助你掌握最新OCP考試深度、難度、新模塊題目的變化
涵蓋所有考試目標(biāo),例如Java數(shù)組、原始數(shù)據(jù)類型、字符串API、對(duì)象和類、運(yùn)算符和決策結(jié)構(gòu),以及應(yīng)用封裝
允許開發(fā)人員了解所有最新的Java材料,如lambda表達(dá)式、流、并發(fā)、注釋、泛型和模塊
提供構(gòu)建Java應(yīng)用程序、處理異常、通過(guò)接口編程、JavaSE中的安全編碼等實(shí)用方法
使你能夠獲得通過(guò)OCP考試所需的信息、理解和練習(xí)
9.《軟件架構(gòu)難點(diǎn)解惑》
點(diǎn)擊加載圖片
描述:在軟件架構(gòu)中沒(méi)有簡(jiǎn)單的決定。相反,有許多困難的部分—困難的問(wèn)題或沒(méi)有最佳實(shí)踐的問(wèn)題—迫使你在各種妥協(xié)中做出選擇。通過(guò)本書,你將學(xué)習(xí)如何批判性地思考分布式架構(gòu)所涉及的權(quán)衡。
架構(gòu)資深人士和執(zhí)業(yè)顧問(wèn)NealFord、MarkRichards、PramodSadalage和ZhamakDehghani討論了選擇合適架構(gòu)的策略。通過(guò)交織一個(gè)虛構(gòu)的技術(shù)專家組(SysopSquad)的故事,他們研究了從如何確定服務(wù)粒度、管理工作流和編排、管理和解耦合同、管理分布式事務(wù)到如何優(yōu)化操作特性(例如可擴(kuò)展性)的所有內(nèi)容、彈性和性能。
通過(guò)關(guān)注常見問(wèn)題,本書提供的技術(shù)可幫助你在面對(duì)作為架構(gòu)師所面臨的問(wèn)題時(shí)發(fā)現(xiàn)和權(quán)衡取舍。
分析權(quán)衡并有效地記錄你的決定
就服務(wù)粒度做出更好的決策
了解拆分單體應(yīng)用程序的復(fù)雜性
管理和解耦服務(wù)之間的契約
在高度分布式架構(gòu)中處理數(shù)據(jù)
學(xué)習(xí)在分解應(yīng)用程序時(shí)管理工作流和事務(wù)的模式
10.《Google軟件工程》
點(diǎn)擊加載圖片
描述:今天軟件工程師不僅需要知道如何有效地編程,還需要知道如何開發(fā)適當(dāng)?shù)墓こ虒?shí)踐來(lái)使他們的代碼庫(kù)可持續(xù)和健康。本書強(qiáng)調(diào)了普通編程者和軟件工程之間的這種區(qū)別。
軟件工程師如何管理一個(gè)動(dòng)態(tài)代碼庫(kù),該代碼庫(kù)會(huì)在其整個(gè)生命周期內(nèi)不斷發(fā)展并響應(yīng)不斷變化的需求和要求?根據(jù)他們?cè)贕oogle的經(jīng)驗(yàn),軟件工程師TitusWinters和HyrumWright以及技術(shù)作家TomManshreck對(duì)一些世界領(lǐng)先的從業(yè)者如何構(gòu)建和維護(hù)軟件提出了坦誠(chéng)而有見地的看法。本書涵蓋了Google獨(dú)特的工程文化、流程和工具,以及這些方面如何提高工程組織的效率。
你將探索軟件組織在設(shè)計(jì)、架構(gòu)、編寫和維護(hù)代碼時(shí)應(yīng)牢記的三個(gè)基本原則:
時(shí)間如何影響軟件的可持續(xù)性以及如何使你的代碼隨著時(shí)間的推移具有彈性
規(guī)模如何影響工程組織內(nèi)軟件實(shí)踐的可行性
典型工程師在評(píng)估設(shè)計(jì)和開發(fā)決策時(shí)需要做出哪些權(quán)衡
11.《利用Python進(jìn)行數(shù)據(jù)分析》
點(diǎn)擊加載圖片
描述:獲取有關(guān)在Python中操作、處理、清理和處理數(shù)據(jù)集的完整說(shuō)明。本書的第二版針對(duì)Python3.6進(jìn)行了更新,其中包含實(shí)用案例研究,向你展示如何有效解決廣泛的數(shù)據(jù)分析問(wèn)題。你將在此過(guò)程中學(xué)習(xí)最新版本的pandas、NumPy、IPython和Jupyter。
本書由Pythonpandas項(xiàng)目的創(chuàng)建者韋斯·麥金尼(WesMcKinney)撰寫,是對(duì)Python數(shù)據(jù)科學(xué)工具的現(xiàn)代實(shí)用介紹。它非常適合剛接觸Python的分析師和剛接觸數(shù)據(jù)科學(xué)和科學(xué)計(jì)算的Python程序員。GitHub上提供了數(shù)據(jù)文件和相關(guān)材料。
使用IPythonshell和Jupyternotebook進(jìn)行探索性計(jì)算學(xué)習(xí)NumPy(數(shù)值Python)中的基本和高級(jí)功能
開始使用pandas庫(kù)中的數(shù)據(jù)分析工具
使用靈活的工具加載、清理、轉(zhuǎn)換、合并和重塑數(shù)據(jù)
使用matplotlib創(chuàng)建信息可視化
應(yīng)用pandasgroupby工具對(duì)數(shù)據(jù)集進(jìn)行切片、切塊和匯總
分析和操作規(guī)則和不規(guī)則的時(shí)間序列數(shù)據(jù)
學(xué)習(xí)如何通過(guò)全面、詳細(xì)的示例解決現(xiàn)實(shí)世界的數(shù)據(jù)分析問(wèn)題
12.《EffectiveJAVA》
點(diǎn)擊加載圖片
描述:自從上一版EffectiveJava在Java6發(fā)布后不久發(fā)布以來(lái),Java發(fā)生了翻天覆地的變化。這個(gè)Jolt獲獎(jiǎng)經(jīng)典現(xiàn)在已經(jīng)徹底更新,以充分利用最新的語(yǔ)言和庫(kù)功能?,F(xiàn)代Java對(duì)多種范例的支持增加了對(duì)特定最佳實(shí)踐建議的需求,本書提供了這些建議。
與以前的版本一樣,第三版EffectiveJava的每一章都由幾個(gè)“項(xiàng)目”組成,每個(gè)項(xiàng)目都以一篇簡(jiǎn)短的獨(dú)立文章的形式呈現(xiàn),提供具體建議、對(duì)Java平臺(tái)微妙之處的洞察以及更新的代碼示例。對(duì)每個(gè)項(xiàng)目的全面描述和解釋闡明了該做什么、不該做什么以及為什么。
本書涵蓋:
功能接口、lambda表達(dá)式、方法引用和流
接口中的默認(rèn)和靜態(tài)方法
類型推斷,包括通用類型的菱形運(yùn)算符
@SafeVarargs注釋
try-with-resources語(yǔ)句
新的庫(kù)特性,例如Optional接口、java.time和集合的便捷工廠方法
13.《Python入門》
點(diǎn)擊加載圖片
描述:易于理解和有趣的閱讀,這個(gè)更新版本的《Python入門》是初級(jí)程序員和語(yǔ)言新手的理想選擇。作者BillLubanovic將帶你從基礎(chǔ)知識(shí)到更復(fù)雜、更多樣化的主題,將教程與菜譜式代碼食譜相結(jié)合,以解釋Python3中的概念。章末練習(xí)可幫助你練習(xí)所學(xué)內(nèi)容。
你將打下堅(jiān)實(shí)的語(yǔ)言基礎(chǔ),包括測(cè)試、調(diào)試、代碼重用和其他開發(fā)技巧的最佳實(shí)踐。本書還向你展示了如何使用各種Python工具和開源包將Python用于商業(yè)、科學(xué)和藝術(shù)領(lǐng)域的應(yīng)用程序。
14.《每個(gè)程序員都應(yīng)該知道的40個(gè)算法》
點(diǎn)擊加載圖片
描述:算法一直在計(jì)算科學(xué)和實(shí)踐中發(fā)揮著重要作用。除了傳統(tǒng)計(jì)算之外,使用算法解決現(xiàn)實(shí)世界問(wèn)題的能力是任何開發(fā)人員或程序員都必須具備的一項(xiàng)重要技能。本書不僅會(huì)幫助你培養(yǎng)選擇和使用算法來(lái)解決現(xiàn)實(shí)問(wèn)題的技能,還會(huì)幫助你理解它的工作原理。
你將學(xué)到什么:
探索Python庫(kù)中的現(xiàn)有數(shù)據(jù)結(jié)構(gòu)和算法
使用網(wǎng)絡(luò)分析實(shí)施用于欺詐檢測(cè)的圖形算法
使用機(jī)器學(xué)習(xí)算法對(duì)相似的推文進(jìn)行聚類并實(shí)時(shí)處理Twitter數(shù)據(jù)
使用監(jiān)督學(xué)習(xí)算法預(yù)測(cè)天氣
使用神經(jīng)網(wǎng)絡(luò)進(jìn)行物體檢測(cè)
創(chuàng)建一個(gè)向訂閱者推薦相關(guān)電影的推薦引擎
在谷歌云平臺(tái)(GCP)上使用對(duì)稱和非對(duì)稱加密實(shí)現(xiàn)萬(wàn)無(wú)一失的安全
本書適合誰(shuí):
本書適用于想要了解使用算法解決問(wèn)題和編寫高效代碼的程序員或開發(fā)人員。無(wú)論你是希望以清晰簡(jiǎn)潔的方式學(xué)習(xí)最常用算法的初學(xué)者,還是希望探索數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)和密碼學(xué)領(lǐng)域前沿算法的經(jīng)驗(yàn)豐富的程序員,你都會(huì)發(fā)現(xiàn)這本書很有用。雖然Python編程經(jīng)驗(yàn)是必須的,但數(shù)據(jù)科學(xué)知識(shí)會(huì)有所幫助,但不是必需的。
15.《程序員修煉之道——從小工到專家》
點(diǎn)擊加載圖片
描述:《程序員修煉之道》是你多年來(lái)閱讀、重讀和再次閱讀的稀有技術(shù)書籍之一。無(wú)論你是該領(lǐng)域的新手還是經(jīng)驗(yàn)豐富的從業(yè)者,每次都會(huì)獲得新的見解。
主題范圍從個(gè)人責(zé)任和職業(yè)發(fā)展到使你的代碼保持靈活性并易于適應(yīng)和重用的架構(gòu)技術(shù)。閱讀本書,你將學(xué)習(xí)如何:
對(duì)抗軟件腐爛
不斷學(xué)習(xí)
避免重復(fù)知識(shí)的陷阱
編寫靈活、動(dòng)態(tài)和適應(yīng)性強(qiáng)的代碼
利用基本工具的力量
避免巧合編程
了解真實(shí)需求
解決并發(fā)代碼底層問(wèn)題
防范安全漏洞
建立務(wù)實(shí)的程序員團(tuán)隊(duì)
對(duì)你的工作和事業(yè)負(fù)責(zé)
無(wú)情且有效地進(jìn)行測(cè)試,包括基于屬性的測(cè)試
實(shí)施實(shí)用入門工具包
取悅你的用戶
16.《整潔架構(gòu)之道》
點(diǎn)擊加載圖片
描述:本書針對(duì)你將面臨的真正挑戰(zhàn)提供了直接、嚴(yán)肅的解決方案—這些挑戰(zhàn)將成就或破壞你的項(xiàng)目。
了解軟件架構(gòu)師需要實(shí)現(xiàn)什么——以及實(shí)現(xiàn)它的核心原則和實(shí)踐
掌握解決功能、組件分離和數(shù)據(jù)管理的基本軟件設(shè)計(jì)原則
了解編程范式如何通過(guò)限制開發(fā)人員可以做什么來(lái)強(qiáng)加紀(jì)律
了解什么是至關(guān)重要的,什么只是“細(xì)節(jié)”
為網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)、胖客戶端、控制臺(tái)和嵌入式應(yīng)用程序?qū)嵤┳罴训母呒?jí)結(jié)構(gòu)
定義適當(dāng)?shù)倪吔绾蛯?,并組織組件和服務(wù)
查看為什么設(shè)計(jì)和架構(gòu)會(huì)出錯(cuò),以及如何防止(或修復(fù))這些故障
《整潔架構(gòu)之道》是每一位當(dāng)前或有抱負(fù)的軟件架構(gòu)師、系統(tǒng)分析師、系統(tǒng)設(shè)計(jì)師和軟件經(jīng)理的必備讀物,也是每一位必須執(zhí)行他人設(shè)計(jì)的程序員的必備讀物。
17.《領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)學(xué)習(xí)手冊(cè)》
點(diǎn)擊加載圖片
描述:構(gòu)建軟件比以往任何時(shí)候都更難。作為開發(fā)人員,你不僅要追逐不斷變化的技術(shù)趨勢(shì),還需要了解軟件背后的業(yè)務(wù)領(lǐng)域。這本實(shí)用的書為你提供了一組核心模式、原則和實(shí)踐,用于分析業(yè)務(wù)領(lǐng)域、理解業(yè)務(wù)戰(zhàn)略,最重要的是,使軟件設(shè)計(jì)與其業(yè)務(wù)需求保持一致。
作者VladKhononov向你展示了這些實(shí)踐如何導(dǎo)致業(yè)務(wù)邏輯的穩(wěn)健實(shí)施并有助于面向未來(lái)的軟件設(shè)計(jì)和架構(gòu)。你將檢查領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)與其他方法之間的關(guān)系,以確保你做出滿足業(yè)務(wù)需求的架構(gòu)決策。你還將探索在初創(chuàng)公司中實(shí)施DDD的真實(shí)故事。
通過(guò)本書,你將學(xué)習(xí)如何:
分析公司的業(yè)務(wù)領(lǐng)域以了解你正在構(gòu)建的系統(tǒng)如何符合其競(jìng)爭(zhēng)戰(zhàn)略
使用DDD的戰(zhàn)略和戰(zhàn)術(shù)工具來(lái)構(gòu)建滿足業(yè)務(wù)需求的有效軟件解決方案
建立對(duì)你遇到的業(yè)務(wù)領(lǐng)域的共同理解
將系統(tǒng)分解為有界上下文
協(xié)調(diào)多個(gè)團(tuán)隊(duì)的工作
逐步將DDD引入棕地項(xiàng)目
18.《算法圖解》
點(diǎn)擊加載圖片
描述:GrokkingAlgorithms是對(duì)這一核心計(jì)算機(jī)科學(xué)主題的友好解讀。在其中,你將學(xué)習(xí)如何將常用算法應(yīng)用于你每天面臨的實(shí)際編程問(wèn)題。你將從排序和搜索等任務(wù)開始。隨著技能的積累,你將解決更復(fù)雜的問(wèn)題,例如數(shù)據(jù)壓縮和人工智能。每個(gè)精心呈現(xiàn)的示例都包含有用的圖表和完整注釋的Python代碼示例。到本書結(jié)束時(shí),你將掌握廣泛適用的算法以及如何以及何時(shí)使用它們。
19.《C#9.0inaNutshell:TheDefinitiveReference》
點(diǎn)擊加載圖片
描述:當(dāng)你對(duì)C#9.0或.NET5有疑問(wèn)時(shí),這本暢銷指南將為你提供所需的答案。C#是一種具有不同尋常的靈活性和廣度的語(yǔ)言,但隨著它的不斷發(fā)展,還有很多東西需要學(xué)習(xí)。按照O'Reilly的Nutshell指南的傳統(tǒng),這個(gè)徹底更新的版本簡(jiǎn)直就是當(dāng)今可用的C#語(yǔ)言的最佳單卷參考。
《C#9.0inaNutshell》圍繞概念和用例進(jìn)行組織,為中級(jí)和高級(jí)程序員提供了C#和.NET的簡(jiǎn)明地圖,該地圖還探索了重要的深度。
快速掌握C#,從語(yǔ)法和變量到指針、記錄、閉包和模式等高級(jí)主題
通過(guò)專門針對(duì)該主題的三章深入挖掘LINQ
探索并發(fā)和異步、高級(jí)線程和并行編程
使用.NET功能,包括正則表達(dá)式、網(wǎng)絡(luò)、跨度、反射和密碼學(xué)
20.《微服務(wù)架構(gòu)設(shè)計(jì)模式》
點(diǎn)擊加載圖片
描述:《微服務(wù)架構(gòu)設(shè)計(jì)模式》教你如何開發(fā)和部署基于生產(chǎn)質(zhì)量的微服務(wù)應(yīng)用程序。這套無(wú)價(jià)的設(shè)計(jì)模式建立在幾十年的分布式系統(tǒng)經(jīng)驗(yàn)之上,添加了新的模式來(lái)編寫服務(wù)并將它們組合成在現(xiàn)實(shí)世界條件下可擴(kuò)展和可靠運(yùn)行的系統(tǒng)。本書不僅僅是一個(gè)模式目錄,還提供了以經(jīng)驗(yàn)為導(dǎo)向的建議,以幫助你設(shè)計(jì)、實(shí)施、測(cè)試和部署基于微服務(wù)的應(yīng)用程序。
總結(jié)
至此本文所講地二十本書就全部介紹完了,希望能對(duì)大家有所幫助。
聯(lián)系客服