編程同寫作,寫代碼只是在碼字
時 間:2016-10-12 08:53:29
作 者:Phodal Huang ID:21115 城市:上海
摘 要:真正的想法都在腦子里,而不在紙上或者IDE里。
正 文:
看到一篇文章《We Are Typists First, Programmers Second》,日期是2008年,好早的一篇文章。當現在打算以一個新人的身份重新進入編程領域,或許是受《重來》的影響,或者只是在重新思考——我們究竟應該如何去編程。
寫代碼只相當于寫字
編程這件事情實際上一點兒也不難,當我們只是在使用一個工具創造一些東西的時候,比如我們拿著電烙鐵、芯片、電線等去焊一個電路板的時候,我們學的是如何運用這些工具。雖然最后我們的電路板可以實現相同的功能,但是我們可以一眼看到差距所在。
換個貼切一點的比喻,比如燒菜做飯,對于一個優秀的廚師和一個像我這樣的門外漢而言,就算給我們相同的食材、廚具,一段時間后也許一份是誘人的美食,一份只能喂豬了——即使我模仿著廚師的步驟一步步地來,也許看上去會差不多,但是一吃便吃出差距了。
我們還做不好飯,還焊不好電路,還寫不好代碼,很大程度上并不是因為我們比別人笨,而只是別人比我們做了更多。有時候一種機緣巧遇的學習或者bug的出現,對于不同的人的編程人生都會有不一樣的影響(ps:說的好像是蝴蝶效應)。我們只是在使用工具,使用的好與壞,在某種程序上決定了我們寫出來的質量。
寫字便是如此,給我們同樣的紙和筆(ps:減少無關因素),不同的人寫出來的字的差距很大,寫得好的相比于寫得不好的 ,只是因為練習得更多。而編程難道不也是如此么,最后寫代碼這件事就和寫字一樣簡單了。
剛開始寫字的時候,我們需要去了解一個字的筆劃順序、字體結構,而這些因素相當于語法及其結構。熟悉了之后,寫代碼也和寫字一樣是簡簡單單的事。
學習編程只是在學造句
計算機語言同人類語言一樣,有時候我們也許會感慨一些計算機語言是多么地背離我們的世界,但是他們才是真正的計算機語言。
計算機語言是模仿人類的語言,從 if 到其他,而這些計算機語言又比人類語言簡單。故而一開始學習語言的時候我們只是在學習造句,用一句話來概括一句代碼的意思,或者可以稱之為函數、方法(method)。
于是我們開始組詞造句,以便最后能拼湊出一整篇文章。
編程是在寫作
代碼如詩,又或者代碼如散文?偟膩碚f,這是相對于英語而言,對于中文而言可不是如此。如果用一種所謂的中文語言寫出來的代碼,不能像中文詩一樣,那么它就算不上是一種真正的中文語言。
那些所謂的寫作邏輯對編程的影響
- 早期的代碼是以行數算的,文章是以字數算的
- 代碼是寫給人看的,文章也是寫給人看的
- 編程同寫作一樣,都由想法開始
- 代碼同文章一樣都可以堆砌出來(ps:如本文)
- 寫出好的文章不容易,需要反復琢磨,寫出好的代碼不也是如此么
- 構造一個類,好比是構造一個人物的性格特點,多一點不行,少一點又不全
- 代碼生成,和生成詩一樣,沒有情感,過于機械化
- 。。。
然而好的作家和一般的寫作者,區別總是很大,對同一個問題的思考程度也是不同的。從一個作者到一個作家的過程,是一個不斷寫作不斷積累的過程。而從一個普通的程序員到一個優秀的程序員也是如此,需要一個不斷編程的過程。
當我們開始真正去編程的時候,我們還會糾結于"僧推月下門"還是"僧敲月下門"的時候,當我們越來越熟練就容易決定究竟用哪一個。而這樣的“推敲”,無論在寫作中還是在編程中都是相似的過程。
寫作的過程真的就是一次探索之旅,而且它會貫穿人的一生。
編程只是在碼字
真正的想法都在腦子里,而不在紙上或者IDE里。
Access軟件網QQ交流群 (群號:150401543) Access源碼網店
常見問答:
技術分類:
源碼示例
- 【源碼QQ群號19834647...(12.17)
- Access報價管理(多級主子...(03.23)
- Access統計某個日期范圍的...(03.23)
- 【Access Dlookup...(03.10)
- 【Access選項卡加主子窗體...(02.22)
- 自行車專賣店進銷存管理系統(02.07)
- 【Access高效辦公】用In...(02.07)
- 【轉載】windows32位A...(01.25)
- 【Access高效辦公】本年累...(01.16)
- 【Access源碼示例】分隔數...(01.10)

學習心得
最新文章
- Access報價管理(多級主子窗體...(03.23)
- Access統計某個日期范圍的記錄...(03.23)
- 《Access快速開發基礎教程》免...(03.22)
- 【轉載】VBA獲取計算機網卡MAC...(03.21)
- 【Access列表框聯動示例】列表...(03.20)
- 《Access表實用教程》視頻課程(03.17)
- 信息系統簡易使用示例;Access...(03.16)
- Access日期字段只想顯示今天以...(03.16)
- 【轉載】VBA–早期和后期綁定聲明(03.14)
- 電腦無意中被強行安裝了金山毒霸導致...(03.13)