成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

編寫干凈代碼的重要性

譯文
開(kāi)發(fā) 后端
可理解性始于我們編寫代碼的方式。作為開(kāi)發(fā)人員,有必要花時(shí)間進(jìn)行重構(gòu),以確保我們編寫的代碼易于被同事理解,還要易于被最終在下個(gè)月、下一年甚至十年后調(diào)試我們代碼的程序員理解。

[[339389]]

【51CTO.com快譯】在金融行業(yè),可理解性指這個(gè)概念:應(yīng)該以一種使讀者能夠快速輕松地理解的方式呈現(xiàn)信息。要做到可理解性,財(cái)務(wù)系統(tǒng)必須完整、簡(jiǎn)潔、清晰且有條理。

需要將可理解性概念引入到軟件世界。

我們已看到,微服務(wù)、云和分布式系統(tǒng)的興起都增添了現(xiàn)代系統(tǒng)的復(fù)雜性。這意味著我們的開(kāi)發(fā)團(tuán)隊(duì)必須更努力地工作,才能高效構(gòu)建可以由越來(lái)越多的開(kāi)發(fā)人員輕松維護(hù)的應(yīng)用程序。

我們?nèi)绾尉帉懘a?

可理解性始于我們編寫代碼的方式。作為開(kāi)發(fā)人員,有必要花時(shí)間進(jìn)行重構(gòu),以確保我們編寫的代碼易于被同事理解,還要易于被最終在下個(gè)月、下一年甚至十年后調(diào)試我們代碼的程序員理解。除此之外,只有內(nèi)聯(lián)注釋和外部文檔完整、簡(jiǎn)潔、清晰且有條理,才應(yīng)批準(zhǔn)變更請(qǐng)求。

  • 完整:含有開(kāi)發(fā)人員理解某個(gè)組件的預(yù)期行為所需要的所有信息。
  • 簡(jiǎn)潔:以一種易于掃描以查找重點(diǎn)內(nèi)容,且不太麻煩或重復(fù)的方式來(lái)加以編寫;以一種含有相關(guān)信息,沒(méi)有太多其他信息的方式來(lái)加以編寫。
  • 清晰:格式和介質(zhì)易于掃描。在軟件開(kāi)發(fā)界,這通常轉(zhuǎn)化為內(nèi)聯(lián)注釋和維基頁(yè)面。
  • 有條理:以一種使讀者易于相互對(duì)照信息的方式呈現(xiàn)信息。精心維護(hù)的維基頁(yè)面或者與IntelliSense工具或源代碼控制管理工具集成通常在這方面很有效。

文檔和注釋上花點(diǎn)時(shí)間似乎會(huì)減慢某項(xiàng)功能的開(kāi)發(fā)。但正如有人曾說(shuō)過(guò),如果您有六小時(shí)的時(shí)間來(lái)砍樹,花前四個(gè)時(shí)間來(lái)磨斧頭是明智的。前期工作將使我們的應(yīng)用程序?qū)?lái)調(diào)試和維護(hù)起來(lái)要容易得多。因?yàn)槿绻麘?yīng)用程序變得錯(cuò)誤過(guò)多,太難支持,交接過(guò)程變得太耗時(shí)、效率低下,我們到頭來(lái)會(huì)把整個(gè)迭代開(kāi)發(fā)周期(sprint)耗費(fèi)在改進(jìn)文檔、單元測(cè)試和日志記錄等方面上。

在微服務(wù)和分布式系統(tǒng)這個(gè)復(fù)雜的世界,開(kāi)發(fā)人員花在閱讀代碼上的時(shí)間要比花在編寫代碼上的時(shí)間多10倍,因此我們編寫的代碼干凈、很容易展示給他人來(lái)得無(wú)比重要。

部署代碼后

即使您編寫了干凈、文檔完備的代碼,在云和分布式系統(tǒng)世界,仍然很難預(yù)測(cè)該代碼在部署后會(huì)有怎樣的行為。干凈的代碼好比詳細(xì)的烹飪食譜:它清晰地闡明了應(yīng)該發(fā)生的事情,您在準(zhǔn)備飯菜過(guò)程中會(huì)常常查閱食譜,但是食譜可能無(wú)法知道烤箱的當(dāng)前溫度或您如何混合了配料。

