2020 年最牛逼的 10 門編程語言

先看再點贊,給本身一點思考的時間,微信搜索【沉默王二】關注這個有顏值卻僞裝靠才華苟且的程序員。
本文 GitHub github.com/itwanger 已收錄,裏面還有我精心爲你準備的一線大廠面試題。javascript

對於不少初學編程的人來講,尤爲是立刻要入學的大一新生來講,選擇哪門子編程語言實在是個痛苦的事。選擇對了,畢業後順利找到工做,完美走向職場;選擇錯了,畢業後受傷的才華無處安放,大學算是虛度光陰了。php

前一段時間哈,我有個遠房的親戚,她家的小孩非要讓我指導一下。而後就帶了一本書來見我,看了一下封面,我驚呆了。前端

《易語言從入門到精通》。這是哪門子編程語言,我第一次見到!不敢怠慢,也擔憂親戚說我孤陋寡聞,偷偷地搜了一下。易語言的創始人是吳濤,國內爲數很少的推崇中文編程語言的程序員大佬。java

鄭重其事地說,我是個三觀很正的人,絕沒有半點虛情假意。但我實在不忍心看我這遠房表弟誤入歧途,畢竟易語言即使是入門了,甚至是精通了,未來也不必定能找到工做啊!python

當作興趣愛好學編程當然好,值得稱讚。我這表弟雖然學習不咋滴,年紀輕輕,初中畢業,但據親戚反饋,酷愛編程,酷愛計算機(也不肯定是否是酷愛打遊戲)。易語言這本書也是他本身在網上買的。ios

我有點擔憂地問他:「能看懂嗎?」c++

表弟不假思索,信誓旦旦地回答:「能啊!」git

我隨手翻了翻這邊書,發現書籤已經夾在第 202 頁,我天吶,真的有在看啊,看了將近一半了。程序員

必須得負責任啊,我就對親戚和表弟說,「你看,要不咱換個編程語言吧,好比說 Java!」github

親戚一臉驚愕,「你說哈?」

我只好無奈地將臉邁向我這表弟,只聽他娓娓道來:「J-A-V-A!」

「哎呀,不錯啊,真的私底下有研究!」我心中暗暗佩服起來了我這表弟。真看不出來,挺愛學的嘛。

「別看這本易語言了,當作興趣學編程沒問題,可咱學習是爲了啥,就是爲了之後能找份工做,雖然我說得比較俗氣。若是說確實對編程感興趣的話,買點 Java 方面的書讀一讀。」我語重心長地建議。

表弟深覺得然地點點頭。

之因此說這件事,就是想告訴同窗們,努力當然重要,但選擇必需要對,一旦選擇錯了,那不少努力都是白費。

那,這篇文章就是來給同窗們提個醒,2020 年最牛逼的編程語言是什麼?看完後你就知道該如何地去選擇了。

先來個簡要的歸納:

  • Java,服務器端最好的編程語言

  • C++,最通用的編程語言

  • C,迄今爲止,最值得信任的編程語言

  • Python,AI(人工智能)、機器學習方向最佳的編程語言

  • JavaScript,客戶端最經常使用的腳本語言

  • C#,微軟最強有力的面向對象編程語言

  • Swift,IOS 端最高效的編程語言

  • GO(Golang),可擴展的編程語言,谷歌出品

  • PHP,世界上最好的編程語言,不,最好用的 Web 編程語言

  • Ruby,數據科學方面最可靠的編程語言

爲何我會選擇這 10 門編程語言?可不是我收了這些編程語言的錢,故意讓它們上榜的,我是有足夠多的理由的。

首先來看一下 TIOBE 排行榜,很是很是權威的榜單,下面這 14 個是活得比較久的,能夠看得出,除了 SQL 換成了 GO,其餘 9 門編程語言都在,而且長期霸榜。

活得比較久,意味着這門編程語言的生命力比較頑強,生態系統比較完備,它們屬於叢林的王者——物競天擇,適者生存嘛。它們活得久,而且活得好,那就意味着還能活得更好更久,是這個道理吧?強者更強!

同窗們儘管放心,我是負責任的——主要是這些編程語言的做者或者團隊是負責任的,儘管開源 PHP 的官方團隊已經在 2019 年末完全解散了,但 PHP 依然很堅挺,很牛逼。

下面讓我來詳細地說道說道這 10 門編程語言。

0一、Java

Java 實際上是 C++ 的一個替代品,Sun 公司本來想開發一種比 C++ 更簡單的面向對象編程語言,起初叫 Oak。結果沒想到,隨着時間的流逝,由於 Java 更容易學習,跨平臺,就致使 Java 的普及程度遠遠地超過了 C++。

說句不那麼優雅的話,就好像狗血劇裏小三上位的橋段同樣。

在 Java 虛擬機的幫助下,Java 能夠無障礙的在 Linux、Windows、Mac-OS 等多種操做系統下自由地穿梭,這使得它在企業級開發中很是受歡迎。

Java 能夠作網站開發、作安卓開發、作桌面級應用開發(Eclipse、NetBeans 等等)、作遊戲開發(個人世界)。

來一發 Java 版的 Hello World 吧:

public class HelloWorld {
 public static void main(String[] args) {
  System.out.println("Hello World");
 }
}

0二、C++

C++,從名字上就能夠看得出來,它是 C 語言的親兒子,是對 C 語言的擴展,旨在爲 C 語言創造出面向對象的功能。

隨着時間的發展,C++ 進一步發展爲具備最直接的內存訪問和完整硬件控制的通用語言。正由於 C++ 提供了最普遍的通用功能,就致使掌握起來有必定的難度。

C++ 能夠在全部的平臺上運行,而且能夠有效地利用任何類型的硬件,這使得它能夠在資源受到限制的平臺上發揮最佳性能。

C++ 能夠作遊戲開發(星際爭霸、魔獸爭霸),辦公軟件(微軟 Office)、操做系統(Windows)、關係型數據庫(MySQL)、3D 引擎(Microsoft DirectX)、嵌入式開發。

來一發 C++ 版的 Hello World 吧:

#include<iostream.h>
using namespace std;

void main() {
    cout<<"Hello World";
}

0三、C

C 語言誕生於 1960 年,做者團隊對它只有一個要求:必須得通用,而且可以有效地利用系統資源。由於在那個年代,每個字節的內存都是昂貴的。

就像 C++ 那樣,C 也能夠直接訪問內存而且控制硬件。C 和操做系統緊密相關,程序員必須親自處理內存的分配細節,所以很難掌握。儘管 C 語言誕生的很早,但它仍然是目前最經常使用的編程語言之一。

C 語言的設計影響了衆多後來的編程語言,好比說 C++、Ruby、PHP、Python、Java、C# 等等。

C 語言能夠作嵌入式開發(單片機),基於嵌入式操做系統的應用軟件、驅動程序,高性能的 Web 服務器(Nginx),常見的緩存數據庫(Redis)、智能設備或者物聯網設備中的操做系統(路由器、攝像頭)等等。聽說,反正能想到的,均可以用 C 作,就看會不會作。

來一發 C 版的 Hello World 吧:

#include<iostream.h>
void main()
{
    printf("Hello World");
}

0四、Python

Python 誕生於 1990 年,做者叫吉多·範羅蘇姆(Guido van Rossum,Python 之父)。能夠說,全部的編程人員都喜歡 Python,由於它的學習成本很低,但應用的等級很高,好比說當下很是有深度的人工智能、機器學習、數據分析。

Python 的語法簡潔而優雅,社區也很是活躍。但有一說一,Python 崗位對學歷的要求很高

來一發 Python 版的 Hello World 吧:

print("Hello World")

0五、JavaScript

JavaScript 是 Brendan Eich(只用了 10 天時間就設計出來了,牛逼)在第一次瀏覽器大戰時爲 Netscape(網景公司)開發的腳本語言。儘管一開始 JavaScript 的設計不夠優良(畢竟時間短啊),但隨着時間的推移,JavaScript 逐漸發展爲一種高級的動態編程語言。

與其說我愛 Javascript,不如說我恨它。它是 C 語言和 Self 語言一晚上的產物。十八世紀英國文學家約翰遜博士說得好:'它的優秀之處並不是原創,它的原創之處並不優秀。'

以上 Brendan Eich 對 JavaScript 的評價,讀完是否是感受好氣啊——居然看不起本身的親生兒子,哈哈。

有大佬曾說,「JavaScript 是互聯網的膠帶。」這個稱讚很是高。HTML 負責結構, CSS 負責展現, 而 JavaScript 負責邏輯,網頁前端編程的三劍客造成了。

ExtJS、prototype、JQuery 這些基於 JavaScript 的框架更是把 JavaScript 推向了巔峯。隨着 Node.js 的出現,JavaScript 這種客戶端的腳本語言居然能夠在服務器端立足了。

如今很是火熱的前端框架,Vue.js 就是用 JavaScript 編寫的,能夠這說,想從事前端開發工做的話,JavaScript 是必學的!

來一發 JavaScript 版的 Hello World 吧:

<script>
 alert('Hello World');
</script>

0六、C

一看名字,就知道 C# 和 C/C++ 有着親密的關係,微軟把 C# 設計成具備面向對象的,像 C 同樣的編程語言。

最初,C# 被看做是 Java 的複製品,它們之間有着驚人的類似之處,好比說繼承、接口,以及與 Java 幾乎一樣的語法,一樣須要先編譯後運行。隨着時間的發展,以及微軟爲之付出的巨大努力, C# 沉澱了豐富的類庫和框架,開發人員能夠在此基礎上快速地編寫各類基於 .NET 平臺的應用程序。

