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

優秀程序員的18條法則

移動開發
程序設計法則,與設計和工程的原理密切相關。下面這些編程法則幫助我讓我獲益匪淺,所以我想分享給大家,希望也能幫助大家更高效,生產出的代碼更容易維護,并且bug和缺陷更少。

經過多年的積累,我發現,下面這些基本的指導法則,可以幫助我成為一個更加高效的程序員。

程序設計法則,與設計和工程的原理密切相關。下面這些編程法則幫助我讓我獲益匪淺,所以我想分享給大家,希望也能幫助大家更高效,生產出的代碼更容易維護,并且bug和缺陷更少。

[[151572]]

DRY原則

不要重復(Don’t repeat yourself)——程序設計中一個最根本的原則就是要避免重復。許多編程結構(比如循環、函數、類等)的存在就是為了避免重復。一旦重復(例如,一個長表達式,一系列語句,相同的概念)的話,就會創建一個新的抽象。

抽象原則

“每個在程序中有意義的功能片段應該只在源代碼的一處地方實現。”

KISS(Keep it simple, stupid!)原則

簡單性(避免復雜性)應該永遠當作是一個重要的目標。寫簡單的代碼,不但花費的時間少,錯誤少,而且修改起來也容易。

避免創建YAGNI(You aren’t going to need it)原則

只有當你需要的時候才去添加額外的功能,不需要就不要畫蛇添足。

方法要最簡單,效果要一樣好

在編程時,我們需要問問自己:“有沒有最簡單的完成任務的途徑?”這有助于我們保持一直行走在簡約設計的道路上。

不要讓我思考

這實際上是由Steve Krug寫的一本書的書名。關鍵要點是,代碼應該盡可能地易于閱讀和理解。如果閱讀人需要大量的思考才能理解代碼,那么或許這代碼還需要被簡化。

開/閉原則

軟件實體(類,模塊,函數等)在擴展時應該開放,在修改時應該關閉。換句話說,你寫的類大家可以擴展,但不能修改。

為維護者寫代碼

值得寫的代碼要保證將來一定值得維護。未來的你由于經歷的代碼太多,也許再回過頭來看這些代碼的時候,也和其他人一樣,已經成為了一個完全的陌生人。請記住,“寫代碼的時候,就假設將來要維護的人是個知道你住在哪里的暴力型精神病患者吧。”

最小驚訝原則

最小驚訝原則通常引用于用戶界面方面,但這一原則也適用于編寫代碼。代碼應該盡可能地不要讓閱讀者驚訝。遵守標準約定,注釋說什么代碼就做什么,命名是什么意思代碼就是什么意思,盡可能地避免驚訝導致的潛在的負面影響。

單一職責原則

代碼(如類或函數)的組成部分執行的應該是一個單一的明確的任務。

最小化耦合原則

代碼的任何部分(代碼塊,函數,類等)都應該盡量減少對其他代碼的依賴。這可以通過盡量不要使用共享變量來實現。“低耦合常常是計算機系統構造良好和設計良好的標志,并且當和高內聚力相結合的話,還可以大大支持高可讀性和可維護性的整體目標。”

***化內聚原則

具有相似功能的代碼應該放在同一個組件內。

隱藏實現細節原則

隱藏實現細節,允許在改變代碼組件的實現的同時,***限度地減少對使用該組件的其他模塊的影響。

得墨忒耳定律

代碼組件應該只和它們的直接關系(如,繼承的類,包含的對象,通過參數傳遞的對象等)溝通。

避免過早優化原則

除非代碼開始工作,否則甚至就不要有優化的念頭。只有當你必須要優化的時候,才能借助實戰數據的幫助。 “我們一定要有大局觀:過早的優化是萬惡之源”——Donald Knuth。

重用代碼才是好代碼

這和任何其他法則一樣之精辟。重用代碼可以提高代碼的可靠性,并減少開發時間。

關注點分離原則

不同的功能區域應該由明顯的重疊最小的代碼模塊進行管理。

擁抱變化原則

這是Kent Beck寫的一本書的副標題,也被認為是極端編程和通用敏捷方法的原則。許多其他原則都基于這個理念:你應該期待和歡迎變化。事實上,很多古老的軟件工程法則,例如最小化耦合原則,就是和讓代碼變得更容易改變是直接相關的。無論你是不是一個極端編程的實踐者,這種寫代碼的方法真的很有意義。

有什么想法嗎?歡迎參與到我們熱烈的討論中來!

責任編輯:倪明 來源: 碼農網
相關推薦

2016-01-29 10:03:43

優秀程序員黃金法則

2009-05-21 16:23:23

程序員法則職場

2017-11-14 21:30:15

2014-08-29 11:09:44

程序員

2020-03-09 11:14:25

程序員技術設計

2020-03-29 08:19:56

程序員代碼

2012-05-25 10:54:24

程序員

2021-05-29 07:32:14

優秀程序員代碼

2015-06-17 14:24:48

優秀程序員整潔代碼

2012-11-01 13:46:54

程序員

2015-10-12 09:03:53

程序員法則

2019-09-11 09:04:47

編程語言代碼程序

2015-08-03 09:09:20

程序員腦子快

2016-12-19 17:35:58

程序員特質

2009-01-08 09:04:18

2015-06-24 10:33:17

程序員擅長數學

2012-11-09 13:44:48

ScalaJVMJava

2011-07-05 11:08:05

程序員

2014-11-19 15:26:00

程序員

2013-08-05 09:55:47

程序員
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费的av网站 | www.久久 | 琪琪午夜伦伦电影福利片 | 国产精品1区 | 91偷拍精品一区二区三区 | 成人欧美一区二区 | 特一级毛片 | 草久久久 | 欧美久| 日韩在线精品 | 欧美日韩视频网站 | 精品欧美一区二区精品久久久 | 超碰人人爱 | 日韩亚洲欧美综合 | 91色站| 欧美成人一区二区三区 | 日日日日操 | 久久com| 国产在线精品一区二区 | 综合激情久久 | 亚洲午夜视频在线观看 | 成人av一区二区三区 | 一区二区三区四区电影视频在线观看 | 国产福利资源在线 | 亚洲一二三区精品 | 亚洲一区二区三区在线观看免费 | 午夜精品一区 | 中文字幕在线一区二区三区 | 四虎影院免费在线 | 日本精品视频在线观看 | 精品在线播放 | 亚洲一区二区三区在线视频 | 亚洲精品福利视频 | 成人欧美一区二区三区黑人孕妇 | 99婷婷| 久久躁日日躁aaaaxxxx | 亚洲免费在线 | 亚洲成人自拍 | 一区二区三区在线看 | 久久久综合网 | 欧美精品在线播放 |