對于大部分程序員,C語言是學習編程的第一門語言,很少有不了解C的程序員。
C語言除了能讓你了解編程的相關概念,帶你走進編程的大門,還能讓你明白程序的運行原理,比如,計算機的各個部件是如何交互的,程序在內存中是一種怎樣的狀態,操作系統和用戶程序之間有著怎樣的“愛恨情仇”,這些底層知識決定了你的發展高度,也決定了你的職業生涯。
如果你希望成為出類拔萃的人才,而不僅僅是碼農,這么這些知識就是不可逾越的。也只有學習C語言,才能更好地了解它們。有了足夠的基礎,以后學習其他語言,會觸類旁通,很快上手,7 天了解一門新語言不是神話。
C語言概念少,詞匯少,包含了基本的編程元素,后來的很多語言(C++、Java等)都參考了C語言,說C語言是現代編程語言的開山鼻祖毫不夸張,它改變了編程世界。
正是由于C語言的簡單,對初學者來說,學習成本小,時間短,結合本教程,能夠快速掌握編程技術。
在世界編程語言排行榜中,C語言、Java 和 C++ 霸占了前三名,擁有絕對優勢,如下表所示:
-- |
2015年01月榜單 |
2015年06月榜單 |
2018年01月榜單 |
|||
---|---|---|---|---|---|---|
排名 |
語言 |
占有率 |
語言 |
占有率 |
語言 |
占有率 |
1 |
C |
16.703% |
Java |
17.822% |
Java |
14.215% |
2 |
Java |
15.528% |
C |
16.788% |
C |
11.037% |
3 |
Objective-C |
6.953% |
C++ |
7.756% |
C++ |
5.603% |
4 |
C++ |
6.705% |
C# |
5.056% |
Python |
4.678% |
5 |
C# |
5.045% |
Objective-C |
4.339% |
C# |
3.754% |
6 |
PHP |
3.784% |
Python |
3.999% |
JavaScript |
3.465% |
7 |
JavaScript |
3.274% |
Visual Basic .NET |
3.168% |
Visual Basic .NET |
3.261% |
8 |
Python |
2.613% |
PHP |
2.868% |
R |
2.549% |
9 |
Perl |
2.256% |
JavaScript |
2.295% |
PHP |
2.532% |
10 |
PL/SQL |
2.014% |
Delphi/Object Pascal |
1.869% |
Perl |
2.419% |
2017年,由于小型軟件設備的蓬勃發展以及汽車行業底層軟件的增加,C語言還拿下了「 年度編程語言 」的桂冠,成為 2017 年全球增長最快的編程語言。下表列出了最近 10 年的“年度編程語言”:
年 份 |
2017 |
2016 |
2015 |
2014 |
2013 |
2012 |
2011 |
2010 |
2009 |
2008 |
---|---|---|---|---|---|---|---|---|---|---|
優勝者 |
C |
Go |
Java |
JavaScript |
Transact-SQL |
Objective-C |
Objective-C |
Python |
Go |
C |
當然,C語言也不是沒有缺點,畢竟是70后老人,有點落后時代,開發效率較低,后來人們又在C語言的基礎上增加了面向對象的機制,形成了一門新的語言,稱為C++ 。
C語言難嗎?
和 Java、C++、Python、C#、JavaScript 等高級編程語言相比,C語言涉及到的編程概念少,附帶的標準庫小,所以整體比較簡潔,容易學習,非常適合初學者入門。
編程語言的發展大概經歷了以下幾個階段:
匯編語言 --> 面向過程編程 --> 面向對象編程
-
匯編語言是編程語言的拓荒年代,它非常底層,直接和計算機硬件打交道,開發效率低,學習成本高;
-
C語言是面向過程的編程語言,已經脫離了計算機硬件,可以設計中等規模的程序了;
-
Java、C++、Python、C#、PHP 等是面向對象的編程語言,它們在面向過程的基礎上又增加了很多概念。
C語言出現的時候,已經度過了編程語言的拓荒年代,具備了現代編程語言的特性,但是這個時候還沒有出現“ 軟件危機 ”,人們沒有動力去開發更加高級的語言,所以也沒有太復雜的編程思想。
也就是說,C語言雖然是現代編程語言,但是它涉及到的概念少,詞匯少,思想也簡單。C語言學習成本小,初學者能夠在短時間內掌握編程技能,非常適合入門。
C語言是計算機產業的核心語言
也許是機緣巧合,C語言出現后不久,計算機產業開始爆發,計算機硬件越來越小型化,越來越便宜,逐漸進入政府機構,進入普通家庭,C語言成了編程的主力軍,獲得了前所未有的成功,操作系統、常用軟件、硬件驅動、底層組件、核心算法、數據庫、小游戲等都使用C語言開發。
雷軍說過,站在風口上,豬都能飛起來;C語言就是那頭豬,不管它好不好,反正它飛起來了。
C語言在計算機產業大爆發階段被萬人膜拜,無疑會成為整個軟件產業的基礎,擁有核心地位。
軟件行業的很多細分學科都是都是基于C語言的,學習數據結構、算法、操作系統、編譯原理等都離不開C語言,所以大學將C語言作為一門公共課程,計算機相關專業的同學都要學習。
C語言被譽為“上帝語言”,它不但奠定了軟件產業的基礎,還創造了很多其它語言,例如:
- PHP、Python 等都是用C語言開發出來的,雖然平時做項目的時候看不到C語言的影子,但是如果想深入學習 PHP 和 Python,那就要有C語言基礎了。
- C++ 和 Objective-C 干脆在C語言的基礎上直接進行擴展,增加一些新功能后變成了新的語言,所以學習 C++ 和 Objective-C 之前也要先學習C語言。
C語言是有史以來最為重要的編程語言:要進入編程行業高手級別必學C語言,要掙大錢必學C語言,要做黑客、紅客必學C語言,要面試名企、外企、高薪職位必學C語言。
原文地址:https://blog.csdn.net/hezeyujiang/article/details/79498853