隨着 Unity3D 的出現,跨平臺的 C# 終於能夠大展拳腳了,在開發遊戲方面的優點巨大,好比說編譯速度快、類庫充足。除此以外,要知道 C# 背後的大山是誰,微軟啊!

來一發 C# 版的 Hello World 吧:

namespace HelloWorld
{
    class Hello
    {

        static void Main(string[] args)
        
{
            Console.WriteLine("Hello World");
        }
    }
}

0七、Swift

關於 Swift,直接來看蘋果官方給出的介紹吧:

Swift 是一種強勁而直觀的編程語言,它由 Apple 創造,可用來爲 iOS、Mac、Apple TV 和 Apple Watch 開發 app。它旨在爲開發者提供充分的自由。Swift 易用而且開源,只要有想法,誰均可以創造非凡。

Swift 是一種快速而高效的語言,可以提供實時反饋,並且能夠被無縫集成到現有的 Objective-C 代碼中,所以,開發者可以編寫安全而可靠的代碼,並在節省時間的同時,創造出很是豐富的 app 體驗。

來一發 Swift 版的 Hello World 吧:

print("Hello World")

0八、Go

Go 的親爹是 Google,又是一家互聯網巨頭,能夠想象它將來的潛力。

Go 語言的設計很是精緻,用起來也很是簡單,解決開發擴展方面的能力也比較出衆。關鍵是學習起來也很是容易上手,這些優勢促使 Go 語言的增加很是快。

國外如 Google、AWS、Cloudflare、CoreOS 等,國內如七牛、阿里等都已經開始大規模使用 Golang 開發其雲計算相關的產品。 能夠說前途很是光明。

來一發 Go 版的 Hello World 吧:

package main
import "fmt"
func main() 
{
     fmt.Println("Hello World")
}

0九、PHP

PHP 用來開發 Web 應用程序的歷史已經超過 35 年了,能夠說是老資歷了。儘管最近流行度在降低,但瘦死的駱駝比馬大。

PHP 是最好的編程語言,這個梗是從哪裏來的呢?顯然不是吐槽大會!而是 PHP 的官方文檔!

PHP is the best language for web programming, but what about other languages?

下圖是 PHP 是最好的編程語言的確鑿證據。

2010 年先後,PHP 在 Web 開發中一直處於王者的地位,尤爲是 WordPress 等內容管理平臺的流行,再加上「扎男」的 Facebook(PHP 開發的)的烘托,更加鞏固了 PHP 在業界的地位。

我在 2013 年 底準備回洛陽的時候,還學習了三個月的 PHP。時隔多年,下面這本書還躺在我家的書架上積灰。

好了,來一發 PHP 版的 Hello World 吧:

<?php
echo "Hello World";
?>

十、Ruby

Ruby 最初是一種面向對象的腳本編程語言,可是隨着時間的流逝,它逐漸發展成爲一種解釋性的高級通用編程語言。它的學習曲線至關平坦,很是有助於提升開發人員的生產力。

Ruby 的做者松本行弘曾說過一段很是經典的話:

「 人們特別是電腦工程師們,經常從機器着想。他們認爲:‘這樣作,機器就能運行的更快;這樣作,機器運行效率更高;這樣作,機器就會怎樣怎樣怎樣。’實際上,咱們須要從人的角度考慮問題,人們怎樣編寫程序或者怎樣使用機器上應用程序。咱們是主人,他們是僕人。 」

Ruby 正是基於這種理念產生的。網上有句話是這樣說的,學習 Ruby on Rails 能讓你看到 Web 框架頂端的景色。據說,GitHub 官網是經過 Ruby on Rails 開發的(不許確,不知道有沒有同窗能夠確認下)。

JavaEye 的創始人範凱曾說:

在咱們國內,Ruby 是個小衆的編程語言,但在硅谷,Ruby 很火,被譽爲雲計算時代的 Web 編程語言。

固然了,之因此把 Ruby 放在最後一位,同窗們必定懂個人意思。

最後,但願同窗們可以從這 10 門編程語言中選擇一門本身喜歡的,深刻研究,不管是哪門語言,我相信,只要你精通了,就必定可以找到本身心儀的工做,若是你只是淺嘗輒止,那就很差意思呵呵了。


我是沉默王二,一枚有顏值卻僞裝靠才華苟且的程序員。關注便可提高學習效率,別忘了三連啊,點贊、收藏、留言,我不挑,奧利給🌹

注:若是文章有任何問題,歡迎絕不留情地指正。

若是你以爲文章對你有些幫助,歡迎微信搜索「沉默王二」第一時間閱讀,回覆關鍵字「小白」能夠免費獲取我肝了 4 萬+字的 《Java 小白從入門到放肆》2.0 版;本文 GitHub github.com/itwanger 已收錄,歡迎 star。

相關文章
相關標籤/搜索