程序員也要多讀些專業之外的書

        作爲程序員,你可能經常看一些編程類的書,這樣很好,可以提升自己的專業知識。不過,抽空看一些其他領域的書籍或涉獵一些專業之外的知識,或許能獲得不一樣的思維方式。

       前段時間,我讀了丹尼爾·卡尼曼的《思考快與慢》,心理學方面的書。他認爲,人的大腦有快與慢兩種思維方式。一種是無意識的“系統1”,不需要深入的思考,它能依賴人的記憶、經驗等迅速做出反應;一種是有意識的“系統2”,它通過調動注意力來分析和解決問題。人們往往喜歡並習慣於第一種方式,因爲它不需要我們投入精力去思考,並能快速的做出反應。舉個例子,對於一個開了十幾年車的老司機來說,在熟悉的路上開車回家,在路上走個神,偶然醒過來,發現到家了。這就是在“系統1”的思維方式下完成的開車,它是憑藉記憶、經驗完成的,不需要過多的思考。但如果是開在非常生僻的路上,他會時刻考慮路該怎麼走,會不會走岔路,全程下來,很疲勞。這就是在利用“系統2”,它雖然耗費腦力,但往往能得出正確的結論。

       後來,我在寫程序的UT測試用例時,看了看之前寫的測試用例,讀起來很吃力,每個case都很耗費腦力,讀完一篇就感覺筋疲力盡了。於是我開始思考,能不能把測試用例描述的更簡單、直接,不需要過多思考就可以表述出需要測試的內容。於是想到了這兩種思維方式,意識到應該使用“系統1”的思維方式來描述測試用例,讓它更直觀,更好理解。比如:把描述“輸入的字符長度達到50後,文本框將不可以再輸入值,且只能輸入0~9的數字”改爲“最大輸入字符:50,輸入格式:數字”;把描述“部門經理招聘編輯窗體關閉”改爲“當前窗體關閉”等等,每一個信息點都需要耗費腦力去思考,所以一定要減少信息點,描述測試問題,不是越清楚越細緻就越好,而是能直觀的表達需要測試的功能點,用這種方式,我很快的完成了測試用例的編寫,領導看後很滿意,還將它作了範本。

        做軟件界面的設計也可以借鑑這種思考模式,不知道大家有沒有注意到,現在的軟件,特別是手機軟件,界面中很少有冗長的文字,取而代之的是一些有意義的圖標、圖片,這樣用戶使用過程中,感覺很輕鬆,不僅外觀漂亮,使用起來也更簡單,不需要太多思考(利用“系統1”就能完成)。大大提高了用戶體驗。

       同樣的道理,我們在寫代碼時,是不是也可以借鑑這種思維方式,考慮怎樣使自己的代碼有更好的可讀性、藝術感,怎樣更有效率的完成代碼,且便於維護

       所以說,多讀一些專業之外的書,在專業領域往往也能頗有收穫。不僅如此,還可以拓寬自己的知識面,豐富自己的生活,也改變一下別人眼中,程序員的呆板形象。w_0005.gif

      廣讀書,讀好書,讓自己的思考既有深度又有廣度。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章