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

程序猿與注釋的相愛相殺

原創
移動開發
程序猿作為地球上最為神奇的物種之一,干過不少驚天地泣鬼神的雄圖大業,同樣給人們留下了不少茶余飯后談論的梗。在普通人們眼中,程序猿是神秘的,是不修邊幅的,是沒日沒夜加班的工作狂;但在程序猿眼中,自己是帥氣的,拯救世界的,一枝梨花壓海棠的科技先驅。

【51CTO.com原創稿件】程序猿作為地球上最為神奇的物種之一,干過不少驚天地泣鬼神的雄圖大業,同樣給人們留下了不少茶余飯后談論的梗。在普通人們眼中,程序猿是神秘的,是不修邊幅的,是沒日沒夜加班的工作狂;但在程序猿眼中,自己是帥氣的,拯救世界的,一枝梨花壓海棠的科技先驅。

[[197153]]

普通人眼中的程序猿

程序猿眼中的程序猿

程序猿眼中的程序猿

程序猿的豐功偉績,最直接的體現就是像藝術品一樣的代碼,行云流水、一氣呵成。但不是所有的程序猿都能看懂別人寫的代碼,就像不是所有的人都會欣賞藝術品一樣。畢竟代碼是用于業務生產,為了讓別人能夠更好理解自己的作品,也為了讓自己能夠更深刻的記住創作藝術品的過程,程序猿對自己的作品進行了加工——注釋

注釋,顧名思義,就是對代碼進行釋義。注釋不是寫給機器的語言,不參與到代碼的編譯、連接、工作中去,而是寫給人看的內容。眾所周知,代碼,是讓計算機按照人的預想進行工作,注釋并沒有讓代碼運行得更加快,那么注釋到底扮演者什么樣的角色呢?程序猿和注釋之間又有怎樣的故事呢?

注釋是什么?

注釋就是對代碼的解釋和說明,其目的是讓人們能夠更加輕松地了解代碼。注釋是編寫程序時,寫程序的人給一個語句、程序段、函數等的解釋或提示,能提高程序代碼的可讀性

為什么寫注釋?

1.好記性不如爛筆頭

用于業務生產的程序,通常都不是寥寥幾語了事,而是大篇大篇的代碼,更有甚者,代碼行數千萬級別。雖說現在編程語言越來越高級、方便,對程序員越來越友好,大大縮小了代碼行數,但功能全面的、性能穩定的代碼依然有不小的篇幅。程序員在寫代碼的時候,語法規則雖然不難、不多,但是參數、函數、變量等等自定義的元素依然有很大的變化。代碼再有規則,但畢竟不是人類語言,不能一眼看明,再加上篇幅巨大,難免會有寫了后面往前面的尷尬處境。再加上前后代碼寫的時間有差異,程序員想要記住自己所寫的所有函數、變量、參數,也是很困難的。與其花時間記住這些函數、參數,不如一行注釋來得更快。來看看51CTO社群開發者是怎么說的吧:

PHP-小星星-廣州:曾經,一個東西,寫的時候思路清晰,然后半年后愣是沒看懂。

PHP-Coeus-安徽:別說半年了,我上周寫的一個方法,現在都已經不知道上周開了什么腦洞。

寫代碼要和寫注釋同步進行,對作品進行闡述,這樣不但可以預防寫后忘前的尷尬處境,還能讓自己的創造思路更加清晰。

古人云:好記性不如爛筆頭。

2.我為人人,人人為我

書寫篇幅巨大的代碼是一個宏偉的工程,這樣的工程通常不是一己之力能夠完成,眾人拾柴火炎高,眾人劃槳開大船。談及到協同工作,首先要一個共同的標準,艄公多了打翻船的道理大家都明白。51CTO開發者社群Web-白楊-鄭州認為:一般立項的時候有規范文檔,對象、函數聲明一系列都要求一致。

但每一個程序員對藝術的理解不一樣,創造藝術品的方式和過程也會大相徑庭。但大家都是一起干活,工期到了拿不出產品難免又要被工頭教訓。

程序員:“怎能讓自己的藝術屈服于生活,簡直是侮辱。”

工頭:“好好好,聽你的,只要你不寫 :(){ :|:& };: (fork炸彈)。但是你總得讓你的小伙伴能和你一起干活吧,你的小伙伴得知道你干了啥是吧。”

