java,Python,c++等幾種語言哪一個更有發展前景?

黑白貓風娛社


作為程序員玩過幾種編程,C++玩的最多,java其次,python玩的不深入在統計後臺app的崩潰的數據的時候弄個幾個圖形界面查看崩潰的排行數量,另外在製作編譯腳本的時候玩過幾次,人工智能的普及和發展倒是把這種編程語言給推上去了,幾乎是所有培訓機構必然壓開設的一門課程,說句實話但在真正的市場需求方面距離java還是有相當的距離。java依然還是當仁不讓的第一編程語言。

有個朋友學了一年多的python開發,學的還可以覺得在市場上找份工作應該不是多難的事情,結果找了幾個月終於有個公司收留了他,在真正的市場需求面前java的需求量還是要大得多,以致於這位朋友講一定在工作期間把java這門編程語言給學了,要不然在市場找份python的工作太費勁了,所以大家不要被一些宣傳迷惑了,要知道培訓機構選擇的編程語言要具備以下幾種特點:

1.市場前景廣闊,市場前景廣闊不一定代表著現在就非常容易找到工作,起碼代表著未來這種編程語言會有一個大的發展。

2. 集成化高,容易入門,培訓機構更加喜歡短平快的培訓方式,這樣開班的速度就會加快,整個利潤也會非常高,現在市場比較受歡迎有三種,python,前端,php等,基本上幾個月就能上手做東西了

滿足以上兩點都會是培訓機構青睞的編程語言,很多人都覺得C語言是基礎編程語言但真正培訓這塊的機構少的可憐,主要原因是這玩意學的週期長,而且短時間學了還不一定能夠找到合適的工作。

只要市場上存在編程語言一定有其存在的價值,單純的比較哪種編程語言更加有前景意義不是很大,可能很多人覺得C++這種語言用的不多了,但安卓框架層以及chrome瀏覽器主流開發語言都還是C++,只不過國內互聯網公司發展的太迅猛了,應用級別的開發太多了,導致很多基層的編程語言容易被忽略,從全球的編程語言的排名來看C/C++依然還是前三名,對於初學者選擇編程語言不能單靠別人幾句話就當成金玉良言了,重要的是自己喜歡那種編程語言。

說的層次更加高一點,只要掌握了一種編程語言之後再去切換別的編程語言都會變得輕鬆許多,編程語言是可以觸類旁通的,編程玩到一定層面就是編程思想和算法邏輯了,至於具體編程語言的語法隨著時間推移都能夠一一掌握,玩到最後都是設計模式和編程思想提煉性的東西了。

如何選擇編程語言?

1.興趣

興趣永遠是第一老師,有了興趣學習起來就會容易克服很多困難,容易堅持到最後,而且興趣能夠促進自我去學習思考新的設計模式,學習起來更加的主動,不完全是被動的接收模式,被動樣式容易產生逆反的心理,可能程序員在和客戶以及產品經理交流過程中產生一些不愉快,主要還是對於這個職業的認知有一定的誤差,作為一個技術人員,就是利用技術更好的服務,在不斷完成功能和需求的時候就是在修煉自己技術最好過程,如果在一個很好的興趣點支撐下那麼效果就會大不一樣。

2.發展潛力

任何一種編程語言都有其發展的高峰期,在發展的高峰期選擇切入,對於自己的技術生涯會有很好的幫助,所以目前看這三種編程語言都有非常不錯的前景,學好任何一種都能給自己的技術生涯打下一個好的基礎。

選擇編程主要點還是看個人的興趣,如果真的沒有興趣就想辦法培養興趣,想辦法讓自己融入進去。

希望能幫到你。


大學生編程指南


1.目前Python不知不覺的火了起來,已經進了編程語言排行榜top3了,發展前景應該很不錯,在大數據,人工智能,Web,爬蟲都有它的一席之地,python提供了大量的封裝和庫。有人說,java的代碼一行可以實現c語言十行的代碼,而python一行可以實現java十行的代碼。

2.java語言也是比較老的語言了,火了很多年,在編程語言排行榜排第一,也是使用人數最為多的語言,當然也是我比較擅長的語言,java是做Web的主流語言,像淘寶,京東的後臺語言多數都是用java實現的,java在大數據,爬蟲,android領域都有很大的份額,只要像阿里巴巴這種大公司,android操作系統還存在的話,java就肯定還會有它的用武之地。

