很多學員都會認為,要想拓寬自己未來的就業(yè)道路,就要學習很多種語言。現在北京北大青鳥校區(qū)老師告訴你,這種想法其實是不正確的。現在IT領域有600多種語言,全部學會是不現實的,他們之間有差異,但其實也有很多相似之處,例如那些面向對象的語言:C++,Java,Ruby,Python等。所以我們只要對它們歸納分類,就能夠舉一反三,大大提高學習效果。
北京北大青鳥校區(qū)老師介紹面向對象編程語言的基礎理論要點:
學習基礎理論要點,例如設計模式/范式,這樣你就知道了在所有面向對象的編程語言中共同的知識,而不是只提高了一種語言水平。這是學習編程語言最有效的方法。
編程語言的類型有很多種,例如函數式語言,面向對象語言,面向數據語言(更多)。通過把各種語言歸納分類,這600種語言大概可以分成50類。通過學習每種分類的基礎理論要點,再學習分類中的不同語言就變得容易多了。這里我給出一個例子。
對于面向對象編程語言,有5個基本原則能幫助你寫出整潔優(yōu)秀的代碼。這些原則是:
一個對象只承擔一種責任,所有服務接口只通過它來執(zhí)行這種任務。
程序實體,比如類和對象,向擴展行為開放,向修改行為關閉。
子類應該可以用來替代它所繼承的類。
一個類對另一個類的依賴應該限制在最小化的接口上。
依賴抽象層(接口),而不是具體類。
通過學習這些原則,你可以在所有面向對象語言里更有效的進行編程。當然,你需要學會一門這種類型的語言來練習這些原則,但這是完全值得的。
各種面向對象語言間的不同之處:
同屬于面向對象語言,它們之間存在大量不同之處:
語法:了解各種語言在語法句式上的差異有很多好處,其中之一能幫助優(yōu)化你的編碼。通過讓一個方法或類跟它的行為在特征是保持相似,這能讓程序更容易懂。
獨特性:每種編程語言跟其它種比起來都有自己的獨特之處。Java有私有方法和數據自定義上的特點,Ruby在Web應用上有很強的優(yōu)勢。
總之,學習各種語言之間的區(qū)別很重要。這種語言可能比那種語言中某些方面更容易使用或更強大。
北京北大青鳥老師總結:學習編程語言最有效的方法是學習它們的基礎性的模式/范式,這比單獨學習每種語言更高效。通過學習這些基礎原理,你可以把它們應用到很多其它類似的語言里。學習各種語言之間的差異,這能幫助我們在面對各種情況時選擇更合適的語言。