開發高質量的java程式碼;實現完美的人生
一、程式碼質量差表現在哪些方面:
(1)可讀性:函式命名隨意,實現邏輯混亂,程式碼格式不規範。
(2)可靠性:程式執行不穩定,bug太多。
(3)維護性:程式碼邏輯沒有層次,混成一團,很難維護改進。
(4)移植性、重用性:許多人寫的程式碼,只能自己使用,很少有能共享的功能性程式碼。
(5)高效性:很少從演算法、資源佔用、執行效率等角度去考慮,經常導致軟體效能問題。
二、解決方法(個人角度)
(1)要儘量提升程式碼可讀性。不僅寫出計算機可以理解的程式碼,還要寫出人類容易理解的程式碼。
(2)熟悉自己所使用的程式語言。實際程式設計時,寫法、用法要標準,多用API類庫。
(3)培養嚴謹的邏輯思維能力,流程的每個細節都要考慮到。
(4)養成規範的程式設計習慣,如程式碼縮排、引數校驗、異常處理、新增註釋等。規範的程式碼可以減少bug處理,在實際專案中,複雜的演算法或邏輯只佔很小的
比例,大部分功能都不復雜,規範的程式碼可以大大減少bug數量。
(5)新增足夠多的單元測試。
(6)養成自我測試習慣。軟體研發作為一項工程而言,問題發現的越早,解決的代價就越低。程式設計師如果能儘量將一些潛在的問題最早的發現和解決,這樣
整體系統的效率和可靠性就有了最大的保證。除了進行正常呼叫的測試,還要考慮異常呼叫的測試。除了要對自身模組進行測試,還要重視對相關模組的測試。
(7)掌握一些程式設計思想、設計模式,常用演算法,這會讓程式碼更加具有結構性、條理更加清晰、效能更高效。
(8)多看高手程式碼,讀一些優秀的開原始碼(如github,code project上原始碼),看經典書籍。
(9)開發完成後,多回顧以前程式碼,尋找能改進之處。
(10)遇到問題要多想幾種解決的方案,鼓勵多與團隊成員交流,各人的思維方式不同、角度各異,各有高招。
(11)增強溝通能力,提升獲取需求以及確認需求能力,保證所做功能是客戶所需要的,避免不斷返工。
(12)養成經常性的文件習慣。缺乏文件,一個軟體系統就缺乏生命力,在未來的查錯,升級以及模組的複用時就會遇到極大的麻煩。
(13)多在設計上下功夫,設計上的不足將會帶來大量的重構與bug。多從全域性的角度去考慮整個專案程式碼的架構、模組、層次等問題,追求最佳解決方案。
(14)有意識的就專案的組織和複用設計進行揣摩,培養模組化思維。
(15)不斷總結和反思開發中遇到的問題及實現方案,並形成文件,鼓勵與團隊成員分享並交流。
三、解決方法(團隊角度)
(1) 明確的編碼規範要求
每個團隊成員要嚴格遵守編碼要求,編碼規範要求中不確定因素要通過團隊成員討論形成,在Code Review中包含程式碼編寫規範的審查。
(2) 實行正式的程式碼審查(Review)機制。
重要的模組專案組一起進行程式碼審查,團隊成員通過向別人講解自己的程式碼並得到反饋,能夠學到很多東西。要求具體到每個技術細節,因為討論的內容越具體,
在與別人的交流中獲得有價值資訊的可能性越大。
一般的功能模組可以讓另一位成員進行程式碼審查,主要審查程式碼規範性,設計以及實現邏輯,並給出反饋和建議。
(3) 對重要問題的解決方案採用頭腦風暴式討論,傾向有理有據的討論。
在明確問題背景後,對於不同解決方案進行討論,比較不同解決方案優缺點,權衡利弊。
(4) 任務分配上,不要過於追求進度。好的程式碼質量需要好的設計、高效的演算法選擇,這些都需要時間作為保證。對於複雜問題,可以單獨給員工一些時間
做設計、研究、分析,這樣從長遠來看是有價值的。
(5) 建立參與和分享的團隊文化
儘可能地鼓勵團隊成員公開並分享他們的成果和想法,這會形成一個積極分享並樂於討論問題的氛圍,有利於提升團隊人員整體水平。
相關文章
- 前端高質量郵件信開發實現 ?前端
- 高質量的程式碼 - 函式(1)函式
- 劍指offer-Go版實現 第三章:高質量的程式碼Go
- 如何提高Java程式碼質量-優雅的寫程式碼Java
- OCLint 實現 Code Review - 給你的程式碼提提質量View
- 如何做好質量管理、提高研發的程式碼質量?
- 如何編寫高質量的C#程式碼(一)C#
- 前端程式碼質量的思考與實踐前端
- YUV影像質量的客觀評估SSIM matlab程式碼實現Matlab
- 如何開發高質量的Web閱讀產品Web
- 程式碼質量第 5 層 - 只是實現了功能
- 我們應該如何編寫高質量的前端程式碼前端
- 熟悉一個“高質量”軟體的開發過程
- Java程式碼質量改進之:同步物件的選擇Java物件
- 編寫靈活、穩定、高質量的HTML程式碼的規範HTML
- 編寫靈活、穩定、高質量的CSS程式碼的規範CSS
- 程式碼質量-開閉原則
- 提高開發質量的 5 個必要實踐
- 《Effective JavaScript 編寫高質量JavaScript程式碼的68個有效方法》JavaScript
- iOS 編寫高質量Objective-C程式碼iOSObjectC程式
- 相對現代化的把控前端程式碼質量前端
- 致同:以黨建工作的高質量引領業務發展高質量
- PHP實現高畫質晰度無損圖片壓縮功能的程式碼PHP
- 使用Gradle做Java程式碼質量檢查GradleJava
- 程式碼質量第 4 層 - 健壯的程式碼
- 程式碼質量第 3 層 - 可讀的程式碼
- 程式碼質量第 2 層 - 可重用的程式碼
- 雜湊表的程式碼實現(Java)Java
- 《編寫高質量程式碼:改善Java程式的151個建議》筆記Java筆記
- Java 實現的SnowFlake生成UUID (Java程式碼實戰-007)JavaUI
- 閒談團隊的程式碼質量
- 關於程式碼質量退化的思考
- iOS編寫高質量Objective-C程式碼(六)iOSObjectC程式
- iOS 編寫高質量Objective-C程式碼(七)iOSObjectC程式
- iOS 編寫高質量Objective-C程式碼(八)iOSObjectC程式
- iOS 編寫高質量Objective-C程式碼(六)iOSObjectC程式
- iOS 編寫高質量Objective-C程式碼(五)iOSObjectC程式
- iOS 編寫高質量Objective-C程式碼(一)iOSObjectC程式
- iOS 編寫高質量Objective-C程式碼(二)iOSObjectC程式