3.C++是兼容C語言的,它的語法相對複雜,更接近與硬件底層的語言,在桌面應用領域有很大的份額,像QT編程,MFC編程,包括cocox2D遊戲開發所使用的編程語言都是C++,也是有很大用處的。

4.這三種語言都是在編程語言排行榜前幾的語言,發展前景都很不錯,至少在十幾年內不會被淘汰,所以選擇一門語言好好學。無論哪門語言,只要你掌握的真正的技術,成為了大牛,你的發展前景都是非常好的。





讓編程改變世界


Java和Python的區別

Java和Python 一直都是兩種很火很強大的編程語言,對於剛開始起步學習編程的同學來說,會迷惑且最經常問的問題是,我該學 Java 還是 Python,是不是 Python 容易學,或是應該先學什麼編程語言等等這樣的問題。

作為一名 Java 程序員,肯定會建議你先學 Java,然後再學 Python,但如果你問一個 Python 程序員,可能會得到一個完全相反的答案。與此同時,隨著人工智能技術的不斷髮展,Python 已經不再是乳臭未乾的黃毛小子了,它已經成長而且和主流的編程語言,像 Java,C++ 有的一拼。

當最開始接觸 Python 的時候,會覺得它是一門腳本語言,但是後來發現這是誤解。你也可以在 Python 中進行面向對象的編程。對於初學者,選擇一種具有吸引力的,同時有著強大社區支持的語言去學習。現在 Java 和 Python 都滿足剛才說的條件,甚至在做了一些很棒的分析比較之後,依然很難得出應該學習哪個語言。

在 Java 中,你不會看到,在一個字符串變量中接著存整型變量。執行速度是企業級應用的命脈,你可以看到 Java 比 Python 快,但是要記住,你需要編譯才能運行 Java 程序,而 Python 程序不要編譯可以直接運行。Python 控制檯可以直接解釋 python 命令,這對於新手來說意味著會更加簡單!

所以現在 Python 和 Java 2:2,扯平了。

雖然你還會看到 Java 中 hello world比 Python 需要更多行代碼,但最終你會發現,他們二者的能力是一樣的,沒有誰差。當然,學 Java 並把它當成職業生涯的編程語言,你絕不會後悔。但與此同時,你可以在任何時候學習 Python,這對於寫一些小的工具集也非常有用。

最後,Java和Python都是工具,選擇什麼工具取決於你想要幹什麼,所以你要想好你要幹什麼再找合適的工具才是可行之道。無論你選擇何種編程語言,都去好好享受編程吧。

Java 和 C/C++的區別

首先應該清楚,Java 是由 C++發展而來的,保留了 C++的大部分內容,其編程方式類似於 C++。但 Java 的句法更清晰、規模更小、更易學。Sun 公司對多種程序設計語言進行了深入研究,並摒棄了其他語言的不足之處,最終退出了 Java。正是這樣,Java 從根本上解決了 C++的固有缺陷,形成了一種新的完全面向對象的語言。

Java 和 C/C++的相似之處多於不同之處,有 C 基礎的讀者,學習 Java 會更容易。相比較而言,Java 的編程環境更為簡單。因篇幅所限,這裡四川優就業的老師不能完全列出不同之處,僅列出一些比較顯著的區別。

指針

Java 沒有指針的概念,從而有效地防止了在 C/C++語言中,容易出現的指針操作失誤(如指針懸空所造成的系統崩潰)。在 C/C++中,指針操作內存時,經常會出現錯誤。在Java 中沒有指針,更有利於 Java 程序的安全。

多重繼承

C++支持多重繼承,它允許多父類派生一個子類。也就是說,一個類允許繼承多個父類。儘管多重繼承功能很強,但使用複雜,而且會引起許多麻煩,編譯程序實現它也很不容易。所以 Java 不支持多重繼承,但允許一個類實現多個接口。可見,Java 既實現了 C++多重繼承的功能,又避免了 C++的許多缺陷。

數據類型

Java 是完全面向對象的語言,所有方法和數據都必須是類的一部分。除了基本數據類型之外,其餘類型的數據都作為對象型數據。例如對象型數據包括字符串和數組。類將數據和方法結合起來,把它們封裝在其中,這樣每個對象都可實現具有自己特點的行為。而 C++將函數和變量定義為全局的,然後再來調用這些函數和變量,從而增加了程序的負擔。此外,Java 還取消了 C/C++中的結構和聯合,使編譯程序更簡潔。

自動內存管理

