淺談語言

博客遷移

語言發展到現在可謂是百花齊放,百家爭鳴,軟件開發這麼久了,對語言的一些感覺做點筆記。


語言概述


縱觀計算機語言發展,從機器語言到彙編,這裏完成了機器語言到人類語言的進化點,雖然還是輸入命令的方式控制機器,但是命令的可讀性大大提高,不在是0101,底層工程師和上層工程師可以分開關注點了。


c的到來,和c的衍生語言到來,讓軟件成爲了一個行業,軟件也進入了跨越式發展的時代,進入這個時代後,語言的可讀性越來越高,java雖然也是一個命令式語言,但是java的可讀性和可理解行大大提高。更重要的是java作爲一個oo語言,它的工業生產能力遠遠超過了c。02年.net發佈,.net的到來,讓語言也有了一種什麼叫用戶體驗的東西,ide vs和各種語法糖,都讓.net對程序員的友好度大大超過了java,所以也越來越多人說.net程序員只會拖拖控件,丟棄了語言的本質,但是,這是一種進步,不是麼,語言的友好度,雖然還沒到全名編程的程度,但是學習成本已經大大降低了,學的人多了,工業成本也就下來了。


結:軟件的發展隨着軟件的抽象度越來越高,java8也引進了很多語法糖,讓語言的可讀性越來越高,軟件語言越來越像人來語言,雖然還是命令,但是命令已經是人來的口氣在說話,不是機器的口氣在說話了。很多人疑惑c爲什麼這麼多年還有活力,我覺得用一句話總結的話–c更懂機器的心,java/.net/python…高級語言更懂業務。當你需要靠近機器的時候,你可以選擇c或者彙編或者機器語言,當然c應該是最好的選擇,當你需要靠近業務的時候,高級語言就是更好的選擇了,當然你也可以選擇c。


百花齊放


動態語言,編譯型,解釋型,面向過程,面向對象,函數式…
語言已經不再滿足於某些特性來分類,語言真的是進入了一個百花齊放的時代,雖然不是每一種語言都找到了它的存在感,但是很多語言在它擅長的那一塊,找到了歸宿。


java 一直都很流行,在web混得風生水起,java 2 me 發展得挺好的,最近又在anroid大展神威。
.net 出生就被打上的山寨的標籤,但是不得不說,山寨雖然是山寨,但是.net 現在已經青出於藍了,現在我作爲一個.net 程序員,羨慕java的只有java強大的社區了,語發上.net超過了java很多,雖然我對java也挺喜歡的,因爲我學的第一門語言就叫java
c 什麼?你想寫驅動,嵌入式?選擇c吧 它更懂機器的心

結:語言的學習,習一門,學衆家。跳出語言外,觀各種語言的優點,語言學習可以完成


分久必合


現在各種語言已經不再滿足一種特性,學習對方的優點,然後融入自身,特別是在各種主流語言上表現明顯。
.net 早在4.0就支持動態編程,3.0 lambda 表達式 中有一中模糊的函數式編程的影子,但是模仿就是模仿,底層實現原來一樣。但是語言在不斷的進化,不斷地進步,學習,融合成爲了一種態勢。

結:融合不是以後只有一種語言,各種語言在各個業務領域表現依然百家爭鳴,這是業務角度。語言的角度,語言相互越來學習,取長補短。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章