程序員:“那我寫好注釋,他們就能領悟到我的藝術了吧。”

工頭:“小伙子不錯,覺悟很高,中午盒飯加雞腿。”

“注釋寫的多少、寫的是否詳細,也影響了使用、修改你代碼的人員的門檻。”51CTO開發者社群PHP-Coeus-安徽的這個看法被很多開發者認同。為了更好的協同開發,和工作的小伙伴能夠一起愉快的玩耍,寫一個清楚明白的注釋是非常重要的,相愛沒有那么容易,每個程序員有他的怪癖。如果每一個參與到項目開發中的程序員都能將代碼用心寫好,這無疑是協同開發一個利好因素。而且,你的注釋也會讓對你代碼頂禮膜拜的初學者獲益匪淺。

古人亦云:我為人人,人人為我。

3.前人栽樹,后人乘涼

維護過別人代碼的程序員,都應該經歷過一種切膚之痛——因為沒有注釋或者注釋不清楚而導致完全無法理解這代碼。創作者的藝術品,接盤俠的毀滅日。

[[197154]]
創作者眼中的代碼

接盤俠眼中的代碼

接盤俠眼中的代碼

其實這并不夸張,因為編程語言的特點,每位藝術大師都有足夠的發揮空間,但天馬行空的想象確實會讓后人難以琢磨。簡直就是前人栽樹,后人吃土的節奏。

誰也不想看到這樣的代碼,單單是要看懂就廢了九牛二虎之力,分分鐘吐血的節奏啊。 

程序員:“我去,這段代碼什么意思?這個調用是想干嘛?哪里又冒出來這么個玩意兒?老板,我想死。”

工頭:“想死都不行,你知道該怎么寫代碼了么?”

程序員:“我知道了,我一定要寫好注釋,為以后的工作鋪平道路。”

工頭:“嗯嗯,小伙子很有遠見,看來以后是要接我的班了。”

程序員:“我接了你的位置,那你呢?”

工頭:“我去做產品經理。”

程序員:“。。。。。。。。。。。。。。。。”

51CTO社群開發者Java-小源-珠海認為:自己寫的方法會給點注釋,不然到時別人要用時還需要費時間去理解。

寫好注釋,會為業務的發展和程序的迭代提供不少便利,誰都不想當接盤俠,那就誰也別做隔壁老王。

古人還云:前人栽樹,后人乘涼。

當前IT行業的發展趨勢,系統的迭代、程序的重構、工作的交接、對新進人員的培訓等事情越來越多,這些事情無一例外都會把已經寫過的代碼重新或者重復閱讀,如果在初始編寫代碼時,就做到完整、清晰明了的代碼注釋,對后續工作會有巨大的幫助。不僅提高工作效率,還能加固小伙伴之間的友誼。事實上,就算只是自己看自己的代碼,如果有注釋,也能加深印象,縮短代碼查找時間。因此,任何開發人員,都應該養成良好的代碼注釋習慣。

如何寫出漂亮的注釋

同代碼一樣,漂亮、有用的注釋會給藝術品錦上添花。要寫出好的注釋,一樣需要技巧。51CTO開發者社群小伙伴給出很多建議。

  • 首先,注釋是給人看的,要能讓人一眼明白其中的含義,不能拐彎抹角。

PHP-Coeus-安徽:一般按照規范來,看變量名,基本上都會知道方法是做什么的,變量是什么,需要注釋的內容就是,為什么我要在這里調用另一個方法,為什么我要修改這個class狀態值。

后端接口開發-劉聲杰-成都:我的注釋就是:首先一定要寫明白這個是做什么的,而且是什么時候寫的,然后如果刪除了,一定要添加一個刪除標簽說明,尤其對于返回值,一定要說明每種情況,對于已經有替代方法的,一定要表明優秀用,每個參數的類型是什么等等。

  • 其次,注釋可以進行一個分類。

Web-白楊-鄭州:我習慣點亮以后,開頭注釋一個目錄,然后分ABC種類標色,A類是加進去肯定跑不動,B類是加進去能跑一半 ,C類是我都不知道的鬼代碼。。。。

這樣一個分類,可以幫助代碼維護者更好的閱讀代碼。

  • 第三,注釋也要恰到好處。

