Skip to content

為何要選擇技術路線

學程式,最難的往往不是寫代碼,而是「選路」。

打開技術論壇,你會看到 Python、JavaScript、Rust、Kotlin... 這些名詞像潮水一樣湧過來。很多人告訴你「這個最紅」或「那個最好找工作」,但卻很少有人告訴你,這些技術背後的邏輯是什麼,以及它們是否真的適合「現在的你」。

這篇文章不會只教你選熱門的工具,而是要帶你從開發者的視角,看清楚不同技術路線的風景與坑洞。

通用

如果沒有特別偏好也沒有專業需求的話,我建議選擇 Python,Python 具有最多、全面的功能,涵蓋數據分析到網站設計,甚至 AI 相關都有,雖然在許多專業的場景中他的表現不如許多其他的語言,但是廣泛的功能性決定了他是入門的最佳選擇之一。

網站開發

網站開發是 最好入門的 GUI(圖形化介面),因為只要一個瀏覽器,你的程式碼就能立刻變成視覺畫面。但我並不推薦初學者在一開始就選擇網頁開發,原因在於其混亂的依賴關係與破碎的語言特性,這不利於建立嚴謹的計算機科學架構。

如果你是為了資工系打基礎或追求職涯長遠發展,建議遵循以下技術路徑,並盡量不用使用套件與框架:

  • HTML (結構): 理解網頁的骨架,學習標籤(Tag)的語意化。
  • CSS (樣式): 學習排版邏輯,這部分對工程師來說通常是最痛苦的。
  • JavaScript (邏輯): 這是重中之重。不推薦 PHP,因為 JS 透過 Node.js 已經可以達成全棧開發,且語法演進更符合現代程式設計趨勢。
JS 經驗分享

我在高一的時候有做一個專案 - DC 報氣象機器人,那時我大概學了一年的C++,一開始用python做都很順利,但後來 Discord API 改版,所以我只能去官網查教學(英文)並使用,那簡直是個地獄,我不僅要忍受難懂的程式語法,還需要看頭痛的英文教學,我最後花了大概一個學期才做完。

手機應用

Android 開發我有些基本了解,如果你不熟悉程式設計,這不是一個很好的入門選擇,雖然他的環境相對安定,但是複雜的套件管理與高層次軟件設計概念 (如OOP等) 會讓初學者感到困惑,以下為四個當前主要的語言與環境選擇:

  • Android Studio (Kotlin/Java): Android 最佳,支持很多新的功能,且 Kotlin/Java 常見於現代開發。
  • Flutter (Dart): 上手極快,通用 Adnroid 與 IOS 但部分功能會無法使用,Dart 這個語言也就這裡能看到他了。
  • React Native (JS): 通用,但通常是學過 React (網頁開發) 才來學他的。
  • Xcode (Swift): 只有需要深耕 Apple 生態才需要學 Swift。

遊戲

與網站開發和手機應用一樣,我不推薦從遊戲開始上手,遊戲開發需要處理比手機應用更複雜的專案配置,許多時候需要自己尋找素材,程式部分也需要高階的程式設計能力。

  • Unity (C#)
  • Unreal (C++)

系統性學習

我比較推薦初學者入門從底層語言開始學習,更能建立完整、系統性的認識,可以通過練習寫演算法和刷題增進邏輯能力,初學者不建議刷 leetcode。 每種語言都有他擅長的領域與侷限,沒有完美的語言,很多時候項目會使用不只一種語言,都懂一些可以增進團隊效率,建議從三個類別都學一個並專精一門。

  • 底層: 性能好、難調整
    • C/C++: 專業必選,最扎實與基礎
    • Rust: 較C安全,也是現在很流行的語言
  • Runtime: 性能較差,但更改簡單
    • Java/Kotlin: 較主流
    • C#
  • 腳本語言
    • Python: 最通用選擇
    • JavaScript: 快速開發

其他語言與工具

這些都是與開發關係較小或是不太像傳統程式的,但在特定領域有不可取代的效果。

MATLAB: 數據分析

SQL: 資料庫使用

Blender: 動畫與建模

總結

對於初學者而言,選擇語言時,請先釐清你的動機:

  • 無特定目標: 選 Python。它能幫你解決 80% 的日常問題,且學習門檻最低。

  • 追求深耕: 從 C++ / Rust 開始。這會讓你理解電腦運行的本質,之後轉任何語言都能快速上手。

剛入門很難做出可以使用的軟體,請不要感到挫折。

看到這裡,你可能會覺得我一直在打壓網頁或手機開發。其實不然,這些領域的產出最有成就感,也是現代科技的基石。

我的核心觀點是:「不要把工具當成基礎。」

如果只想要快速解決問題或是興趣實驗,產出快速的 JS 和 Flutter 也是完全可以考慮的選項,大部分程式語言與應用並沒有那麼的雷,但我必須保證我不會推薦學習曲線陡峭的方式。