編程同寫作,寫代碼只是在碼字

人文精神  >>>  技術的天空 溫和的思緒

  看到一篇文章《We Are Typists First, Programmers Second》,日期是 2008 年,好早的一篇文章。當現在打算以一個新人的身份重新進入編程領域的時候,或許是受《重來》的影響,或者是在重新思考——我們應該如何如何去編程。

  寫代碼只相當于寫字

?這只是一篇軟文

  編程這點東西實際上一點兒也不難,當我們只是在用一個工具創造一些作品的時候,如同我們拿著電烙鐵、芯片、電線等去焊一個電路板的時候,我們學的是如何去運用這些工具。最后雖然我們的電路板可以實現相同的功能,但是我們可以一眼看到差距。

  換個好一點的比喻,如燒菜做飯,對于一個好的廚師和一個像我之類的門外漢,給我們相同的材料、工具,一段時間后便是一份是給人吃的,一份給豬吃,豬都不吃——即使我模仿著廚師的步驟一步步地來,即使最后看上去差不多,但是一吃便吃出差距了。

  我們還做不好飯,還焊不好電路,還寫不好代碼,很大一部分程度上并不是因為我們比別人笨,而只是別人比我們做了更多。有時候一種機緣巧遇的學習或者 bug 的出現,對于不同的人的編程人生都會有不一樣的影響(ps:說的好像是蝴蝶效應)。我們只是在使用工具,使用的好與壞,在某種程序上決定了我們寫出來的質量。

  寫字便是如此,給我們同樣的紙和筆(ps:減少無關因素),不同的人寫出來的字的差距很大,寫得好的相比于寫得不好的 ,只是因為練習得更多。而編程難道不也是如此么,最后寫代碼這點事就和寫字一樣簡單了。

  剛開始寫字的時候,我們需要去了解一個字的筆劃順序、字體結構,而這些因素相當于語法及其結構。熟悉了之后,寫代碼也和寫字一樣是簡簡單單的事。

  學習編程只是在學造句

?多么無聊的一個標題

  計算機語言同人類語言一樣,有時候我們就會感慨一些計算機語言是多么地背離我們的世界,但是他們才是真正地計算機語言。

  計算機語言是模仿人類的語言,從 if 到其他,而這些計算機語言又比人類語言簡單。故而一開始學習語言的時候我們只是在學習造句,一句話來概括一句代碼的意思,或者可以稱之為函數、方法(method)。

  于是我們開始寫一句句話,以便寫出一篇文章。

  編程是在寫作

?編程是在寫作,這是一個怎樣的玩笑?這是在諷刺那些寫不好代碼,又不好文章的么

  代碼如詩,又或者代碼如散文。總的來說這是相對于英語來說,對于中文來說可不是如此。如果用一種所謂的中文語言寫出來的代碼,不能像中國詩一樣,那么它就算不上是一種真正的中文語言。

  那些所謂的寫作邏輯對于編程的影響

  • 早期的代碼是以行數算的,文章是以字數算的
  • 代碼是寫給人看的,文章也是寫給人看的
  • 編程同寫作一樣,由想法開始
  • 代碼同文章一樣都可以堆砌出來(ps:如本文)
  • 寫出好的文章不容易,需要反復琢磨,寫出好的代碼不也是如此么
  • 構造一個類,好比是構造一個人類的性格,多一點不行,少一點又不全
  • 代碼生成,和生成詩一樣,沒有情感,過于機械
  • 。。。
然而好的作家和一般的寫作的人,區別總是很大,對于一個問題的思考程度也是不同的。而從一個作者要到一個作家,需要一個不斷寫作的過程。從一個普通的程序員到一個優秀的程序員也是如此,需要一個不斷編程的過程。

  當我們開始真正的去編程的時候,我們還會糾結于"僧推月下門"還是"僧敲月下門"的時候,當我們越來越熟練就容易去決定用哪一個。而對于這些的推敲在寫作,還是在編程中都是相似的過程。

寫作的過程真的就是一次探索之旅,而且它會貫穿人的一生。

  編程只是在碼字

  編程只是在碼字,難道不是么?

真正的想法都在腦子里,而不在于紙上,或者 IDE 里。


www.phodal.com 2014-07-13 19:56:21

[新一篇] 怎樣快速學會一門技術

[舊一篇] 程序員應該知道的13個設計技巧
回頂部
寫評論


評論集


暫無評論。

稱謂:

内容:

驗證:


返回列表