如何學會600多種程式語言
幾周前,做為8th Light公司的實習生,我從CEO那裡拿到了我的工作成績報告。在與CEO的會見期間,我發現了一個對如何做一個程式設計師的認識上的盲區。起初我以為,想擴充套件自己的軟體職業道路,那就要學很多各種的語言。我現在就要告訴你,事情不是這樣的。
我們一共有多少種程式語言?你只需看一下維基百科上的清單,600多種!說實話,就我個人的情況,我不相信我能學會數百種語言。因為有太多的文件需要看,它們之間有太多的差異需要注意。它們很多都是相似的,例如那些物件導向的語言:C++,Java,Ruby,Python等。然而,我們卻有一種更高效的方法學習它們,那就是對它們歸納分類。
在美國德銳大學,每個畢業生要接受的一門必修課程教育就是如何有效的學習。我很幸運遇到一位非常好的教授,Sugarman先生,我才有機會學到學習方法。儘管這個方法非常的基礎,但它幾乎能應用到任何事情上——不論它們的數量看起來是多麼不可思議。
物件導向程式語言的基礎理論要點:
學習基礎理論要點,例如設計模式/正規化,這樣你就知道了在所有物件導向的程式語言中共同的知識,而不是隻提高了一種語言水平。這是學習程式語言最有效的方法。
程式語言的型別有很多種,例如函式式語言,面嚮物件語言,面向資料語言(更多)。通過把各種語言歸納分類,這600種語言大概可以分成50類。通過學習每種分類的基礎理論要點,再學習分類中的不同語言就變得容易多了。這裡我給出一個例子。
對於物件導向程式語言,有5個基本原則能幫助你寫出整潔優秀的程式碼。這些原則由Bob Martin總結,叫做SOLID原則。這裡有一篇文章對這些原則進行了解釋說明。這些原則是:
- 一個物件只承擔一種責任,所有服務介面只通過它來執行這種任務。
- 程式實體,比如類和物件,向擴充套件行為開放,向修改行為關閉。
- 子類應該可以用來替代它所繼承的類。
- 一個類對另一個類的依賴應該限制在最小化的介面上。
- 依賴抽象層(介面),而不是具體類。
通過學習這些原則,你可以在所有物件導向語言裡更有效的進行程式設計。當然,你需要學會一門這種型別的語言來練習這些原則,但這是完全值得的。
各種面嚮物件語言間的不同之處:
同屬於面嚮物件語言,它們之間存在大量不同之處:
- 語法:瞭解各種語言在語法句式上的差異有很多好處,其中之一能幫助優化你的編碼。通過讓一個方法或類跟它的行為在特徵是保持相似,這能讓程式更容易懂。
- 獨特性:每種程式語言跟其它種比起來都有自己的獨特之處。Java有私有方法和資料自定義上的特點,Ruby在Web應用上有很強的優勢。
總之,學習各種語言之間的區別很重要。這種語言可能比那種語言中某些方面更容易使用或更強大。
總結
學習程式語言最有效的方法是學習它們的基礎性的模式/正規化,這比單獨學習每種語言更高效。通過學習這些基礎原理,你可以把它們應用到很多其它類似的語言裡。學習各種語言之間的差異,這能幫助我們在面對各種情況時選擇更合適的語言。
相關文章
- 如何學會 600 多種程式語言
- 1 分鐘學會 30 種程式語言
- 七週學會七種語言:學習程式語言的實用指南
- 如何使用多種程式語言而又不失理智
- 如何學會函數語言程式設計函數程式設計
- 同時學習多種程式語言其實很容易
- C語言:一種高效、易學的程式語言C語言
- 眾多程式語言如何抉擇
- 如何學習多個國家語言?
- 如何成為一個通曉多種程式語言的程式設計師程式設計師
- 接下來該學哪種程式語言
- 你真的需要了解多種程式語言嗎?
- 為什麼會有這麼多程式語言
- 你應該學習哪種程式語言?
- 如何學習一門程式語言
- 程式設計入門之學哪種程式語言?程式設計
- 為什麼會有這麼多的程式語言?
- 哪種程式語言適合初學者學習
- 程式設計師,不要急於學習程式語言,先學會如何解決問題程式設計師
- 看看各種程式語言是如何相互瞧不起的
- 將會改變未來IT世界的十種程式語言
- 多種語言後端流行的框架後端框架
- 怎樣才算會一種語言?
- 漫畫:7種程式語言的學習曲線
- 如何用各種程式語言殺死一條龍
- 學哪種程式設計比較好,看看這六種語言!程式設計
- [譯]Python作為一種程式語言有多強大?Python
- 如何學習一門程式語言或框架框架
- 哪種程式語言最流行?
- 如果程式語言是種武器
- 線上語言編輯器(js,css,html等多種語言支援)JSCSSHTML
- 如何掌握程式語言
- 覆蓋40種語言:谷歌釋出多語言、多工NLP新基準XTREME谷歌REM
- 從李小龍的一句話看程式設計師是否應該多學幾種程式語言程式設計師
- 如何用最短的時間學會C語言,並掌握C語言的精髓所在?C語言
- 最適宜初學者學習的幾種程式語言
- 多即是好?ChatGPT也學會了人類的語言偏見ChatGPT
- 如何學好C語言C語言