如何把代碼寫的更優雅,你需要這一份代碼精進書單!

来源:https://www.cnblogs.com/xll1025/archive/2020/06/24/13189601.html
-Advertisement-
Play Games

​ 黃小斜寫了一年多的代碼,漸漸地代碼量也上來了,但是,代碼寫的多就是好嗎,簡單的數量堆積似乎並不能起到太好的效果,畢竟我們CRUD寫多了,也不怎麼需要架構設計,甚至連個設計模式都不怎麼需要用到。如何開始代碼精進之路,其實有很多的過來人早就已經給出了答案,今天就給大家推薦幾本幫你精進代碼的優質書籍, ...


黃小斜寫了一年多的代碼,漸漸地代碼量也上來了,但是,代碼寫的多就是好嗎,簡單的數量堆積似乎並不能起到太好的效果,畢竟我們CRUD寫多了,也不怎麼需要架構設計,甚至連個設計模式都不怎麼需要用到。如何開始代碼精進之路,其實有很多的過來人早就已經給出了答案,今天就給大家推薦幾本幫你精進代碼的優質書籍,走過路過可不要錯過哦~

代碼精進系列書單

代碼精進之路:從碼農到工匠

這是一本為專業程式員而寫的書,寫好代碼、追求卓越和工匠精神是每個程式員都應該具備的優秀品質。

本書共有13章內容,主要分為技藝部分、思想部分和實踐部分。技藝部分詳細介紹了編程技巧和方法論,並配以詳盡的代碼案例,有助於讀者提高編寫代碼的能力,優化代碼質量。思想部分主要包括抽象能力、分治思想,以及程式員應該具備的素養等內容。實踐部分主要介紹了常見的應用架構模式,以及COLA架構的設計原理。

作者簡介

張建飛,阿裡巴巴集團高級技術專家,Java全球管理組織(JCP)執行委員會正式會員(Full Member)。2007年電腦工程碩士畢業後,先後在軟體公司InfoSys與互聯網公司eBay擔任高級研發和技術專家的職務。2014年加入阿裡巴巴,先後在1688、ICBU和零售通擔任技術主管。

作者精通面向對象技術,有豐富的一線編碼實戰和架構經驗。特別是在應用架構、領域建模和複雜度治理領域,自研了COLA框架。COLA自開源以來,已經被多個技術團隊使用,解決了DDD落地和應用擴展問題,受到了普遍關註和一致好評。

作者提倡“工匠精神”,對於如何打造一個追求卓越、獨具匠心的技術團隊,如何量化考核工程師的技術貢獻,都有著非常深入的思考和實踐,並探索出一套切實可行的方法論。基於該方法論打造的“工匠平臺”,在阿裡巴巴內部被廣泛使用,“工匠平臺”豐富了對技術人員考察的維度,是除業務結果之外的從技術視角給技術人員“照鏡子”的有效工具。

代碼整潔之道

軟體質量,不但依賴架構及項目管理,而且與代碼質量緊密相關。這一點,無論是敏捷開發流派還是傳統開發流派,都不得不承認。

本書提出一種觀點:代碼質量與其整潔度成正比。乾凈的代碼,既在質量上較為可靠,也為後期維護、升級奠定了良好基礎。作為編程領域的佼佼者,本書作者給出了一系列行之有效的整潔代碼操作實踐。這些實踐在本書中體現為一條條規則(或稱“啟示”),並輔以來自實際項目的正、反兩面的範例。只要遵循這些規則,就能編寫出乾凈的代碼,從而有效提升代碼質量。

本書閱讀對象為一切有志於改善代碼質量的程式員及技術經理。書中介紹的規則均來自作者多年的實踐經驗,涵蓋從命名到重構的多個編程方面,雖為一“家”之言,然誠有可資借鑒的價值。

作者簡介

Robert C. Martin,軟體開發大師,設計模式和敏捷開發先驅,敏捷聯盟首任主席,C   Report前主編,被後輩程式員尊稱為“Bob大叔”。

20世紀70年代初成為職業程式員,後創辦Object Mentor公司並任總裁。Martin還是一名多產的作家,至今已發表數百篇文章、論文和博客文章。

除本書外,還著有《代碼整潔之道:程式員的職業素養》《敏捷軟體開發:原則、模式和實踐》《UML:Java程式員指南》等。

譯者簡介
韓磊,互聯網產品與社區運營專家,技術書籍著譯者。曾任CSDN及《程式員》雜誌副總經理、總編輯,廣東二十一世紀傳媒新媒體事業部總經理等職。現任AR初創企業亮風台廣州公司總經理。除本書外,還譯有《夢斷代碼》《C#編程風格》等書。與劉韌合著《網路媒體教程》,與戴飛合譯《Beginning C# Objects中文版:概念到代碼》。

代碼整潔之道:程式員的職業素養

