close

文| 白開水不加糖

出品 | OSC開源社區(ID:oschina2013)

在線學習平台 Springboard 羅列了一個最容易學習和最難學的編程語言 Top 5 榜單。
事實上,問一個程序員最容易學習的語言,就像問一個人他們最喜歡的冰淇淋。每個人都有自己的偏好,永遠沒有真正的正確答案。正如開發者和教育家 Marek Zaluski 曾經說的那樣,"編程語言是由程序員創造的,為程序員服務"。這幾乎就像一個只有少數人知道的內幕秘密,可能會使得那些剛進入軟件工程領域的人感到畏懼。
但另一方面,不掌握流行的編程語言,你就無法成為一名優秀的軟件工程師。本文大致確定並比較了最簡單的編程語言與高級編程語言,具體如下:

簡單易學的編程語言

1、HTML
HTML 是用來為大多數網頁編碼的語言。它使用標籤和元素來定義如何顯示文本、圖像和互動形式。HTML 經常得到層疊樣式表(CSS)的支持,以定義複雜的樣式;以及用於腳本程序的 JavaScript。Springboard 認為,HTML 的易用性使其成為入門者的理想語言。並指出,該語言的容易學習具體表現在:
它具有簡單的結構,帶有人類可讀的開始和結束標籤
你可以使用 WYSIWYG 編輯器並在拆分視圖中觀看代碼更改
你可以輕鬆找到並修復bug
2、JavaScript
Springboard 認為,JavaScript 的簡單之處在於:
它是為非程序員設計的,對初學者友好;是理想的入門語言
它是如此普遍,以至於大多數瀏覽器都用作默認環境
不需要編譯器來查看 JavaScript 的運行情況,並且可以立即查看結果
JavaScript 有一個龐大的社區,對入門者有幫助
3、C
C 是一種通用語言,大多數程序員在學習更複雜的語言之前都會學習它。從 Unix 和 Windows 到 Tic Tac Toe 和 Photoshop,當今最常用的幾個應用程序都是基於 C 構建的。它的簡單之處在於:
語法簡單,只有 32 個keywords
數據結構易於理解
4、Python
作為 ABC 語言的繼承者,Python 是一種高級的通用編程語言。Python 是網絡開發人員、數據科學家、ML/AI 專業人士和嵌入式應用開發人員的最愛。Springboard 認為它很容易學習的原因在於:
該語言執着於代碼的可讀性,經常使用英文單詞
它以大量使用whitespace而聞名,使其不那麼令人生畏
它有幾個用於各種應用的庫

它得到了一個巨大的程序員社區的支持,他們可能對你的所有問題都有答案。

5、Java

Java 是一種基於類、面向對象的通用編程語言。它旨在跨環境運行 —— 一次編寫,隨處運行 (WORA)。它是後端開發人員和安全應用程序中最受歡迎的語言之一。它的易於學習表現在:
直觀的語法,簡潔且適合初學者
它是一種結構化語言,幾乎沒有偏差

如果你以前有過面向對象編程的經驗,那就更容易了

難學的編程語言

1、C++
C++ 是 C 的擴展。據說谷歌 Chromium 瀏覽器、微軟的幾個應用程序、甚至摩根斯坦利的金融建模都是用 C++ 完成的。它的難點在於:
具有複雜的語法以支持多功能性
是一種寬容的語言 —— 你可以做一切技術上可能的事情,即使在邏輯上不正確

最好由已經有 C 語言編程基礎的人學習

2、Prolog

Prolog 是最早的邏輯編程語言之一,現在在人工智能應用程序和自然語言處理中得到採用。難點在於:
它是一種非常規語言,數據結構不同於其他編程語言
它需要一個不合理的 competent compiler
它迫使程序員預先認真思考他們的邏輯

在線資源和 Prolog 代碼不能簡單直接地適用於你的需求

3、LISP

它是繼 FORTRAN 之後第二古老的編程語言,至今仍被用於高級系統和人工智能領域。難點在於:
是一種具有特定領域解決方案的碎片化語言

LISP 中的語法廣泛使用小括號,這可能很難習慣

4、Haskell

Haskell 是一種基於 lambda calculus 的多態靜態類型純函數式語言。它以數學家 Haskell B Curry 的名字命名,主要用於研究、工業應用和教學。
難點在於:
遵循 100% 的函數範式,不像大多數接受命令式命令的現代語言
很難理解 Haskell 中編譯和錯誤修復的細微差別

涉及大量專業術語,這可能會讓初學者望而卻步

5、Malbolge

Malbolge 以但丁《地獄》中的第八層地獄命名,是 "esolang"(深奧的編程語言)的一個 example。第一個 Malbolge 程序花了兩年時間才被寫出來。這一類的其他語言有 INTERCAL 和 Cow,大部分人會把這類語言當作一種挑戰。
難點在於:
使用晦澀難懂的符號
沒有多少程序員花時間學習它,因此學習資源較少

是一種自我修改的語言,會導致不穩定的行為

你心目中最難學和最易學的編程語言是哪種?歡迎前往評論區討論。

推薦閱讀

(點擊標題可跳轉閱讀)

乾貨 | 公眾號歷史文章精選

我的深度學習入門路線

我的機器學習入門路線圖

重磅!

AI有道年度技術文章電子版PDF來啦!

掃描下方二維碼,添加AI有道小助手微信,可申請入群,並獲得2020完整技術文章合集PDF(一定要備註:入群+ 地點 + 學校/公司。例如:入群+上海+復旦。

長按掃碼,申請入群

(添加人數較多,請耐心等待)

感謝你的分享,點讚,在看三連

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()