跨平台工具的甜蜜陷阱

programming  

跨平台 (cross-platform) 一直是程式設計圈子不斷出現的話題,從 C 開始,程式設計師試著處理平台可攜性 (portability),到了 Java,跨平台變成了一個響亮的口號,影響後來,近年來的高階語言很少不能跨平台的,甚至還有 Haxe 這種直接以跨平台為主打的語言。隨著行動科技及 Raspberry Pi 等裝置的興起,程式設計師又要面對更多的異質平台。如果以 “cross-platform mobile framework” 為關鍵字,也可以搜尋到不少新的框架,像是 Xamarin、Corona SDK、RubyMotion、LiveCode、Xojo 等等。對於不想學習那麼多種程式語言的程式設計者來說,跨平台工具就像是蜜糖般誘人。實際上真的那麼好嗎?

領域專用語言:程式語言的利基市場

programming  

對於程式語言有興趣的讀者,可能會主動接觸數個主流市場的程式語言,包括 C++、Java、Python 等,甚至,會開始將注意力伸向其他相對冷門的語言,像是 Clojure、Haskell 等。除了學習許多不同的語言外,是否也有想過創造自己的程式語言呢?如果我們將 Python 視為軟體,那麼,Python 命令稿就是操作 Python 的方法。程式語言背後的執行者就是編譯器和直譯器,而製作編譯器和直譯器不是黑魔法,而是有科學的方法可遒循。那麼,我們要如何切入程式語言的領域呢?

值得注意的程式語言:D、Go、Rust

programming  

在早期,電腦硬體效能不足,腳本語言僅用來做簡單的工作,而大部分的應用程式還是用 C/C++ 這類編譯語言開發。後來,硬體效能逐漸進步,雖然腳本語言先天不快,相對來說,速度也足夠了。而腳本語言易於使用、開發速度快,而越來越受到歡迎。不過,在某些需要效能的時候,腳本語言就顯出其不足,這時候,用 C/C++ (或 Java) 改寫效能瓶頸的部分,再包裝成套件或模組,就是一種典型的開發模式。隨著運算速度及環境部署的需求,這類開發模式逐漸令人無法滿意,而直接回歸 C/C++ 又過於低階。著眼這一方面的需要,出現了 D、Go、Rust 等新興的編譯語言。

Previous 3 / 19 Next