Java 程序中所有的對象都是用 new 操作符建立在堆棧上的,這個操作符類似於 C++的“new”操作符。Java 自動進行無用內存回收操作,不需要程序員進行刪除。當 Java 中一個對象不再被用到時,無須使用內存回收器,只需要給它加上標籤以示刪除。無用內存的回收器在後臺運行,利用空閒時間工作。而 C++中必須由程序釋放內存資源,增加了程序設計者的負擔。

操作符重載

Java 不支持操作符重載,操作符重載被認為是 C++的突出特徵。在 Java 中雖然類可以實現這樣的功能,但不支持操作符重載,這樣是為了保持 Java 語言儘可能簡單。

預處理功能

C/C++在編譯過程中都有一個預編譯階段,即預處理器。預處理器為開發人員提供了方便,但增加了編譯的複雜性。Java 允許預處理,但不支持預處理器功能,因為 Java 沒有預處理器,所以為了實現預處理,它提供了引入語句(import),它與 C++預處理器的功能類似。

Java 不支持缺省函數參數,而 C++支持。

在 C 中,代碼組織在函數中,函數可以訪問程序的全局變量。C++增加了類,提供了類算法,該算法是與類相連的函數,C++類方法與 Java 類方法十分相似。由於 C++仍然支持 C,所以 C++程序中仍然可以使用 C 的函數,結果導致函數和方法混合使用,使得 C++程序比較混亂。

Java 沒有函數,作為一個比 C++更純的面向對象的語言。Java 強迫開發人員把所有例行程序包括在類中。事實上,用方法實現例行程序可激勵開發人員更好地組織編碼。

字符串

C 和 C++不支持字符串變量,在 C 和 C++程序中使用“Null”終止符代表字符串的結束,在 Java 中字符串是用類對象(String 和 StringBuffer)來實現的,在整個系統中建立字符串和訪問字符串元素的方法是一致的。Java 字符串類是作為 Java 語言的一部分定義的,而不是作為外加的延伸部分。此外,Java 還可以對字符串用“+”進行連接操作。

goto 語句

“可怕”的 goto 語句是 C 和 C++的“遺物”。它是該語言技術上的合法部分,引用 goto語句造成了程序結構的混亂,不易理解。goto 語句一般用於無條件轉移子程序和多結構分支技術。Java 不提供 goto 語句,其雖然指定 goto 作為關鍵字,但不支持它的使用,這使程序更簡潔易讀。

類型轉換

在 C 和 C++中,有時出現數據類型的隱含轉換,這就涉及了自動強制類型轉換問題。例如,在 C++中可將一個浮點值賦予整型變量,並去掉其尾數。Java 不支持 C++中的自動強制類型轉換,如果需要,必須由程序顯式進行強制類型轉換。


整理小怪


這是2017年的編程語言排行榜,看編程用戶數量是最重要的指標,因為這就是市場現狀。

這裡說一下前幾個主要的編程語言:

java: 健壯的大型軟件

C++: 需求效率的軟件

C: 操作系統及驅動

python: 快速開發應用程序

c#: 微軟的軟件,與java同等級別

JAVA

Java的語法比較規則,採用嚴格的面向對象編程方法,同時有很多大型的開發框架,比較適合企業級應用。Java的學習曲線較長,不僅要學習語言相關的特性,還要面向對象的軟件構造方法,在此之後要學習一些框架的使用方法。

C++

C++不僅是C和java特點的結合。實際上C++是多範式編程語言。它不僅支持傳統的面向過程編程,也支持面向對象編程,最初C++發明的時候就叫做C with class (帶類的C),隨著時間推移,C++又接受了泛形編程的思想,像STL庫就是一個例子。C++的語法風格不一而同,大部分人在寫C++的時候還是當作帶類的C來使用,其實C++可以寫出像python一樣現代的風格。C++運行效率較高,同時能夠比較容易地建立大型軟件,適合對效率要求高的軟件,比如機器學習中的神經網絡,大型遊戲編程等等。C++的內容非常複雜,同時語言經過了幾十年的演化,所以學習起來難度較大,開發效率較低。


C

C是幾種語言中最古老的。C是C++的子集。C的最初出現是為了代替運行效率高但是開發效率低下的彙編語言。C語言現在多應用於操作系統編程,或者驅動開發。比如著名的Linux系統就是使用C語言開發的。C++也可以開發操作系統但是太過於笨重。像python 或者java這樣的語言不適合這樣低級的開發。

python

