国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

代碼之髓讀后感——如何高效的學習語言

ivyzhang / 689人閱讀

摘要:代碼之髓讀后感如何高效的學習語言技術讀后感王垠如何掌握程序語言代碼之髓這本書里提出了三種學習語言的方法如何高效的學習語言在比較中學習在歷史中學習在實踐中學習在比較中學習通過比較多種語言,總結出某種語言的獨有特點,以及多種語言的共有特點。

title: 代碼之髓讀后感——如何高效的學習語言
date: 2017-07-08 17:17:00
categories: 技術
tags: 讀后感

王垠:如何掌握程序語言

《代碼之髓》這本書里提出了三種學習語言的方法—— 如何高效的學習語言?

在比較中學習

在歷史中學習

在實踐中學習

在比較中學習

通過比較多種語言,總結出某種語言的獨有特點,以及多種語言的共有特點。

借用王垠的一些話——

重視語言特性,而不是語言。
何一種“語言”,都是各種“語言特性”的組合。
每一種語言里面必然有一套“通用”的特性。比如變量,函數,整數和浮點數運算,等等。這些是每個通用程序語言里面都必須有的,一個都不能少。你只要通過“某種語言”學會了這些特性,掌握這些特性的根本概念,就能隨時把這些知識應用到任何其它語言。
掌握了通用的語言特性,剩下的就只剩某些語言“特有”的特性了。研究語言的人都知道,要設計出新的,好的,無害的特性,是非常困難的。所以一般說來,一種好的語言,它所特有的新特性,終究不會超過一兩種。如果有個語言號稱自己有超過 5 種新特性,那你就得小心了,因為它們帶來的和可能不是優勢,而是災難!

各種語言之中,都有著共性,這是基本,而個性只是部分點。

在比較中學習,可以幫助我們更清楚地意識到:

哪些點是共性——就是上面王垠所謂的“語言特性”,因為這才是語言的基本。掌握了這些共性,對于我們的語言學習有著極大的幫助。這通常確定著一門語言的基本架構方式,大致的代碼雛形,以及基本流程。這會告訴我們如何去站立,如何去行走。

哪些點是個性——這個是需要我們深入使用時需要考慮的點。因為一般這些東西,都是一些在當前特定的條件下的,“如此做更為方便”的方法。有時候這些東西可能不是必要的考量,但是掌握他們,對于此門語言使用往往會起到提升整體質量的作用。甚至促使我們對于解決適當的問題有著更為靈活多選的方式。這會告訴我們如何在現在的路上奔跑,跳躍。因為這時候更加關注了這條路上的細節,哪里有坑,哪里有捷徑...

因為掌握了語言特性的人都知道,自己需要的特性,在任何語言里面一定有對應的表達方式。

借用在當下的語境中,重視在對比中學習,體會到更多的語言特性,會幫助我們對于語言的學習變得更加有一種直觀的感受。我們的思維中,解決問題變得自然而然。編程就是把思維映射到機器中的途徑而已。我們已經知道什么樣的想法可以用怎樣的工具來實現,那實現想法也不就是一段段思路的拼接的過程么?

我們有時會發現,編程其實并不難,似乎就是需要了解下這門語言中有著哪些工具可供我們利用,我們需要做的就是熟悉這樣一套系統,一臺大型設備的各種功能。但是我們最后會發現,也只有那些其他工具也具有的功能,才是我們最起碼要知道的。那些高精尖的技巧,也不過是在特殊環境下的應對方式。

感覺學起來好像很容易,但是實際上我們在學習中總是會迷失在各種細節中,最典型的就是類似于C中關于輸出的格式的翻炒——

舉個夸張點的例子。我發現很多編程培訓班和野雞大學的編程入門課,往往一來就教學生如何使用 printf 打印“Hello World!”,進而要他們記憶 printf 的各種“格式字符”的意義,要他們實現各種復雜格式的打印輸出,甚至要求打印到文本文件里,然后再讀出來……