PHP-Coeus-安徽:之前我帶一個實習生和他說 ,你要有注釋的習慣,然后看他的代碼: $a = $b+$c;  // 做b、c加法。

這就看得我尷尬癌犯了,這強迫癥晚期了吧。要做合適的注釋,而不是所有的代碼都進行了注釋,這增加了工作量,卻也沒有對代碼維護者有任何幫助。

  • 第四,注釋可以保存代碼痕跡。

程序員在修改了代碼以后,未測試之前,代碼的質量是無法得到有保證的,有可能會被改得更糟糕,這時可能需要恢復到之前的代碼,如果你把之前的舊代碼刪除了的話,工作會變得復雜起來。

后端接口開發-劉聲杰-成都:重構部分代碼的時候,有時會保留部分之前的代碼,注釋掉,直到運行穩定以后,才慢慢的將其刪除掉,如果以后需要恢復,就看SVN記錄。

現在讓我們來看看漂亮的注釋到底什么樣子:

圖1

Java-勇波-北京

圖2

PHP-coeus-安徽

【寫在最后】

羅馬不是一天建成的,寫注釋也是一個循序漸進的學習過程。寫注釋和寫代碼一樣,需要多加練習,掌握一套自己熟練的注釋方法。同時,在參考大神的代碼時,也可以借鑒大神寫注釋的方法,從而提升自己寫注釋的功力。

在協同工作中,更是需要和項目組的成員多溝通,練習一套通俗易懂,大家都能看明白的注釋。注釋也是代碼中不可缺少的一環,各位一定不能掉以輕心,能夠寫出漂亮的注釋,也是一位程序員優良素質的體現。

如有任何疑問,歡迎留言,也可以加5CTO開發者QQ群交流,群號542270018。

51CTO開發者交流群③群 542270018

【51CTO原創稿件,合作站點轉載請注明原文作者和出處為51CTO.com】

責任編輯:何星 來源: 51CTO
相關推薦

2018-05-03 21:35:02

2018-10-30 10:58:22

藍牙5WiFi無線網絡

2017-12-12 16:49:32

技術產品經理代碼

2015-08-24 09:51:48

2021-01-10 21:19:12

DevOps敏捷方法開發

2024-07-01 13:58:07

2017-10-23 13:15:51

2021-08-26 05:35:20

黑客網絡安全網絡攻擊

2017-02-09 16:26:08

超融合刀片服務器

2020-05-21 11:23:08

微軟LinuxWindows

2021-03-25 09:41:26

CIOCISO疫情

2018-06-04 12:01:35

微軟GitHut開源

2015-05-28 17:21:21

去IOE云智慧

2019-08-30 08:45:40

人工智能AI開發者

2022-06-27 09:54:38

編程語言JavaC++

2020-03-03 15:11:04

開源技術 軟件

2020-12-19 10:46:20

黑客網絡安全網絡攻擊

2020-03-08 16:47:59

微信蘋果騰訊

2015-01-28 09:46:23

PHPNode.js

2022-07-08 09:41:20

遺留系統服務拆分
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区在线观看 | 欧美视频免费在线 | 欧美成人aaa级毛片在线视频 | 免费精品国产 | 亚洲精品一区二区三区中文字幕 | 偷拍自拍网 | 亚洲九色 | 国产中文在线观看 | 国产乱码精品一区二区三区av | 亚洲一二三区免费 | 国产在线对白 | 免费看一区二区三区 | 午夜天堂精品久久久久 | 在线欧美小视频 | 欧美一级免费看 | 欧美性大战久久久久久久蜜臀 | 日韩免费在线观看视频 | 999久久久 | 国产精品美女久久久久aⅴ国产馆 | 91福利网 | 久久久精品 | 日韩三级精品 | 九九精品久久久 | 久久一本| 日韩精品区 | 四虎在线观看 | 中文字幕蜜臀av | 日本不卡一区二区三区在线观看 | 国产四虎 | 天天精品综合 | 激情av免费看 | 欧美网站一区二区 | 99在线观看视频 | 亚洲精品国产一区 | 欧美视频在线播放 | 欧美日韩中文国产一区发布 | 91偷拍精品一区二区三区 | 色婷婷综合成人av | 在线中文字幕视频 | 色网站在线免费观看 | 在线视频中文字幕 |