國外編程語言
Ⅰ 現在美國最流行的編程語言是什麼
貌似.net現在很火,特別是c#,火不火看你的工作目的的。有的時候用C好,但為了移植性,用java好,開發網站就是php比較流行,主要看你做什麼。
Ⅱ 目前為止國際上最主流的計算機編程語言是什麼
看主流的觀察角度,如果是這些語言編寫的軟體的用戶數量最多,那麼肯定是C和C++了,因為我們的操作系統(例如WINDOWS、IOS、LINUX)和核心應用程序(例如OFFICE、IE、CHROME)以及絕大多數的游戲,幾乎全都是C和C++以及少量匯編來寫的。
另外一個角度,就是使用這類語言編程的人數最多,估計C和JAVA不相上下,換句話說排除了上一條的大佬C和C++的話,那麼寫程序最多的人就是JAVA當仁不讓了。
最後一個角度是熱門角度,就是聲音最大的那群人,前面的C和JAVA程序員基本上不屑去什麼爭排名第一語言的,號稱最好語言的PHP其實呼聲有限,基本上大家只是當個笑話聽聽,剩下叫聲最大的就是大蟒蛇python了,所向披靡,沒有人敢站出來否認它是第一。
Ⅲ 編程語言有哪些
一場編程語言之戰
@Author:Runsen
本人懂一點Python,Java,根據自己想法而來,純屬虛構。
現狀
進入2020年3月,新的編程語言排行榜新鮮出爐,TIOBE最新發布了3月編程語言排行榜。
從榜單中我們可以看到,前三名分別為Java、C、Python。相較於上個月,Python繼續以1.85%上升至10.11%,以10.11%的份額穩居第三。
我們先了解下比較常見的編程語言的,如Java,Python,JavaScript,C/C++,Go,C#各編程語言的用途。
「眾口難調」,面對多種多樣的編程語言,大家眾說紛紜,每種編程語言都有兆念棚其存在的意義,編程之戰從未停止,「戰火」一觸即發。
家庭內戰
最近,編程語言家族開了一場「家庭聚會」,都是在討論自己的排名。
下面是家庭成員的對話。
老三Py:最近,我可厲害了。從2015年,人工智慧的開始,人人學我,基本上我成為最無敵的大佬。
老四C++:可不是嘛,老三,你的爬蟲,數據分析,機器學習,深度學習高悉,自然語言處理再加上你的Django,flask等Web開發等,就連你的PyQt也想佔領我的QT圖形界面市場,都是你這個流氓,害得我從老三變成老四。
老三Py:那都是你太難寫了,學我就是幾分鍾就能入門的,誰叫你這么難懂,什麼面向對象,你的一百行代碼,我十幾行就搞定了,誰還會學你,很快,我就是老大,你就是我的小弟。
老四C++對老大Java說:大哥,有人想謀權篡位。
老大Java:現在,確實是老三的時代,現在個個數據分析師只會Python,都喊出了:人生苦短,我用Python。要怪就怪數據分析人員編程水平太低了,寫來寫去就是py代碼,完全學不會其他語言。
老二C鄙視的說:就算寫Python太厲害,也最多就是一個導包俠,沒有什麼了不起的。老三,話說你有什麼本事當老大,我都不敢謀權篡位。
老三Py:不如我們比一比,看看現在開發者需要我多些還是老大多先。
老大Java:好,比就比。誰怕誰,我到底看看你有什麼本事。
老三Py:我代碼簡單,寫起來輕松易懂,比如我列印一句HelloWorld,就是一個,就是這么簡單。就問你們服不服?
老大Java:列印一個HelloWorld,我確實需要好幾行代碼,還要聲明一個HelloWorld對象。
老二C:我還要定義一個main的主函數,列印一個HelloWorld確實有點多。
老四C++:我是抄老二的,寫個HelloWorld比老二還要多。
老三Py:看見沒有,這就是差距,誰會寫那麼多代碼,直接簡單粗暴我就是一個列印HelloWorld。
老大Java:老三,你這樣不行啊,萬物都是對象,寫一行代碼,我覺得都要聲明一個對象。
老三Py:什麼對象,我能列印出來就Ok了。
其他人:確實老三寫的代碼太簡單了,連小學生基本都能學會,我們自愧不如,老三,你還要什麼本事嗎?
老三Py:要說我牛逼莫過我的第三方庫,超過上萬個,安裝也簡單,一個就輕松搞定,還給人看到安裝進度條,你們說我牛不牛逼。
老大Java:這我可不服,你去的maven倉庫看看
我的jar包任何一種場景都有,我的生態系早就完善,怎麼不如你老三?
老三Py:你在pom.xml安裝什麼任何信息告訴族則別人,而且你的dependency鬼死那麼長,人家願意寫嗎?
老二C和老四C++:我們gcc和cmake添加第三方庫還要編譯才可以。
老三Py:我的requests,selenium,beautifulsoup,pyquery,lxml,Scrapy,Crawley,Pyspider等一系列爬蟲庫和爬蟲框架厲害到爆,幾乎所有爬蟲都是我來編寫的,你們的爬蟲市場早沒有你們的份了。
老大Java:我的WebMagic,Nutch,Heritrix,Jsoup,SeimiCrawler,JLiteSpider爬蟲編寫的代碼確實比你多了好幾倍,以前爬蟲的市場都是基本用我,現在給你佔去,悲哀。
老二C老四C++:爬蟲,小心爬進監獄,現在首例爬蟲禁令,禁止爬取微信公眾號,都是老三你的爬蟲造成多少假流量,造成多少網站奔潰,就說12306有盡20%以上都是爬蟲訪問流量,有多少人搶票,再提價出售,官方發票,又被他們搶了,你以前讓多少人搶不票,這背後引發了一系列的骯臟的資產鏈。
老三Py:這關我毛事,現在的網路蜘蛛爬取,多少網站雙手叫好,這都是他們的問題。
其他人:你除了爬蟲,還有什麼?
老三Py:我的數據分析三劍客numpy,pandas,matplotlib,在加上Seaborn,Scipy,StatModels,Pyecharts,Bokeh,Blaze,Plotly,NetWorkX,Biopython,SymPy和gwpy等數據科學庫簡直無敵,都喊出了,從excel學Python了。
老大Java:數據分析我雖然也有jar提供,但是我派了我的兒子scala去幫我完善。
老二C老四C++:這東西不是SPSS,stata,tableau,powerbi,excel,Echart,FineReport等強大的數據分析工具就可以解決了,都是用我們和老大開發的,幹嘛還要寫代碼。
老三Py:我一把屠龍劍Pycharm,一把倚天劍anaconda,一個開發,一個數據分析,雙劍合並,威力無敵。
老大Java:比IDE開發工具,我可不怕,我有Eclipse,MyEclipse,IntellijIDEA,NetBeans功能厲害到爆。
老二C老四C++:Dev-C++,C-free,CLion,Code::Blocks,CodeLite,C++Builder,我們覺得同樣沒問題。
老三Py:我的Web開發Django社區非常龐大,江湖上,Python有兩條腿跑,一腿就是我的django,因為兩萬個包,一萬以上都是我的Django,再加上了其他兒子flask,tornado,我開發了國內的豆瓣、知乎,國外:Instagram、Disqus、NationalGeographic、NASA
老大Java:Web開發,你還敢比,我就拿出一個Spring家族就夠了,SpringMVC,SpringBoot,SpringCloud,再說了我還有自己的Tomcat,Jetty應用伺服器,微服務的架構早就深化人心。如果以前的網站不是用php開發,那基本就是我以前的Servlet,jsp開發的(雖然落後了,但基本都在維護),現在網站開發首選我的Spring家族。
老二C老四C++:雖然在網站開發我們幾乎沒有市場,但是軟體開發都是採用我們的,比如早期的QQ,微信,支付寶等大部分軟體都是我們開發的。
老三Py:有本事比一比現在最火的人工智慧,我的機器學習sklearn,深度學習keras,Pytorch,tensorflow,Caffe,PaddlePaddle,哪個不知道,哪個不用?就是因為這個,我才算最近的王者。
老大Java:你是不是想王者榮耀想多了,王者榮耀的客戶端應該是C#(Unity3D)開發的,核心後端服務是C++開發,可沒有你的份。人工智慧,我怎麼實現不了,我的深度學習庫——DL4J、ND4J以及Deeplearning4j,深度學習框架就是因為數據分析者只會用Python,才讓你火到現在。
老四C++:CPP-Call-Tensorflow,Caffe2C++API,PyTorch-CPP,我的性能比你的好不知道多少倍。對了,說說性能,老三,你這不怎麼行。
老大Java補刀:連數據都沒有,老三你做什麼人工智慧,看看得我的apache社區的大數據框架ApacheHadoop,ApacheHive,ApacheHbase,ApacheSqoop,ApacheFlume,ApacheSpark,ApacheBeam,ApacheFlink,ApacheStorm,SparkStreaming,ApacheOozie還有CloudersManager(CDH)都是我開發出來,大數據平台都是我乾的,沒有了數據,你做什麼Ai,你是不是猴子請來的逗逼?
老三Py:游戲方面,我可以有我的Pygame,性能方面,我承認比較低效,大數據不是還有我的pyspark?
老五C#:你的Pygame就是小孩子過家家的,游戲市場我已經佔領,老三你可不要來。
老大Java笑道:spark是我的兒子scala開發的,spark就是為了你們這些數據分析的人不會我(Java)和我兒子(scala),你們的壓力下,不好意思的開發了pyspark,對Python提供了APi,再說了我們也給R提供了Rspark。話說,老R從前十掉下到了十一。
老R:就是你老三一直打擊我,害得現在數據分析的人員不學習R了,都以為學你,就天下無敵了。
老四C++:就是明明每個人佔領一種市場就夠了,現在提出了」人生苦短,我學Python「口號。
老三Py:就是要」人生苦短,我學Python「。
老大Java:就是因為你,害得所有人的編程水平只降下來。Java開發人員學習Python,就是分分鍾的事情。
老二C:不要說,大學我敢保證所有人都必須學習我開始。
老四C++:有本事你讓學Python的來學我或者老大,我不信他能學得了。學我的人基本被我折磨死了,學你py就是分分鍾的事情,有本事繼續聊性能,我好像記得知乎得推薦系統用go重寫了,還不是因為你的效率。
老十go:今天我難得上了前十,什麼」人生苦短,我學Python「,明明就是」2020年,我們一起學go「。
老三Py:我去你的,你老十有什麼資格說話?再說了我有cpython,Numba提高運行速度不就可以了嗎?
老大Java:那你老三有什麼資格在我面前說話,你連多線程和並發都處理不好,還不如提出我的口號」OnceWrite,RunAnywhere「,一次編寫,到處運行,我的強大的JVM,你老三有嗎?
老三Py:我可以用Pyinstall打成exe,到處運行,不就是」一次編寫,到處運行「,
老大Java:我的強大,你不知道,你還是在mac和liunx運行你的exe吧。我還有一個兒子Kotlin和我佔領APP市場,你有APP市場嗎,還想當大佬,這日子是不是有點早了。
老三Py:我有kivy開發APP。
老二C老四C++:老三,你怎麼不說用flutter開發APP?
老三Py:那是Google開源的UI工具包,關我毛事。
老二C老四C++:flutter的底層是基於我們的開發的。
老三Py:我不管,反正現在人人學Py,我的市場就是慢慢變大,我就是當老大。
老二C:我從1972年誕生,可以說我是老三你的長輩。Java可是運行在全球的三十億設備上的,我都沒有把握當老大,你哪裡來的勇氣?
老三Py:我是從1991年出生,Java可是1995年出生,這樣我不就是老大的長輩嗎?
老大Java:老三說得沒錯,老三要當老大,他膨脹了,要先超越老二你了。
老二C:什麼?老三,他連編譯器都沒有,一個解釋器基於我的編譯器,竟然敢叫囂超越我,用我編譯器,底層封裝我的代碼,沒有我,哪裡來你,腳本就是腳本,動態語言就是動態語言,老大,老四和我哪個不是靜態語言,哪個沒有自己的編譯器?信不信我不給你用我的編譯器,讓你從前十消失。
老三Py:卧槽,爸爸,我錯了,別讓我從前十消失啊。
一聲不吭的老八php叫道:php才是最好的語言。
我想說的
Python這語言,只適合作為加分項,不適合作為技術支撐。因為它寫不了復雜邏輯。只適合寫一個爬蟲,計算器,記事本,Qt之類的小程序。Python超越了Java和C,那是不可能的。Python從老四超越了C++,已經是一個很震驚的大事了。
說這個也許有人不服,憑什麼Python就寫不了復雜邏輯?豆瓣和知乎不是用Python寫的嗎?
先聲明,豆瓣的後端,已經廢棄了絕大部分的Python代碼,重新寫過了。youtube也正在重寫中。目前以Python為主的網站,就只有知乎這么個獨苗,而且知乎的推薦演算法已經用go重寫了。
為什麼?不是因為Python的性能慢,而是因為Python的語法太悲劇了。也許Python的語法簡潔,在初學者看來是優點。因為初學者一般練手,都只寫1000行以下的小玩意,Python的語法簡直爽翻了,真沒任何缺點。
但如果你真的嘗試用Python封裝幾十個類,去寫個一萬行以上的東西,自然就明白它的語法問題有多嚴重了。不只是難受,而是根本寫不下,去維護成本太大了。沒有靜態類型檢查是主要原因。能解決么?也能,好的模塊設計還有codereview能迴避掉一些,不過這樣一來也就抵消掉一些Python能帶來的快速開發的優勢了。
還是江湖那句話,動態一時爽,重構火葬場。並不適合大項目,Python還是適合原型,前期項目。
搞it要想混得好,如果哪能只會一樣東西呢,除非你不想混好,拼得就是綜合素質,除非你Python登峰造極的程度,python五分鍾都能入門,Python的語法和英語完全一樣。學Python的人,去學Java,真的覺得很難。
如果按難度評分0-5的話,Python沒有難度指數0,php難度指數1,go難度指數2,Java難度指數3,C++/C難度指數4。靜態語言的難度是比動態腳本難的,如果你是編程零基礎,建議從學習Python,再深入到Java。一手Python,一手Java基本在市場屬於比較靠前的水平。
阿里基本Java的天下,騰訊的前世是靠C/C++出生,華為主要業務是在硬體方面,也需要C/C++的編程基礎。網路,位元組相反用的Python,go,ruby比較多。
不過如果自己想要有更長遠的發展,只學python肯定是不夠的,個人覺得Java、Python這二門語言都熟練掌握最好。如果想成為大神,那就補充一個C++,你就是無敵的存在。
@Author:Runsen公眾號:潤森筆記
這個分好多種,比如前段、後台、嵌入式開發、全棧、移動開發等。
如前端開發的語言有:HTML、CSS、JavaScript、HTML5、CSS3、JQuery庫、Vue框架、微信小程序等;後端開發的語言有:PHP、Java、SpringBoot、Python、C、C++、C#等;移動開發的語言有:Android、IOS等。
太多了,使用人數較多的有java,C#,C,C++,html,javascript,
php......
現在最火熱的就是python對於很多初學編程,或者剛剛轉行IT領域的程序小猿來講,究竟該選擇哪一門編程語言學習,一直是個很費腦子的事。畢竟,大多數初學者,相關IT知識都還比較欠缺,並不是太了解編程。
那麼這么多的編程語言,學習什麼比較好呢?
Java
Java擁有跨平台、面向對象、泛型編程的特性,非常受企業的喜歡,廣泛應用於企業級Web應用開發和移動應用開發。
Java發展到現在,按應用來分主要分為三大塊:J2SE、J2ME、J2EE。三塊應用范圍不同,但卻相互補充。廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
Python
Python是一門易讀、易維護,並且被大量用戶所歡迎的、用途廣泛的語言。由於具有豐富和強大的庫,又被稱為膠水語言,Python極其容易上手,主要源於Python有極其簡單的說明文檔。
Python?的應用領域分為系統編程,用戶圖形介面,Internet?腳本,組件集成,資料庫編程,快速原型,數值計算和科學計算編程,游戲、圖像、人工智慧、XML?、機器人編程等等。
常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然後對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++重寫,而後封裝為Python可以調用的擴展類庫。Python是做伺服器開發與物聯網開發。
信息安全,大數據處理,數據可視化機器學習,物聯網開發,各大軟體的api,桌面應用,都需要python。
PHP
PHP(HypertextProcessor)是一種免費的強大的伺服器端腳本語言,主要目標是允許網路開發人員快速編寫動態頁面,同時也被廣泛應用於其他領域,如Web開發並可嵌入HTML中去,受到web開發者的歡迎。包括Wordpress、Digg以及Facebook在內均使用了該語言。
PHP的語法利用了C、Java和Perl,易於學習。目前PHP的應用范圍已經相當廣泛,尤其是在網頁程式的開發上。一般來說PHP大多執行在網頁伺服器上,透過執行PHP程式碼來產生使用者瀏覽的網頁。PHP可以在多數的伺服器和操作系統上執行,而且使用PHP完全是免費的。
JavaScript
JavaScript是一種基於對象和事件驅動並具有相對安全性的客戶端腳本語言。聽起來好像和java有些關系,然而卻不是的,只不過名字像而已。
同時JavaScrip也是一種廣泛用於客戶端Web開發的腳本語言,常用來給HTML網頁添加動態功能,比如響應用戶的各種操作。JavaScript也可以用在游戲開發等方面。
js最廣泛的應用毫無疑問是在web前端。簡單的說,網站給你傳過來的是一堆用各種標簽表示格式的文檔,而js負責操縱這些文檔實現一些客戶端動態效果。js的領地還不僅如此,現在的Node.js還可以用於伺服器端的開發。
GO語言
Go語言主要用作伺服器端開發,其定位是用來開發「大型軟體」的,適合於很多程序員一起開發大型軟體,並且開發周期長,支持雲計算的網路服務。Go語言能夠讓程序員快速開發,並且在軟體不斷的增長過程中,它能讓程序員更容易地進行維護和修改。它融合了傳統編譯型語言的高效性和腳本語言的易用性和富於表達性。
Go語言作為伺服器編程語言,很適合處理日誌、數據打包、虛擬機處理、文件系統、分布式系統、資料庫代理等;網路編程方面,Go語言廣泛應用於Web應用、API應用、下載應用等;除此之外,Go語言還可用於內存資料庫和雲平台領域,目前國外很多雲平台都是採用Go開發。
不過,總的來講,這只是一個大概方向上的劃分,具體到每個人的興趣特點和編程特點,還有更為細致的劃分。
據各大語言類的排行榜,目前比較流行的編程語言包括Java、C、Python、PHP、C++、C#、JavaScript、R、Go、OC、Swift等,不同語言排行榜的順序有一定的區別,但是整體上的差別並不大。判斷一門編程語言是否流行一方面要看用戶的整體數量,另一方面也要結合語言的使用場景,有的語言雖然用戶整體數量不大,但是在具體的應用場景卻有非常高的佔比,比如OC。