本書是編程大師“Bob 大叔”40餘年編程生涯的心得體會的總結,講解要成為真正專業的程式員需要具備什麼樣的態度,需要遵循什麼樣的原則,需要採取什麼樣的行動。作者以自己以及身邊的同事走過的彎路、犯過的錯誤為例,意在為後來者引路,助其職業生涯邁上更高臺階。

作者簡介

作者介紹
Robert C. Martin,軟體開發大師,設計模式和敏捷開發先驅,敏捷聯盟首任主席,C   Report前主編,被後輩程式員尊稱為“Bob大叔”。20世紀7 0年代初成為職業程式員,後創辦Object Mentor公司並任總裁。Martin還是一名多產的作家,至今已發表數百篇文章、論文和博客文章。除本書外,還著有《代碼整潔之道》《敏捷軟體開發:原則、模式和實踐》《UML:Java程式員指南》等。他創辦了cleancoders.com網站,專為軟體開發人員提供教育視頻。

譯者介紹
餘晟,混跡軟體開發和互聯網行業多年,目前在滬江網負責研發和架構管理工作。業餘喜愛閱讀、思考,關註工程師的全面發展,探索更聰明的技術方案,樂於幫助外界更多理解IT行業的約束、規律和習慣。

章顯洲,螞蟻金服高級項目專家,業餘以技術翻譯作為個人修煉與回饋軟體開發社區的途徑。自2009年來,翻譯和與人合譯多本技術管理書籍,偶爾也會出現在技術社區聚會上作一些分享。近年來主要致力於螞蟻金服基礎設施和架構升級方面的項目。

牆裂推薦:GitHub 上這個開源項目可以讓你在短短幾分鐘之內瞭解一門技術

spark、storm還是flink?推薦一份海量數據處理技術的書單

哈工大、哈工程被禁用「工科神器」MATLAB,美國「實體名單」影響深入校園


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在使用idea進行springBoot測試時,讀取properties文件裡面的內容會中文亂碼,可以設置文件的編碼格式為utf-8 有時候可能全都設置完utf-8後還不好使,網上教程說可以清理一下idea緩存 但是測試後仍沒有用 最後在properties文件上添加相關屬性,比如springBoot ...
  • ​ 想當年,我也是一名想做游戲開發的程式員,大學的時候照葫蘆畫瓢做了一個半成品的《爐石傳說》一度讓我以為我將來會成為一名游戲開發工程師,可惜後來我被C++的學習成本給全退了,於是乎和游戲開發這一領域從此是路人。 雖然現在也不能說這個選擇到底是否正確,但是我對於游戲的熱愛還是沒怎麼減少,只不過再也沒時 ...
  • ​ 軟體工程是一門研究用工程化方法構建和維護有效的、實用的和高質量的軟體的學科。它涉及程式設計語言、資料庫、軟體開發工具、系統平臺、標準、設計模式等方面。 在現代社會中,軟體應用於多個方面。典型的軟體有電子郵件、嵌入式系統、人機界面、辦公套件、操作系統、編譯器、資料庫、游戲等。同時,各個行業幾乎都有 ...
  • ​ 白帽,即通過正常的手段對網站內部優化(包括網站標題,網站結構,網站代碼,網站內容,關鍵詞密度等)、網站外部的發佈與建設,提高網站關鍵詞在搜索引擎排名的一種seo技術;黑帽,即通過垃圾鏈接、隱藏網頁、橋頁、關鍵詞堆砌等方法,實現快速搜索引擎優化的目的。 網路安全,通常指電腦網路的安全,實際上也可 ...
  • 內部類(Inner Class),是 Java 中對類的一種定義方式,是嵌套類的一個分類,即非靜態嵌套類(Non-Static Nested Class)。內部類(非靜態嵌套類)分為成員內部類、局部內部類和匿名內部類三種。Java 編程語言允許一個類被定義在另一個類中,這樣的類就稱為嵌套類。嵌套類分... ...
  • ​ 程式員往往一心撲在編程技術上面,學習編程語言,演算法,網路,自己子領域相關的知識等等。這非常正確,也是作為coder的核心競爭力所在,姑且稱之為“硬技能”吧。 對於有一個程式員來說除了日常碼代碼之外,其實也需要很多編程之外的軟體能,非專業上面的技能可以更好的展現你的情商,與人合作的能力等。 以程式 ...
  • ​ Python是一種跨平臺的電腦程式設計語言。是一個高層次的結合瞭解釋性、編譯性、互動性和麵向對象的腳本語言。最初被設計用於編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越多被用於獨立的、大型項目的開發。 Python現如今已成為真正的萬金油語言,哪裡需要哪裡用,不管是做w ...
  • ​ 軟體測試是伴隨著軟體的產生而產生的。早期的軟體開發過程中軟體規模都很小、複雜程度低,軟體開發的過程混亂無序、相當隨意,測試的含義比較狹窄,開發人員將測試等同於“調試”,目的是糾正軟體中已經知道的故障,常常由開發人員自己完成這部分的工作。 對測試的投入極少,測試介入也晚,常常是等到形成代碼,產品已 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...