對于掌握編程的核心概念來說,這些其實都是次要的。

總而言之,通過對比學習,你會更容易發現真正的語言特性究竟是什么。學習編程到底要學習什么。

在歷史中學習

通過追溯語言的發展歷史,了解語言是如何產生,變化,消失的,探尋語言發展演變的軌跡。

有時候,我們在學習中,對于一些功能的學習,往往會不明所以,這其實是因為,對于這種功能,你自己從內在其實并沒有覺得理所當然,就像是為什么要有類這一類的問題其實潛在的就在你的心頭縈繞著,這使得你的學習,會變得茫然,就像我們最初學習線性代數,上來就整一堆定義,先把你整暈,再來一堆定理,往往不明所以,直接就迷失了,到頭來腦袋空空,真正的實際應用中,什么也變不出來。所以我到現在對于線性代數還是充滿了敬畏。

在歷史中學習,能幫助我們更加清晰地了解那些被掩埋的細節。回看語言設計者為了解決何種問題而創造出這樣一種語言,閱讀其發展變遷的歷史,那些功能的緣由就會變得清晰,你也就會更加認同其中所蘊含的現實意義。

而從歷史中學習,也是有助于我們更容易了解到語言的特性,那些非特性的部分為什么被創造出來,是為了解決一種什么樣的具體問題。這些都有助于加深我們對于語言的理解。

在實踐中學習

親自進行程序設計,邊實踐邊思考如何編程,才能深入了解設計者的意圖,同時也能發現自己原先理解的不到位之處。

這是這行的至上真理。

三種學習的方式,實際上是為了滿足我們學習語言的三種情緒:希望快速掌握的迫切,對于未知事物的求真以及對于自我認知的測驗

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/67242.html

相關文章

  • 兩篇文章后感, 關于數據庫, 關于 MVC, 也關于 React

    摘要:兩篇文章今天看了兩篇文章我覺得對我的影響會很大當然都是相關的一篇是在大會上的演講有視頻也有文字版關于數據庫另一篇是關于的文章從上看到的關于架構來源前面一篇是在的文檔上看到的這文檔上有不少我關心的技術的作者最近在上 兩篇文章 今天看了兩篇文章, 我覺得對我的影響會很大, 當然, 都是 React 相關的: 一篇是 Martin Kleppmann 在 Strangeloop 2014...

    BenCHou 評論0 收藏0
  • 《php之道》讀后總結 php學習綱要

    摘要:日期和時間使用類完成讀取設置比較和計算日期與時間。單元測試單元測試是從編寫開始,貫穿于整個開發周期的一種用于保證函數類和方法的行為與預期一致的編程方法。是應用的單元測試框架的業界標準,其他幾個可選框架是行為驅動開發行為驅動開發有兩種方式和。 《php之道》閱讀地址:http://wulijun.github.io/php-the-right-way/#code_style_guide ...

    gitmilk 評論0 收藏0
  • 保姆級教程HTML兩萬字筆記大總結【建議收藏】(上篇)

    摘要:標簽不區分大小寫,但推薦小寫。標簽可以嵌套,但不能交叉嵌套。標簽也稱為元素。比如行內標簽亦可成行內元素。 ??HTML必備知識詳解?? 第一部分:HTML框架簡介...

    paulli3 評論0 收藏0
  • 《前端架構設計》讀后筆記

    摘要:作為一名前端架構師,你的工作是不斷地探索和評估新的技術平臺方法和框架。世界上沒有一刀切式的解決方案,而前端架構師的使命正是將項目的需求與前端開發的實際情況相結合。 做前端工作一段時間了,也寫了不少的項目。但是突然好像快要失去了興趣。美工、后臺、項目經理、測試等人員多層夾擊。美工說就這么設計,你就得完全按著來。后臺說這個需求做不了,得那樣做,于是已經做好的頁面推倒重來。測試說,這樣做更符...

    Ocean 評論0 收藏0

發表評論

0條評論

ivyzhang

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<