- 代碼的藝術(shù):用工程思維驅(qū)動軟件開發(fā)
- 章淼
- 539字
- 2022-05-05 21:55:55
2.4.1 好代碼不止于編碼
好代碼從哪里來?
對于這個問題,很多讀者肯定會說:“好代碼肯定是寫出來的呀。”
我曾做過多次調(diào)研,發(fā)現(xiàn)很多軟件工程師日常所讀的書確實是和“寫代碼”緊密相關(guān)的。
但是,這里要告訴讀者的是,代碼不只是“寫”出來的。在很多年前,我所讀的軟件工程方面的教科書就告訴我,編碼的時間一般只占一個項目所花時間的10%。我曾說過一句比較有趣的話:
“如果一個從業(yè)者告訴你,他的大部分時間都在寫代碼,那么他大概率不是一個高級軟件工程師。”
那么,軟件工程師的時間都花到哪里去了呢?軟件工程師的時間應(yīng)該花在哪里呢?
好的代碼是多個工作環(huán)節(jié)的綜合結(jié)果。
(1)在編碼前,需要做好需求分析和系統(tǒng)設(shè)計。而這兩項工作是經(jīng)常被大量軟件工程師忽略或輕視的環(huán)節(jié)。
(2)在編碼時,需要編寫代碼和編寫單元測試。對于“編寫代碼”,讀者都了解;而對于“編寫單元測試”,有些軟件工程師就不認同了,甚至還有人誤以為單元測試是由測試工程師來編寫的。
(3)在編碼后,要做集成測試、上線,以及持續(xù)運營/迭代改進。這幾件事情都是要花費不少精力的,比如上線,不僅僅要做程序部署,而且要考慮程序是如何被監(jiān)控的。有時,為了一段程序的上線,設(shè)計和實施監(jiān)控的方案要花費好幾天才能完成。
因此,一個好的系統(tǒng)或產(chǎn)品是以上這些環(huán)節(jié)持續(xù)循環(huán)執(zhí)行的結(jié)果。
推薦閱讀
- Spring開發(fā)者的Quarkus實戰(zhàn)
- MATLAB 2018從入門到精通
- 經(jīng)·理@互聯(lián)網(wǎng)產(chǎn)品經(jīng)理的進階修煉
- 鑄魂:軟件定義制造
- Android應(yīng)用安全防護和逆向分析
- 服務(wù)端開發(fā):技術(shù)、方法與實用解決方案
- 深入淺出數(shù)據(jù)結(jié)構(gòu)與算法(微課視頻版)
- 全棧Monorepo開發(fā)實戰(zhàn)(Vue 3+Fastify+Deno+pnpm)
- 持續(xù)交付2.0:業(yè)務(wù)引領(lǐng)的DevOps精要(增訂本)
- 軟件測試項目實戰(zhàn)
- 云原生Kubernetes全棧架構(gòu)師實戰(zhàn)
- 數(shù)據(jù)壓縮入門
- 軟件工程最佳實踐
- Flex 4.0 RIA開發(fā)寶典
- 軟件設(shè)計:從專業(yè)到卓越