為了使我們的應(yīng)用程序真正易于理解,我們必須能夠?qū)崟r(shí)觀察代碼。日志記錄、跟蹤、監(jiān)測(cè)、錯(cuò)誤跟蹤和性能分析之類的工具可以告訴我們代碼在運(yùn)行時(shí)應(yīng)用程序的實(shí)際行為。這與一開(kāi)始編寫干凈的代碼一樣重要,因?yàn)殡m然閱讀靜態(tài)代碼對(duì)于理解應(yīng)用程序至關(guān)重要,但我們也知道,它永遠(yuǎn)無(wú)法完全代表應(yīng)用程序在生產(chǎn)環(huán)境中的實(shí)際行為。

這方面的一個(gè)典例就是配置。如果您的代碼存在基于配置的大規(guī)模切換情形,那么僅僅閱讀代碼可以表明可能出現(xiàn)什么情況。想了解實(shí)際情況,您必須了解運(yùn)行時(shí)在使用的配置。

還要記住,到頭來(lái)目的是不僅限于觀察系統(tǒng),而是進(jìn)入到我們真正了解系統(tǒng)的階段。這意味著我們需要集成到開(kāi)發(fā)環(huán)境中的工具、在所編寫代碼的上下文中檢索數(shù)據(jù)的工具以及深入動(dòng)態(tài)地查看代碼在實(shí)際環(huán)境下如何運(yùn)行的工具。

大多數(shù)公司還沒(méi)有抵達(dá)成功彼岸。如果您具備了可觀察性,已經(jīng)領(lǐng)先于大多數(shù)公司。但是觀察到問(wèn)題后,仍需要進(jìn)行額外的工作才能真正深入了解應(yīng)用程序中發(fā)生的情況。生產(chǎn)級(jí)調(diào)試器就是一個(gè)典例,這種工具解決了可理解性問(wèn)題;我預(yù)計(jì)在接下來(lái)幾個(gè)月,這一類工具的討論會(huì)越來(lái)越多。

原文標(biāo)題:The Importance of Writing Clean Code,作者:Liran Haimovitch

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

責(zé)任編輯:龐桂玉 來(lái)源: 51CTO
相關(guān)推薦

2023-09-19 23:30:25

單元測(cè)試代碼

2021-02-04 06:30:26

Python編程語(yǔ)言

2010-07-30 16:28:06

2023-10-24 11:07:57

2022-06-07 09:30:35

JavaScript變量名參數(shù)

2013-08-08 10:10:06

備份策略全備份增量備份

2017-12-29 10:14:48

IT項(xiàng)目

2011-07-05 18:30:44

站內(nèi)優(yōu)化

2009-12-25 15:00:48

WPF軟件

2020-07-15 14:51:39

代碼C+開(kāi)發(fā)

2016-08-29 20:31:17

2009-11-25 17:36:38

PHP函數(shù)includ

2009-03-03 17:25:41

2022-11-04 14:13:54

2010-07-05 14:27:30

UML各種圖形

2011-08-11 10:12:11

2014-04-23 11:36:29

運(yùn)維日志

2021-12-22 23:12:19

物聯(lián)網(wǎng)隱私安全

2013-05-06 10:49:59

虛擬化IT戰(zhàn)略

2022-04-11 09:43:06

物聯(lián)網(wǎng)IOT
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 毛片站| 日韩波多野结衣 | 999热精品视频 | 久精品视频 | 免费国产视频在线观看 | 99精品网| 国产一区二区三区www | 日韩欧美不卡 | av看片网站| 一级毛片播放 | 欧美一级电影免费 | 日本免费一区二区三区四区 | 欧美在线视频一区 | 7777奇米影视 | 在线观看视频你懂得 | 色999日韩 | 成人妇女免费播放久久久 | 一区二区三区av | 久久噜噜噜精品国产亚洲综合 | 亚洲 欧美 激情 另类 校园 | 国产不卡一区 | 综合久久av| 欧美一级片在线观看 | 伦理片97| 久久国产精品免费一区二区三区 | 亚洲一区二区三区在线视频 | 国产成人av电影 | 中文字幕亚洲视频 | 操亚洲| 精品视频在线观看 | 91观看 | 爱爱免费视频网站 | 中文在线视频 | 欧美精品乱码久久久久久按摩 | 午夜av成人| 人人玩人人添人人澡欧美 | 亚洲国产一区二区视频 | 欧美一区在线视频 | 99热成人在线 | 99自拍视频 | 色免费在线视频 |