C語言奇妙之旅_發展歷史

C語言的發展歷史(簡化)

1972年 -> 在B語言的基礎上設計出了一種新的語言, 沒錯, 就是我們講的C語言

1973年(初) -> C語言主體完成, 重寫了UNIX操作系統, 隨着UNIX的發展, C語言自身也在不斷的完善


爲什麼選擇C語言

一、 在計算機領域, C語言大小通吃

  1. 可以寫網站後臺程序 -> 使用Selet epoll poll函數等。
  2. 可以寫出絢麗的GUI界面 -> 建議在windows中學習, Linux用作服務器的更多。
  3. 強大的程序庫 -> 內存分配, 網絡和URL解析、 字符串處理等。
  4. 可以寫大型遊戲的引擎 -> 要用gtk+, 比較難, C++相比C是一個更普遍的選擇, 使用C++的引擎有COCOS2D-x 面向3a開發的udk等都是最典型的例子。
  5. 可以寫出另一個語言 -> 比如 C++、 JAVA。
  6. 可以寫操作系統和驅動程序 -> ReactOS、 Windows、 Linux等。

     一句話, 沒有C語言幹不了的事情。

 

二、 掌握了C語言, 其他類似語言不學自通

      就算沒有不學自通的話, 學習別的編程語言也不會花太大的力氣才能學會,

 

三、 C語言的優點

  1. 代碼簡潔、 緊湊 、 靈活性高
  2. 使用方便
  3. 功能強大
  4. 執行效率高
  5. 結構化語言

 

四、 當然沒有完美的程序C語言也是有缺點的

  1. 危險性高
  2. 開發走起長
  3. 可移植性不強

程序設計語言

        第一代 -> 機器語言 (以二進制代碼0、 1, 構成)

        第二代 -> 彙編語言 (add加法、 sub減法等)

        第三代 -> 高級語言 (比如C語言)

速度對比(大致的瞭解一下)

機器語言 < 彙編語言 < 高級語言

機器語言的速度最快。


什麼是面向過程 什麼是面向對象(大致的瞭解一下)

爲什麼面向過程會比面向對象慢的, 可以用五子棋程序來說明。

面向過程

開始遊戲 -> 黑子先走 -> 繪畫畫面 -> 判斷輸贏 -> 輪到白子 -> 繪製畫面 -> 判斷輸贏 -> 返回步驟2(黑子先走)


        面向對象

黑白雙方, 這兩方的行爲是一模一樣的 -> 棋盤系統、 負責繪製畫面 -> 規則系統, 負責判定(例如  犯規、輸贏等)

 

第一類對象(玩家對象)負責接受用戶輸入, 並告知第二類對象(棋盤對象)棋子佈局的變化, 棋盤對象接收棋子的變化就要負責在屏幕上面顯示出這種變化, 同時利用第三類對象(規則系統)未對棋盤進行判定。

 

        其實學習終歸是一件痛苦的事情, 所以呢, 面對學習你還是的得要認真用功, 努力的去學習, 享受的是什麼? 是學習之後獲得的那種成就, 快樂是從成就當中來的。        ————翁愷

 

課後學習

  • 瞭解C語言是如何演變而來的。
  • 瞭解機器語言、 彙編語言、 高級語言的區別、 及優缺點。
  • 在本文下方評論(指正作者的錯誤 與 隨筆意見), 讓作者寫出更好的文章。
發佈了32 篇原創文章 · 獲贊 7 · 訪問量 3628
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章