開發GUI,會選擇什麼語言?

自卑毀人一生

一句話,要視平臺而定。因為每個操作系統都會有官方推薦的開發GUI的編程語言,使用官方推薦的編程語言開發出來的GUI肯定在美觀性以及程序執行效率上視最高的。下面我就將介紹一下幾個常見平臺的GUI開發語言。

  1. Windows。微軟官方推薦的Windows GUI程序開發語言是C#.C#是微軟公司為了抗衡Java推出的一款跨平臺的現代編程語言,C#吸收了C++即Java的諸多優點,擯棄了C/C++等編程語言的一些缺陷。C#解釋器能夠自動進行垃圾回收,內存分配等繁瑣的工作,讓開發者的注意力集中於編程本身。C#下的GUI開發框架有winform,WPF,使用C#可以快速的開發出高效美觀的Windows應用程序。

  2. 安卓。Android是谷歌公司推出的一款移動操作系統,安卓下目前使用最多的GUI編程語言是JAVA,但目前谷歌官方主推的GUI編程語言是Kotlin.Kotlin是一門語法簡單(類似於python)極易上手的編程語言。此外微軟旗下的C#語言通過Xamarin框架也能完成安卓GUI程序的開發(配置上會有一些麻煩)。

  3. IOS.蘋果公司主推的IOS系統GUI編程語言為swift(目前OC也可以,但使用者回越來越少)。Swift語法簡潔,相對OC而言引入了很多現代編程語言的要素,如自動垃圾回收,自動內存管理機制。此外,上文使用提到的Xamarin框架,同樣可以用在iOS的開發上,由此可見C#語言的生命力之頑強。

  4. Linux。Linux有諸多發行版本,不存在官方推薦的GUI編程語言之說。但在實際開發中,使用最多的GUI編程語言還是C++(JAVA也可以,但使用的不多),使用C++配合Qt可以讓程序員快速開發出功能強大的GUI程序。在許多嵌入式設備上(如ARM板),C++配合Qt就成了唯一的GUI開發組合了。

開發GUI的編程語言還有很多,歡迎大家關注太科羅技頭條號,並在下方積極留言討論。

太科羅技

看你做什麼項目了。

Web

如果是 Web ,HTML + CSS + JS 是基礎。儘管從這三個基礎上完全可以做出 GUI 界面,但是實際產品中考慮跨瀏覽器兼容、開發效率等等問題,開發時往往會採用各種 JS 框架,jQuery,React,Angular,Vue,Bootstrap,Materialize,Foundation,Semantic UI,Ant Design 等等,不勝枚舉。也可以自己設計,利用 Sass, Less, Stylus, postcss 等preprocessor 避免寫龐大 CSS 項目時很蛋疼。

R&D

Python + Qt 或 Java 算是研發中做 GUI 最常用的。利用 QtQuick 或 JavaFX 可以做出更美觀的界面。

移動平臺

iOS 和 Android 都有自己的開發工具體系,也都可以找到各種UI模版。PhoneGap 可以跨平臺設計移動應用的GUI。如果碰巧已經有 React 寫的 Web 應用,可以高效地遷移到 React Native。

桌面應用

類似於移動平臺,Windows,macOS,Linux 都有自己的 GUI 接口和開發工具。如果想一次開發,跨平臺打包發佈,Electron + electron-builder 是個可選項,和 React,Vue等 JS 框架結合更強大。只是打包後的 Electron 應用往往從 100MB 起步。

Unity3D

儘管 Unity 更多用於開發遊戲,但是其商店內也有很多優質收費或免費的 UI 資源。從桌面電腦,到移動設備,到WebGL,到遊戲終端,打包發佈任何平臺都可以。對於一些不牽涉複雜業務邏輯的簡單非遊戲應用,用 Unity 也是一種不走尋常路的選擇。


花辣子米

我們假設你要做的是桌面應用。我看你在問題裡給出的技術是偏向這個的。

第一個問題,要不要跨平臺?就是說要不要支持非Windows系統。

如果答案是否,那麼使用.net, winform 或者wpf是一個很好的選擇,因為在這一塊,沒有其它技術比這個更成熟。

如果答案是要誇平臺,那麼,可能你electron 或者Python 可能是個不錯的選擇。

個人比較偏向electron。


分享到:


相關文章: