首頁>Club>
4
回覆列表
  • 1 # 北大青鳥中博軟體學院

    Python

    要說當下最火的程式語言,Python絕對可以佔據一席。“人生苦短,我用 Python”,網路上也是各種宣傳。Python是非常簡單的一種程式語言,極大的降低了程式設計門檻,已成為全球大中小學程式設計入門課程的首選教學語言,更是人工智慧領域首選的程式語言。在大資料領域,Python同樣可以勝任,比如使用 Python進行資料的爬取操作等等。

    Python可以用在web開發、爬蟲、遊戲、人工智慧、物聯網等方方面面,Python目前呈上升趨勢,未來發展前景很好,但是目前從就業角度來說,單獨的Python崗位還是少一些,大多數是要求有Java等開發能力,在其崗位要求的基礎上要求同時掌握Python。

    Java

    Java相當於人類語言中的英語,可以說是掌握Java,走遍天下都不怕。作為一門基於面向物件的跨平臺開發語言,功能強大且簡單易用。在 TIOBE語言排行榜常年蟬聯第一,在全球佔有極大的市場份額。

    經過20多年的發展,形成了完善的社群生態,多用於B/S架構的企業級專案開發,目前國內一線公司都有使用Java在進行專案建設。Java的就業面非常廣,Java開發在各大招聘網站中的招聘量也是最多的,除了Java本身對應的崗位,企業也非常喜歡有Java背景的前端開發、移動端開發、測試、產品等等,可以說有了Java的技能傍身,你想往各個崗位去轉都會容易一點,職業規劃發展更為廣闊。

    PHP

    PHP是一種通用開源指令碼語言,主要適用於Web開發領域。在前幾年的時間,網際網路逐漸興起,大家有很多“建網站”的需求,由於PHP的相對輕量級,能夠快速進行Web開發,所以非常火熱。但隨著這幾年網際網路的逐漸成熟和提升,專案體系和要求越來越高,PHP的熱度已經下降,目前對應的主要還是Web開發,但是就業需求相比Java已經少很多。

    C

    古老的程式語言之一,幾乎所有系統相容,很適合作業系統和嵌入式系統,一般使用C語言進行作業系統底層開發、物聯網軟硬體開發。學習難度大,就業崗位相對來說會少一些,對人員要求較高,同時就業面相對來說較窄。

    JavaScript

    一種主流的web程式設計指令碼語言,一般用來在客戶端瀏覽器中執行,但目前由於非同步程式設計思想的深入,JS結合node應用越來越廣泛,不僅可以做web前端,也可以做後端開發,還可以和移動端開發配合使用實現跨平臺開發,比如:小程式開發。可以說 JavaScript屬於前端開發必備技能,前端開發的很多框架都以此為基礎,所以JS未來的前景也是非常不錯的, GitHub上排名第。

  • 2 # 與自然做鬥爭

    這種問題要看什麼晶片,如果那天有謀個構造代替甚至淘汰X86.ARM ,程式設計就會發生重大改變,往優勢方面去。

    目前主流的還是x86與ARM ,所以C 彙編,JAVA 比較實用只是暫時,所以優點就高很多,超高精度程式設計軟體你們沒有人用過,你們也用不到而且使用數量不到萬人,這種程式設計軟體可以調控電流達到很低,可以說只有0.001飛秒,所以說你們用不到,你們會說不實用,當你們更深入微觀世界時候你就會發現,C JAVA 都是菜鳥程式設計。

  • 3 # IT人劉俊明

    目前世界上的程式語言有幾百種(大概600種),常見的程式語言集中在幾十種,幾乎每一種程式語言都有其特定的應用場景和優點,下面對TIOBE最新語言排行榜上的程式語言做一個簡單的描述。

    Java語言的主要優點集中在效能穩定、擴充套件性強和生態體系健全等方面,Java語言有比較廣泛的使用範圍,包括Web開發、大資料開發、Android開發和各種後端開發都有大量的Java解決方案。

    C語言是程式語言界的常青樹,C語言的特點在於執行效率高和生態體系健全,C語言主要從事作業系統開發、服務容器開發和嵌入式開發領域。另外,C語言屬於面向過程的程式語言,學習難度並不高。C++語言是C語言的面向物件版本,在效率上繼承了C語言的特點,在圖形處理等多媒體領域有廣泛的應用。

    Python語言的特點是語法簡單,有豐富的庫支援,所以採用Python開發往往具有較高的開發效率。Python語言目前在Web開發、大資料開發、人工智慧開發、嵌入式開發領域有廣泛的應用。

    VB是一門比較老的程式語言了,VB的應用場景主要集中在微軟的開發平臺上,能開發應用程式,也可以開發一些軟體工具,VB有大量的歷史遺留專案。優點是開發方便而且控制元件非常豐富,整合化開發環境是VB的優勢之一。C#同樣出自微軟,C#的應用場景同樣比較廣泛,移動端和服務端都可以採用C#。

    JavaScript目前的使用範圍比較廣泛,JS是前端開發的重要內容之一,特點是靈活且功能強大,目前JS正伴隨著Nodejs從前端走向後端。

    PHP是傳統Web開發的重要解決方案之一,PHP語言的優點是語法結構簡單且清晰,開發週期短,擴充套件性也比較強大。目前在Web開發領域,PHP是非常主流的開發方案。

    OC和Swift是iOS平臺下的程式語言,特點是封裝性比較好,從發展趨勢來看,Swift要更好一些。

    Go語言是近幾年發展非常迅速的程式語言之一,主要特點是併發效能比較強大且語法簡單,未來Go語言的發展前景還是比較值得期待的。Go語言在大資料、雲計算等領域的應用空間比較大。

  • 4 # 深邃思考

    計算機語言,差不多都有自己擅長的領域。除了生孩子外啥都是長項的語言暫時還沒有。開個玩笑。

    比如,組合語言,在開發微控制器、寫底層軟體時效率可以很高,編譯出的可執行程式體積也很小。但是,移值性、編寫速度、程式的可讀性都不好。

    再舉一例,BASIC,程式碼好寫好改,甚至微軟的OFFICE套件中VBA也是基礎模組,熟悉了VBA,能能連線SQLSERVER資料庫幹太多太多事情,我曾經用Basic語言寫了一個從ERP資料庫中查詢物料中的原材料,並生成CREO用的材料庫的程式,編譯後可執行檔案只有39K,獨立執行不要動態庫,... 但是,因為編譯器的原因,想用它開發網站,就純屬自找麻煩。它絕對不如PHP自由方便。

    PHP?寫中小型網站,甚至大型網站的伺服器端,配合apache 和 linux,很棒的。可用它寫桌面程式?別玩了,會很痛苦,弄不好得親自寫介面程式去!

    根據想幹什麼活選合適的工具才對。那麼問題來了,能想做哪方面的工作?

  • 5 # 勿與君子鬥名

    要說程式語言的“優點”,答案恐怕很主觀,難以在實際生產中的得到較好的答案,只能說因專案而異。

    我個人主觀的答案偏向C++,因為較之C語言,它擁有足夠高階的抽象工具,而與多數其他高階的程式語言相比,他又可以完成全領域的開發工作。組合語言將機器指令(數字程式碼)用助記詞的方式加以封裝,讓人們可以很方便的在馮諾依曼的架構內程式設計,從數字程式碼中解放出來。C語言非常完美地將組合語言與機器特性以函式加以封裝,讓我們從一條條單一的彙編指令中解放出來,使得人可以更高效地編寫更復雜的軟體,這得益於C自頂向下的函式式(過程式)程式設計。

    繼C之後,人們用C和彙編開發了許許多多的高階語言和指令碼語言。C++是其中最為成功的一種,定位於解決所有彙編或C能解決的問題,但是提供了更高階的抽象和程式設計正規化,除了C的面向過程正規化,還可以用類和繼承來完成面向物件的程式設計正規化,也可以用泛型和模板來實現超程式設計正規化和靜態函數語言程式設計,而最近的標準方案將會引入反射機制以支援動態程式設計正規化,也會對引入更多的機制來支援多核多執行緒,以及對垃圾回收的基本語言支援也已經在很多編譯器中可用。如果說這些是優點,那C++無疑優點眾多。其中歷史最悠久的一個有點可能是與C的相容性。

    但是物極必反,C++既要強大,又要讓開發者覺著它很容易學用。其強大洽洽對很多人來說成為難以掌握的缺點。而且超程式設計的編譯速度極為低下,導致很多現代的大型C++的編譯速度極為緩慢(這點得益於現代處理器和記憶體的發展得以“改觀”)。加上C++對程式符號的的改編,使其二進位制格式在一定程度上難以除錯和識別(這點在很多現代開發工具中已經不是很明顯的問題了),而且C++的編譯結果通常都會比C大很多(這點對現代機器來說不是問題,實際生產中也幾乎很難遇到了)。所以雖然C++引入了很多特性,還是有很多人堅持使用C,以及用一種變通的方式在C語言裡實踐面向物件和動態程式設計等等。

    除了C++,還有很多用C實現的高階語言,比如Lisp是歷史悠久的函式式語言,其歷史恐怕不會比C++晚,但是Lisp的程式設計正規化與面向過程自頂向下設計正規化天壤之別,以至於它很難流行起來!況且Lisp是以解釋語言的形式誕生。後來的一個變體Elisp被用於Emacs的擴充套件語言,為駭客世界和網際網路發展匯入強大的編輯工具。

    同樣是面向過程的Basic也擁有悠久的歷史,曾經被微軟作為戰略開發語言,並在微軟的推動下,發展至今成為了Visual Basic,VB Script以及VBA,還有後面.Net的CLI變種還有。在Windows系統中VBS依舊是系統預設指令碼語言,也曾經在IE中作為預設語言。但是因其與微軟的淵源,網際網路並沒有接納VBS,反而使用了JavaScript作為網際網路的預設語言,至今演變成為ECMA Script(叫這麼奇怪的名字是因為Java是專利語言)。

    Java曾經被主流的駭客判死刑,因為其專利的緣故,很多專案拒絕用Java。後來Sun積極參與開源社群,宣告其專利不會影響用Java編寫的客戶程式,而且Sun也將Java編譯器和虛擬機器免費給開源社群使用,做了很多貢獻,才有了Java在網際網路的延續。JavaScript和早期的Java Applet就是其為瀏覽器做的很多創新。最後這些都沒有成為主流,除了JavaScript可以擺脫專利的束縛,Java的很多技術都逐漸被網際網路淘汰。甲骨文收購Sun之後,與谷歌的Java傾權官司證明了網際網路發展拋棄封閉和專利的合理性。所有不符合網際網路文化的技術最終都不會成為主流。

    谷歌也在不斷地努力去Java,哪怕是在開發的時候已經做了很多規避技術,也難以擺脫甲骨文的噩夢。甚至其新系統Fuchisa的研發也有其中一部分原因,因為Android的誕生與Java成了命運共同體,雖然谷歌開發了Kotlin,也恐怕很難完全擺脫Java。

    在蘋果的領域,C的另一個變種Object C是其主戰武器。雖然為蘋果的系統開發程式也可以用C和C++,但是完全不用ObjC恐怕是不行的。ObjC顧名思義,是在C的基礎之上加入了面向物件的開發方法。對於喬布斯那樣的格局來說,擁有屬於自己生態的專屬開發語言是很重要的,不然iOS也難免落得Android那樣成功之時受制於人。其實C++完全可以支援喬布斯的iOS生態,甚至更優秀,但是C++標準組織恐怕是不會受蘋果的制約的,這大概是ObjC被髮明用於支撐蘋果開發生態的原因。我想喬布斯是正確的,後來C++標準極為緩慢的推進,可見其正確性。

    ……

    回頭看題主的問題,那種語言才是最優的?答案是沒有,你回頭看看這些語言的發展歷史,和誕生的原因,很容易理解,每種語言都有各種各樣的優點和缺點。但是最為開發者你可以有自己的偏好。比如我個人偏好C++,以及後來的Go。

    希望以上可以幫到你。

  • 6 # 阿迷創客

    沒有十全十美的語言,每種語言都有其年代特性,為了解決當時的問題而產生,問題問題持續不斷,語言也在不斷髮展。

    語言學習並不會耗費太多時間,學程式設計,做程式,就是要保持持續學習的態度和能力。

  • 中秋節和大豐收的關聯?
  • 哈弗F7能取得年輕人的歡心嗎?