本人不太專業,說一下個人看法,不一定正確:
ASM:彙編,直接操控硬體的二進位制語言,算硬體語言(不是Verilog這個硬體描述語言,Verilog是用語言描述硬體),但不方便抽象理解,所以生澀難懂。
C/C++語言:即可直接操控硬體,又可以方便人類抽象理解的高階語言,堪稱完美,經久不衰。現在高階語言翻譯成彙編的能力(別說超越,哪怕)接近C的都幾乎沒有。
其他高階語言:JAVA、C#、Python…
C語言雖然方便,即要操控硬體又要方便人類抽象,C雖兩者平衡得很完美但是畢竟魚和熊掌不可兼得,C語言還是有不足
①安全性,直接操作硬體就給了程式特權,作業系統、編譯系統等稍有不慎就給別人方便找漏洞或讓系統崩潰,我想這就是他們高階程式負嚷嚷的記憶體回收、崩潰、漏洞…的原因。
②雖然C透過庫或開發平臺已經很容易搭建大型軟體了,但是考慮硬體操作的特點下對於超大型軟體編寫還是稍顯麻煩,特別是網際網路和統一作業系統下程式設計師完全不管硬體了,他們更需要一種接近自然語言和快速完成的語言,硬體和效率不再是他們考慮的因素。
不過這兩項貌似都不是什麼主要原因,都可以透過技術手段解決,而大公司的商業算計可能才是主要原因,他們希望程式開發都歸入他的門下,讓你只知道他的平臺而不知道底層的硬體,在你覺得程式設計方便順手不想遷平臺時他便開始方便的割韭菜。
C#就不得脫離Windows的net平臺,JAVA就不得脫離他的虛擬機器,Python當然就脫離不了谷歌。他努力開發就是讓程式設計師們懶惰然後離不開他。
所以這種純高階語言行不行,不是語言本身,而是看他背後的公司,比如微軟的NET還行那C#就還行,Python就看Google…
本人不太專業,說一下個人看法,不一定正確:
ASM:彙編,直接操控硬體的二進位制語言,算硬體語言(不是Verilog這個硬體描述語言,Verilog是用語言描述硬體),但不方便抽象理解,所以生澀難懂。
C/C++語言:即可直接操控硬體,又可以方便人類抽象理解的高階語言,堪稱完美,經久不衰。現在高階語言翻譯成彙編的能力(別說超越,哪怕)接近C的都幾乎沒有。
其他高階語言:JAVA、C#、Python…
C語言雖然方便,即要操控硬體又要方便人類抽象,C雖兩者平衡得很完美但是畢竟魚和熊掌不可兼得,C語言還是有不足
①安全性,直接操作硬體就給了程式特權,作業系統、編譯系統等稍有不慎就給別人方便找漏洞或讓系統崩潰,我想這就是他們高階程式負嚷嚷的記憶體回收、崩潰、漏洞…的原因。
②雖然C透過庫或開發平臺已經很容易搭建大型軟體了,但是考慮硬體操作的特點下對於超大型軟體編寫還是稍顯麻煩,特別是網際網路和統一作業系統下程式設計師完全不管硬體了,他們更需要一種接近自然語言和快速完成的語言,硬體和效率不再是他們考慮的因素。
不過這兩項貌似都不是什麼主要原因,都可以透過技術手段解決,而大公司的商業算計可能才是主要原因,他們希望程式開發都歸入他的門下,讓你只知道他的平臺而不知道底層的硬體,在你覺得程式設計方便順手不想遷平臺時他便開始方便的割韭菜。
C#就不得脫離Windows的net平臺,JAVA就不得脫離他的虛擬機器,Python當然就脫離不了谷歌。他努力開發就是讓程式設計師們懶惰然後離不開他。
所以這種純高階語言行不行,不是語言本身,而是看他背後的公司,比如微軟的NET還行那C#就還行,Python就看Google…