開啟神秘程式設計世界的大門
從 2000 年畢業,我做這行已經超過十二年了。最初接觸計算機程式,還是 DOS 下的 QBASIC ,那已經離現在有接近二十年了。最初,我只是會照貓畫虎,按照老師的程式抄個素數數列,或者列印個三角形什麼的。初步理解程式的結構和意義,要等到讀大學以後了。那個時候在老師的鼓勵下,自己買書學習 Delphi ,才開始慢慢了解一些程式語言的知識。能夠自己設計和開發出有點用途的程式,則要等到工作以後,在實戰中一邊做一邊學。
回頭看看,這條路竟然是意外的漫長。用了至少有七八年,而其中有好幾年,完全就是在很低階的知識層面上獨自摸索。
當然,對於很多天資聰明,又肯用功的同行,這個過程要短的多。就我身邊朋友的經歷,有不少人是僅僅靠大學四年的學習,就完成了從零基礎到出類拔萃的過程。
大概因為我特別的愚鈍,加上後來做過半年的培訓講師。感覺對那個徘徊的過程記憶特別深刻。有時候就想,能不能為我這樣完全沒有基礎的人,設計一些非常非常容易上手的基礎教程呢?
所以後來我嘗試寫過《Emacs 零基礎教程》、《Python 零基礎教程》等文章,在企業內部和網際網路上跟同行分享。但是總的來說,並不成功,其中之一的問題是,對於一個完全沒有基礎的學習者,有太多在老手看來已經天經地義的知識,需要學習和熟悉。要在一份教程裡解釋各種基礎知識,其實是一個非常龐大艱鉅的任務。回頭看過來,我自己都有點不可思議,這些問題,當初我也曾經遇到過?我如何弄懂它們的?用了多長時間?
舉個例子,在 Python 中文社群,我見到過的新手問題:
- 為什麼用 word 儲存的程式碼不能執行?
- 不明白文字的編碼和字串的編碼是什麼意思,有什麼關係?
- 如何在直譯器中執行程式碼檔案(或系統命令)?
- 為什麼程式碼檔案拿到別人的機器上不能執行?
蔡學鏞老師的《程式設計ING》就是這樣一本書,它耐心的解答了以上的這些基礎問題,以及,傳授了那些真正的程式設計需要的知識。如:
- 什麼是程式語言?
- 什麼是變數?
- 變數的型別是什麼?
- 基礎的程式邏輯——順序、選擇、迴圈等
- 語境(即 Context,常見的譯法是“上下文”,但是我認為“語境”這個譯法要好的多)
- 函式
- 模組
書裡用了一種很不常見的程式語言,REBOL——這大概會嚇跑不少讀者。《程式設計師》的老讀者應該有印象,蔡學鏞老師幾年前就開始發表一系列的文章,介紹這門語言。今天這本書,可以說是蔡老師的厚積薄發之作。在書中,使用這樣一門“小”語言作為教學工,進一步降低了學習門檻。
比起最初我用來列印三角形的那個還需要寫行號的 Basic ,REBOL 倒也不失是一個實用的小工具,例如書中 43 頁,就有一個用十幾行 REBOL 程式碼寫成的十六進位制閱讀器。可不是每一本入門書,都能在前50頁教到這個程度。
說到這個,這本書有個很了不起的地方。它每一頁,都有一半以上的內容是圖解——好吧,這大概又要嚇跑不少追求“文字量”的朋友。每一個知識點,都彩色的圖例非常認真清楚的解釋出來。相信常做幻燈的朋友都知道,好的圖示,工作量比同樣篇幅的文字更大。
正是依靠這樣不厭其煩的詳細解說,我相信這本書真的可以在三百多頁的篇幅內,教會讀者程式設計的基礎知識,讓讀者可以用 REBOL 寫出簡單可用的東西,並且也具備進一步學習其它語言的能力。這可是三百多個詳細的圖解,等於是有一位老師手把手的教學生讀書寫字。我這十幾年的學習和工作生涯中,讀過不少專業教材,有些寫的深入淺出,有些寫的豐富翔實。但是能有耐心把所有初學入門的知識一點一點掰碎了教給讀者的,確實僅此一家,別無分號。
在這份耐心面前,這本書可能給讀這的顧慮,例如 REBOL 語言是不是太冷門,學了以後沒有機會用什麼的,真的不重要了。我們這代人,還有幾個用當年的小海龜(LOGO)工作?還有多少人在用那個需要寫行號的 BASIC ?我們都成為了所謂的“業內人士”,但是不應該忘記當初起步的過程。感謝有作者還記得當初的不容易,並且致力於幫今天的學習者,找到那種簡單而有樂趣的學習過程。
零基礎的程式設計學習者、想要教這樣的學習者寫程式的朋友,想要了解一下蔡老師多次推薦的 REBOL 語言到底有多神奇的朋友,值得閱讀一下這本書,這是一本另類的,有趣的程式設計教材。它解答了我的一個疑問:
我們到底是怎麼學會寫程式的?那個過程,有沒有可能簡單一點?簡單到即使不是理工、宅男,僅僅是想學習一下“寫程式”,體驗一下這個樂趣,解決一些問題的人,也能學會?
這本書給了我們肯定的答案。
回頭看看,這條路竟然是意外的漫長。用了至少有七八年,而其中有好幾年,完全就是在很低階的知識層面上獨自摸索。
當然,對於很多天資聰明,又肯用功的同行,這個過程要短的多。就我身邊朋友的經歷,有不少人是僅僅靠大學四年的學習,就完成了從零基礎到出類拔萃的過程。
大概因為我特別的愚鈍,加上後來做過半年的培訓講師。感覺對那個徘徊的過程記憶特別深刻。有時候就想,能不能為我這樣完全沒有基礎的人,設計一些非常非常容易上手的基礎教程呢?
所以後來我嘗試寫過《Emacs 零基礎教程》、《Python 零基礎教程》等文章,在企業內部和網際網路上跟同行分享。但是總的來說,並不成功,其中之一的問題是,對於一個完全沒有基礎的學習者,有太多在老手看來已經天經地義的知識,需要學習和熟悉。要在一份教程裡解釋各種基礎知識,其實是一個非常龐大艱鉅的任務。回頭看過來,我自己都有點不可思議,這些問題,當初我也曾經遇到過?我如何弄懂它們的?用了多長時間?
舉個例子,在 Python 中文社群,我見到過的新手問題:
- 為什麼用 word 儲存的程式碼不能執行?
- 不明白文字的編碼和字串的編碼是什麼意思,有什麼關係?
- 如何在直譯器中執行程式碼檔案(或系統命令)?
- 為什麼程式碼檔案拿到別人的機器上不能執行?
蔡學鏞老師的《程式設計ING》就是這樣一本書,它耐心的解答了以上的這些基礎問題,以及,傳授了那些真正的程式設計需要的知識。如:
- 什麼是程式語言?
- 什麼是變數?
- 變數的型別是什麼?
- 基礎的程式邏輯——順序、選擇、迴圈等
- 語境(即 Context,常見的譯法是“上下文”,但是我認為“語境”這個譯法要好的多)
- 函式
- 模組
書裡用了一種很不常見的程式語言,REBOL——這大概會嚇跑不少讀者。《程式設計師》的老讀者應該有印象,蔡學鏞老師幾年前就開始發表一系列的文章,介紹這門語言。今天這本書,可以說是蔡老師的厚積薄發之作。在書中,使用這樣一門“小”語言作為教學工,進一步降低了學習門檻。
比起最初我用來列印三角形的那個還需要寫行號的 Basic ,REBOL 倒也不失是一個實用的小工具,例如書中 43 頁,就有一個用十幾行 REBOL 程式碼寫成的十六進位制閱讀器。可不是每一本入門書,都能在前50頁教到這個程度。
說到這個,這本書有個很了不起的地方。它每一頁,都有一半以上的內容是圖解——好吧,這大概又要嚇跑不少追求“文字量”的朋友。每一個知識點,都彩色的圖例非常認真清楚的解釋出來。相信常做幻燈的朋友都知道,好的圖示,工作量比同樣篇幅的文字更大。
正是依靠這樣不厭其煩的詳細解說,我相信這本書真的可以在三百多頁的篇幅內,教會讀者程式設計的基礎知識,讓讀者可以用 REBOL 寫出簡單可用的東西,並且也具備進一步學習其它語言的能力。這可是三百多個詳細的圖解,等於是有一位老師手把手的教學生讀書寫字。我這十幾年的學習和工作生涯中,讀過不少專業教材,有些寫的深入淺出,有些寫的豐富翔實。但是能有耐心把所有初學入門的知識一點一點掰碎了教給讀者的,確實僅此一家,別無分號。
在這份耐心面前,這本書可能給讀這的顧慮,例如 REBOL 語言是不是太冷門,學了以後沒有機會用什麼的,真的不重要了。我們這代人,還有幾個用當年的小海龜(LOGO)工作?還有多少人在用那個需要寫行號的 BASIC ?我們都成為了所謂的“業內人士”,但是不應該忘記當初起步的過程。感謝有作者還記得當初的不容易,並且致力於幫今天的學習者,找到那種簡單而有樂趣的學習過程。
零基礎的程式設計學習者、想要教這樣的學習者寫程式的朋友,想要了解一下蔡老師多次推薦的 REBOL 語言到底有多神奇的朋友,值得閱讀一下這本書,這是一本另類的,有趣的程式設計教材。它解答了我的一個疑問:
我們到底是怎麼學會寫程式的?那個過程,有沒有可能簡單一點?簡單到即使不是理工、宅男,僅僅是想學習一下“寫程式”,體驗一下這個樂趣,解決一些問題的人,也能學會?
這本書給了我們肯定的答案。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13164110/viewspace-742054/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python,幫你開啟通往新世界的大門!Python
- Python入門知識彙總,程式設計小白的福利,為你開啟Python大門Python程式設計
- 世界五大計算機程式設計師計算機程式設計師
- jQuery,開啟無所不能的Web設計新世界jQueryWeb
- 開啟我的程式設計之路程式設計
- 揭開華為雲CodeArts TestPlan啟發式測試設計神秘面紗!
- 以“小”見“大” 開啟“摺疊”的世界
- 瘋狂的程式設計世界程式設計
- ASM位元組碼操作類庫(開啟java語言世界通往位元組碼世界的大門)ASMJava
- ASM位元組碼操作類庫:開啟java語言世界通往位元組碼世界的大門ASMJava
- 開啟java語言世界通往位元組碼世界的大門——ASM位元組碼操作類庫JavaASM
- 揭秘計算機奇蹟:探索I/O裝置的神秘世界!計算機
- 5個良心好用的Windows神級軟體,讓你開啟新世界的大門Windows
- 程式設計世界的熵增原理程式設計熵
- 程式設計師世界的縮寫程式設計師
- 用程式碼描繪出分子世界的壯闊星空,化學家和程式設計師開啟新的征程程式設計師
- Docker - 通往新世界的大門Docker
- 叩開Apple設計獎項大門的7條設計建議APP
- CSS 例項之開啟大門CSS
- 開啟windows批處理大門Windows
- Microsoft 開啟了PHP 大門(轉)ROSPHP
- 程式設計師的世界盃觀戰指南程式設計師
- 程式設計師十大熱門flag,有你的嗎?程式設計師
- 世界級大牛對程式設計師超實用的程式設計箴言(上)程式設計師箴言
- 世界級大牛對程式設計師超實用的程式設計箴言(下)程式設計師箴言
- Qt程式設計之悲慘世界QT程式設計
- IDC銷售如何開啟雲端計算商機大門
- 程式設計師來做設計,世界會怎樣?程式設計師
- 程式設計和網路程式設計入門程式設計
- 1024程式設計師節:向改變世界的程式設計師致敬程式設計師
- 1024程式設計師節,向改變世界的程式設計師致敬程式設計師
- 入門程式碼程式設計程式設計
- 學習了風變程式設計後,Python為我敞開了大門程式設計Python
- 嫁給改變世界的男人:程式設計師女友大調研(附下載)程式設計師
- 1024程式設計師節,向用程式碼改變世界的程式設計師致敬!程式設計師
- 入門級的程式設計師程式設計師
- Ruby中的設計模式——《松本行弘的程式世界》設計模式
- 程式設計入門——壘積木學程式設計程式設計