公司項目經理突然跑到我們幾個研發這里,跟我們說項目代碼要寫注釋。被他這么一說,我們一頭霧水,我就跟項目經理說,項目代碼里該寫的注釋都寫了呀,結果項目經理說:“我看了你們寫的代碼,好多地方都沒寫注釋,你們最好把注釋補全了!”,并且還說了一大堆不寫注釋會導致的后果,聽完,我們只能尷尬一笑,表示補就補一下吧!
項目經理之所以突然要我們補全項目代碼里面的注釋,我估計是老板聽到了某些風聲,怕我們公司某些程序員突然不干了,然后代碼又沒寫注釋,導致接手他項目的其他程序員看不懂他寫的代碼。所以,就讓項目經理專門去看了下我們寫的項目代碼,如果沒有寫注釋就讓我們補全。
我覺得老板的初心是沒錯的,但是我們的項目經理不是干軟件出身,所以,他對于我們寫的代碼里面沒有寫注釋是有誤解的。
他所謂的我們很多地方沒有寫注釋,那是因為我們只對大部分的字段、函數寫了注釋,具體到每段邏輯,如果不是特別繞的話,我們基本不會特別在每個函數體內的某個代碼段去寫注釋。所以,項目經理覺得我們應該在函數體內的邏輯里盡量都寫上注釋。
作為代碼老司機的我,直接跟項目經理說了這么一段話:“如果代碼不是特別繞的話,寫注釋的效果反而可能會影響未來看這段代碼的人的思考!并且,幾乎只有新手才會在函數體內頻繁寫注釋!”
說完這句話,項目經理表示我在瞎說,還要我給他解釋下我的邏輯。
我大概是這么告訴他的:“其實,只要在函數的頭部寫上注釋就行了,如果一個人實在看不懂某個函數里面的代碼,即使寫上了注釋,他依然還是看不懂,但是,如果他真看不懂某段代碼,寫上了注釋反而會影響這個人的判斷,因為,并不是所有程序員都能寫好注釋,大多是情況下在代碼段里面寫的注釋,起到的正面作用遠遠小于其起到的負面作用!”
其實,我的意思很簡單,我想表達兩點意思,第一個就是很多程序員并不會寫注釋,而一旦這個程序員注釋寫的不好,會導致后面看的人先入為主,影響其判斷。
同為程序員,我不知道大家跟我的感受是否一樣,那就是經常會被別人寫的注釋誤導,盡管是自己寫的注釋,也是這樣的。
所以,我寫代碼,基本上就只對字段名和函數名寫注釋,原因在于,很多字段起名使用拼音覺得Low,所以經常用翻譯軟件翻譯將中文翻譯成英文,但是,過段時間就不認識了,所以寫上注釋,方便快速知道其意思。
函數差不多也是這個考慮,像函數名、入參的參數名、返回值的名稱,寫上注釋一來是時間長了真不知道是什么意思,二來也能通過注釋快速知道其含義。
其實,就跟我們調用很多編程語言自帶的函數一樣,鼠標懸浮上去,就會有函數的具體作用以及每個函數入參和出參的具體含義。
但是,這種說法顯然沒有說服我們的項目經理,所以,我們只能找個時間去將代碼里面的注釋給補齊。
結語
后來我們項目經理私下跟我說,讓我們寫注釋只是因為老板收到了風聲,說我們部門有些人私下跟同事說不想干了,結果這件事情被老板知道了,所以老板才讓研發部門補全注釋,以防到時候出什么亂子,影響工作效率。
但是,我覺得即使是這樣,臨時讓人補全注釋,其實也未必能達到目的,因為只要有心之人,故意在注釋上動手腳,后面給公司帶來的麻煩更大。
您覺得呢?
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.