隨著編程技術發展,各種更聰明、更先進的語言出現讓 C 語言顯得老舊。但其實 C 語言應用不僅十分廣泛,更可提高編程人員的基礎能力,這會協助初級程式員找到他們心目中理想工作。有外國專家就分享了五大學習 C 語言的理由。
1. 簡單易學
簡單易學不足以形容 C 語言,你可以建立一個程式包含一把類型資料、連接軸和結構,包裝為一些功能。這就會變成你所需要的東西。
很簡單地包裝你的思想和 C 程式結構,舉例說,所有程式都有主功能為啓動,以及帶有其他功能。這讓新程式員較容易明白。相比之下,學習 Ruby 程式就相對地難得多。
在標準 C 資料架裡有 29 個頁頂文件( Header Files ),而通常都只用到 5-10 個。最重要是這些 Header Files 只有一個有用功能,只有少數讓你能把他們記下。
2. 沒有捷徑,你只能被迫從基礎練習
學習 C 語言中,是沒有捷徑。你必須以邏輯及不斷練習為自己建立最有效的排列。你需要學習在不同場景下怎樣實質地運行,就像高程度語言 — Ruby 一樣。當然了,有些人會覺得這並不是好事(浪費時間),但對於初級程式員來說,基礎永遠都是最重要。
3. 你不能逃避記憶管理
指針( Pointer )是必要的,但對於學習 C 語言來說會帶來麻煩及混淆。如果你對此認識不深,指針是個多變數的,而它會引申另一變數。指針讓你直接進入某記憶本體,但同時都會令它們有力和危險。
在此你可以使用數組,這樣你就能用指針,從而製造一個程式把資料組群以數組形式集中(或一些連結的結構)。指針教你數據結構怎樣在硬碟裡儲存。活躍記憶分配讓你思考你花費了硬碟裡多少空間。以空間換時間(space-time tradeoff)就是指怎樣以 C 語言使用空間。
4. 有趣的 Bit 、 Bytes 及數據類型
講講數據類型吧。不同數據類型在記憶裡佔據不同空間。有些你可能會覺得「人人皆知」,但這其實在所有語言裡都不明顯地顯示出來。
一個字元花了 1 byte (或 8 bits)記憶,這表示那兒有一個以八個 0 和 1 組合而成的字元。舉例說,英文字 “a” 以 bits 表示的話,根據 ASCII 字型來表示: 0110 0001 // eight bits = one byte
這其實是十分奇妙的,只有 0, 1 就已成為了一個語言,電腦就是透過這些數字明白你想幹甚麼。 C 語言就是這樣的重點。
5. 學習 C 語言後不會再對新程式語言感到害怕
當人們初次看 C 語言,感到害怕或困惑是正常的。這些插入語及分號代表了甚麼?為甚麼有這麼多字?不過當明白箇中玄機後,其實是「一理通,百理明」。
本文作者 Laura Rokita 就分享了自己的經歷:
「當我學習 C 語言兩個月後,我需要在 PHP 裡撰寫程式。 PHP 需要使用很多分號和大括號,不過我並不感到害怕,當我嘗試仔細閱讀後,我就已知道怎樣進行下一步。事實上我沒有時間閱讀和寫 PHP ,即使如此已經怎樣寫這條公式:a = x > y ? x : y; 。這一刻我深深明白到 PHP 是個甚麼回事,同時我覺得 C 語言根本並不是想像中困難。當我能夠寫出 PHP 時,其實我已經學會了 C 語言。」
從此看來學習 C 語言時,在起步一刻可能會有困難,但在明白了一些重要因素後相信就能好好活用 C 語言。
Source: Medium.com