Linux有哪些像Delphi、WinForm、WPF的可視化編程環境?
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
人們對于程序有一個執念,那就是-“如果能動動鼠標,拖拉一些控件,一個程序就好了,那是個多么美好的世界!" 在Windows發布之后,這種感覺似乎更加強烈! Windows剛發布的時候,其實有一股程序員的“淘汰潮”。很多Dos程序在面對Windows復雜的API,都迷茫了。什么CreateWindow、什么GetMessage、各種Button,新的Windows機制讓很多Dos時代的程序員如同進入了一個新的世界,程序復雜度急劇上升,難度變大! 這時候,有個軟件拯救了他們,那就是Visual Basic! 沒錯,就是我們的老朋友-VB。 很多人在使用過VB之后,再對比一下C語言的Windows程序,難易程度上下立判。一個基礎的Windows骨架程序,包含C代碼、Resoruce文件,代碼總行數在100+;類似的功能的MessageBox VB程序,拖動一下按鈕,然后編寫一個“Click”方法就可以了,代碼行數3行。 從此,世界就進入了一個可視化的世界! 對我們的影響有多深遠呢? 現在到處都是“VB”化的環境,我們來說一些他們的名字,大家一定耳熟能詳,譬如零代碼平臺,譬如可視化大屏。 VB就像打了一扇大門,給各位老板提了一個醒,打開了一扇大門,可視化拯救世界,程序編寫如此簡單,從此就走上了一條越來越卷的道路! 很快,其它語言的“VB”也很快推出,如同雨后春筍。 Borland推出了著名的Delphi,基于Object Pascal;Sybase推出了PowerBuilder,專注于數據庫領域,有自己專利的Data Window技術。 為了對抗Java,微軟在語言進化到“自動垃圾收集(GC)”的階段,推出了C#語言,以及基于C#的WinForm框架,隨后又出了高級的一點的WPF,然后是WinUI。 那么這股“GUI”框架在Linux上面有沒有對應的實現呢? 其實是有的,并且有上面提到的各種編程語言的對應版本。 1、GamBas(Basic) 這是一個老牌的Basic編程環境,可以提供非常多的程序模板,編寫不同的程序。 在程序類型方面,可以提供命令行、數據庫、Web等特定類型的Template Project! 當然,他提供真正的可視化編程環境,拖動控件,編寫響應事件,一個程序就構建起來了! 2、Lazarus(Pascal) 這個可以看做“Delphi”的Linux版本,和Delphi7非常類似,提供了獨特的"多個窗體同時懸浮,一起工作”的界面。 這種界面,非常具有辨識度。因為我們普遍使用的Visual Studio、Vs Code、IDEA等節目,都是多文檔+多Tab界面,而Lazarus的界面非常“Delphi”化,讓人一看便知! 很多人可能質疑Lazarus的功能,覺得他類似于一個“玩具”產品。其實這是一個有點過時的概念。 Lazarus更像是Delphi7的正宗延續。現在的Delphi似乎走上了一條不同的道路,在走多端融合,各種操作系統都支持的道路。走的結果,有點像Java的GUI程序。各種平臺都支持,但表現都比較差。則Lazarus則堅持“Delphi7”路線,精簡實用! 功能方面,有的人甚至認為Lazarus已經比正宗的Delphi要好了。這可能是很多人意想不到的事情-開源比正宗的商業作品好,它也說明了一個道理-不作死就不會死! Lazrus比Delphi差的一點,就是沒有那么多商業控件!目前這種情況,正在慢慢改變! 如果你是一個Delphi“遺老”,可以嘗試一下Lazarus,不要錢,還好用,何樂而不為呢? 3、Avalonia(C#) 這個是C#的一個跨平臺Gui框架。 Avalonia,和微軟官方的WPF框架非常類似。如果你是一個WPF的高手,Avalonia會讓你的技能在Linux也有用武之地! 相同的窗體(xaml),基礎的xml代碼可以直接拷貝使用。你可以在Windows上面設計Avalonia程序,然后在Linux上面即可! 當然,如果是純正的Linux平臺,可能需要你深厚的WPF功底了,手寫一下xaml代碼。 4、Swing、JavaFX(Java) 談到跨平臺,當然少不了Java。 在這個方面,Java提供了Swing和JavaFX,Swing是比較老的框架;當然JavaFX也不年輕了。 Java在GUI方面一直都不是很支持,處在一個“有,但是不怎么好用”的狀態。 該文章在 2024/12/17 12:26:30 編輯過 |
關鍵字查詢
相關文章
正在查詢... |