一些UI技術及其相關內容的整理
阿新 • • 發佈:2020-10-09
首先,UI指User Interface(使用者介面),早期使用C(console 控制檯那個黑框框)UI較多,現代主要使用G(graphic)UI。
宣告:本文主要為個人整理,見識甚淺,如有差錯請諒解。內容不詳,還請多參考其他文章。
畫了張圖:
下方格式為 程式語言 或者 程式語言:具體的技術名稱
一、前後端分離(UI與後臺邏輯)
在前後端分離前,人們是這樣寫的:
#include <graphics.h> // 引用圖形庫標頭檔案 #include <conio.h> int main(void) { initgraph(320, 320); // 建立繪圖視窗,大小為 320x320 畫素 ellipse(10, 50, 150,150); //繪製圓形 _getch(); // 按任意鍵繼續 closegraph(); // 關閉繪圖視窗 }
不便於維護等,於是人們把圖形繪製的程式碼與邏輯程式碼分開寫(出現了前後端分離這一概念?)。
再後來出現了這樣的:
<!-- 宣告按鈕 btn -->
<button name="btn"></button>
void buttonClick() {
//修改按鈕上的文字
btn.content= "Hello World!"; }
這種標記性語言繪製介面的方法大受歡迎(屬於前後端分離技術)。具體有html(網頁)、qml(QT)、xaml(WPF\UWP)、android ui(以.xml結尾)等。java在PC端貌似沒有這種東西,對java桌面程式開發並不友好。
二、跨平臺技術
可以開發出位於兩種及以上客戶端的軟體的技術,十分受歡迎。
QT:QT程式可以在win、mac等PC端使用。
electron:PC、web。(有說法:PC端相當於拖著個瀏覽器再放網頁)
Flutter:PC、移動端、web等。(實現方法)
。。。
對於廣大的java web方向學生可以考慮學下QT,來給畢設增加一個PC客戶端。
三、其它
OpenGL、DirectX。(寫遊戲可以瞭解下)機械視覺:Matlab、Opencv(可以C/C++或者python來上手)、Halcon、Visionpro。