python比較容易學習,語法很簡單,融入了很多現代編程語言的特性。python的庫非常豐富,可以迅速地開發程序,無論是網站還是小遊戲都非常方便。不過,python的腳本的運行效率較低,不適合對運行效率要求較高的程序。


全棧架構師


kotlin,java能幹的他都能幹;python靠數據分析火了一把,很不幸,kotlin也能幹;kotlin全面開始支持native,c和c++的活也開始搶了;全面支持js;shell腳步可以用kotlin編寫;未來是kotlin的,java在oracle手裡走不遠,kotlin可以全面使用java的類庫,以後大統一的語言。公司不會再招幾撥語言的程序猿了,只要一波kotlin就夠了


1468609


選擇Java,不用再學其他的。

並不是說其他的語言並不要學,倒騰linux需要shell,倒騰前段需要JS,後來又做數據分析項目學了groovy,在上海做FLEX開發學了 actionscript,最近幾年學領導公司的大數據項目寫的更多的是scala的代碼,倒騰spark嘛,公司的爬蟲也用了Python..

要你學JAVA是因為JAVA不缺資源,有大把學習資料,視頻、書籍等,java學出來不怕找不到工作。

重點是讓你儘快進入到軟件編程的行業來,培養自己的信心,解決問題的能力,千萬不要以為你學了java以後就只從事java..

你需要掌握的是學習的能力,掌握知識的方法,刻苦努力把一門語言學好了,精通了其他的都好觸類旁通,學好了一門語言,學其他的語言都不是問題了。

千萬別什麼都想學,尤其是剛入門的時候,把java吃透,再學Python真的很容易。看一兩天資料完全能上手了。認準的目標好好的去學,勤加練習,不要在這選Java還是Python費太多的精力,選哪個都行,關鍵是多寫代碼,努力努力再努力

希望我的答案能幫到你,幸苦點個“贊”哦


GeCoder


就是一種工具語言,做什麼活用什麼工具一樣的,就選用相應了領域的開發語言。更多人可能關注的是使用語音背後的收入問題,總體趨勢就是新行業薪水整體起薪高,新人就想做一個一般技術進入以軟件開發為職業,選個合適的行業就可以了;至於牛人賺多少多少會什麼語言是沒有必然關係的。


莫菲斯特


在PC時代大量的嵌入式的設備,底層的代碼,以及桌面的應用都是用C,C++實現的,毋庸置疑他們是最接近底層,也是最快的。

隨著2000年左右電商的大規模的興起,逐漸的從PC時代過度到了互聯網時代,java開始王者歸來,加上2010移動互聯網的爆發android開始風靡起來,java更是如日中天.

那麼未來10年到底哪種語言會獨領風騷,笑傲江湖,我不得而知,但是未來10年一定是人工智能,萬物互聯的時代,現在AI,VR,無人駕駛汽車,無人機,智能家居離我們越來越近了。

未來10年將是大數據,人工智能爆發的時代,到時將會有大量的數據需要處理,而python最大的優勢,就是對數據的處理,有著得天獨厚的優勢,我相信未來的10年,python會越來越火.

完成同一個任務,C語言要寫1000行代碼,Java只需要寫100行,而Python可能只要20行。用Python完成項目,編寫的代碼量更少,代碼簡短可讀性強,團隊協作開發時讀別人的代碼速度會非常快,使工作變得更加高效。優雅做開發不再是夢!

所以結合上述觀點,python最有發展前景啊~


大陸陸vs小可可


除了Java,約翰·庫克博士還預言了其它編程語言的生命週期。最先會掛掉的是近年來很熱的Go語言(2025年),C#(2034年),Python(2043年),Haskell(2044年),C(2062年),Lisp(2075年),FORTRAN(2077年)。換句話說,在本世紀結束時,這些語言都將消失。


全都是淫才說話又好聽


肯定是Swift!Swift編程語言目前可用在macOS、iOS、Ubuntu、FreeBSD等系統上,並且在嵌入式領域、AI都有其身影!它的語法簡潔,寫起來更簡潔,像寫腳本一樣,但又是類型安全的!最重要的是,它既可編譯執行又可解釋執行!基於強大的LLVM基礎架構作為後盾使它強大無比,無所不能!

另外它與C語言也結合得非常好,兩者交互起來十分方便!隨著Swift4.0的推出,其ABI也日趨穩定,而且也會有官方的Server API一同發佈,使得Swift再次擴張其良好的生態鏈!屆時,Swift必將穩定在TIPBE排行榜的前10位!


分享到:


相關文章: