www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 技術(shù)學(xué)院 > 技術(shù)前線
[導(dǎo)讀]上位機開發(fā) 常用的平臺及語言

一、有哪些上位機開發(fā)平臺(優(yōu)缺點和使用場景)

由于上位機概念的廣泛性,所以上位機開發(fā)平臺可以是任何開發(fā)平臺。這里介紹幾個常用的經(jīng)典的上位機開發(fā)平臺及其特性。

VB(Visual Basic)

開發(fā)語言:Basic(BASIC是一種直譯式的編程語言,在完成編寫后不須經(jīng)由編譯及連接等步驟即可執(zhí)行,類似腳本語言)

開發(fā)工具:Visual Basic(語言簡單易用,對面向?qū)ο缶幊毯投嗑€程編程支持不完整)

適用平臺:WINDOWS ALL

平臺特點:以面向?qū)ο蟮乃枷腴_發(fā)可視化圖形界面的應(yīng)用程序。采用面向?qū)ο蟪绦蛟O(shè)計方法(Object-Oriented Programming),把程序和數(shù)據(jù)封裝起來作為一個對象,每個對象都是可視的。開發(fā)人員在界面設(shè)計時,可以直接用Visual Basic 6.0的工具箱在屏幕上"畫"出窗口、菜單、命令按鍵等不同類型的對象,并為每個對象設(shè)置屬性。在流行的時候有大量功能庫可以使用,比如典型的數(shù)據(jù)庫管理控件。VB屬于在剛剛出現(xiàn)圖形界面開發(fā)階段的開發(fā)平臺。由于平臺老舊以及basic編程語言的缺點,現(xiàn)在已經(jīng)沒有人使用了。雖然現(xiàn)在有了“Visual Basic .NET”但是使用的人很少。

VC(Virtual C++)

開發(fā)語言:面向?qū)ο笳Z言C++(微軟更具C++標(biāo)準(zhǔn)實現(xiàn)的微軟版本, 編譯器采用cl.exe)

開發(fā)工具:Visual C++

適用平臺:WINDOWS ALL

平臺特點:以面向?qū)ο蟮乃枷腴_發(fā)可視化圖形界面的應(yīng)用程序。最大的亮點是MFC框架。是微軟公司提供的一個類庫,以C++類的形式封裝了Windows API,并且包含一個應(yīng)用程序框架,以減少應(yīng)用程序開發(fā)人員的工作量??蚣鼙容^精簡,對于初學(xué)者理解電腦軟件開發(fā)框架有很大幫助。這也成了他的缺點,導(dǎo)致使用MFC開發(fā)軟件效率相對很低(程序猿要做大量界面編碼工作)。MFC開發(fā)出來的軟件界面也很簡陋,主要原因是要想美化需要程序猿自己做大量美化工作(量大到不適合個人開發(fā)者做這個美化工作)。當(dāng)然在電腦端剛剛出現(xiàn)圖形界面開發(fā)時候,MFC這個框架簡直大量簡化了程序猿的工作量,并且提高了程序的質(zhì)量。因此一度非常流行,以至于現(xiàn)今(2020年)還有這個MFC開發(fā)平臺的身影(大多處于維護階段的老項目)。

Delphi

開發(fā)語言:Object Pascal

開發(fā)工具:delphi7

適用平臺:WINDOWS ALL

平臺特點:Delphi 擁有一個可視化的集成開發(fā)環(huán)境(IDE),采用面向?qū)ο蟮木幊陶Z言O(shè)bjectPascal和基于部件的開發(fā)結(jié)構(gòu)框架。Delphi它提供了非常多個可供使用的構(gòu)件,利用這些部件,開發(fā)人員可以快速地構(gòu)造出應(yīng)用系統(tǒng)。開發(fā)人員也可以根據(jù)自己的需要修改部件或用Delphi本身編寫自己的部件。和VC相比,Delphi更簡單、更易于掌握,而在功能上卻絲毫不遜色;和VB相比,Delphi則功能更強大、更實用。 Delphi確實功能豐富開發(fā)效率高,到目前也還有人用。只是絕大多數(shù)是在做老項目的開發(fā)了,新項目基本上不會再用Delphi寫。主要原因是Delphi不是微軟自家的孩子。隨著微軟系統(tǒng)大量的系統(tǒng)更新,以及微軟自己的C#開發(fā)平臺興起,使得Delphi跟不上節(jié)奏了(Pascal編程語言本身也很少在其他開發(fā)平臺使用)。

WinForm

開發(fā)語言:C#

開發(fā)工具:Visual Studio

適用平臺:WINDOWS ALL

平臺特點:WinForm是目前很流行的Windows應(yīng)用程序開發(fā)平臺,現(xiàn)在大部分windows應(yīng)用程序都是使用WinForm開發(fā),提供對最新windows系統(tǒng)特性的支持,且擁有大量的第三方類庫。全面支持各種開發(fā)技術(shù)。開發(fā)的程序?qū)indows所有系統(tǒng)都有非常好的兼容性和不俗的性能。屬于微軟的.net開發(fā),擁有強大齊全的各種封裝好的成熟類庫。借助優(yōu)秀的C#開發(fā)語言。是現(xiàn)階段Windows應(yīng)用程序開發(fā)的不二之選。由于使用的人和公司多,Winform開發(fā)有大量博客可以參考,工作機會也很多,相比于其他開發(fā)平臺更好找工作。(至于擔(dān)心發(fā)布軟件還需要安裝net運行庫,沒有擔(dān)心的必要,微軟在系統(tǒng)中就自帶來常用的net運動庫,同時安裝包安裝程序的時候還可以檢測是否缺net運行庫,并引導(dǎo)安裝)。

WPF

開發(fā)語言:C#

開發(fā)工具:Visual Studio

適用平臺:WINDOWS ALL

平臺特點:WPF是在Winform的基礎(chǔ)上,重新使用新框架開發(fā)的應(yīng)用程序編程平臺。對winform開發(fā)完全兼容。wpf引入了全新的界面布局框架XAML,可以輕松的創(chuàng)建出豐富美觀的界面,同時可以使用高級的動畫和特效,對屏幕自適應(yīng)比winform更好。wpf使用DirectX來繪制控件(使用顯卡繪制),winform使用GDI來繪制控件(使用CPU繪制),因此wpf現(xiàn)實效果好,且不會大量占用cpu。由于WPF比Winform所使用的技術(shù)新,目前還是使用Winform的多一些。當(dāng)然想要軟件最終效果好,更炫酷一點,那么你就選擇WPF。

Qt

開發(fā)語言:C++ (編譯器:linux: g++、macos: clang、win32: mingw、msvc)

開發(fā)工具:Qt Creater、Visual Studio

適用平臺:WINDOWS ALL、Linux、 MacOS

平臺特點:Qt是一個跨平臺應(yīng)用程序開發(fā)框架,用于開發(fā)桌面程序、嵌入式程序和手機app。支持的操作系統(tǒng)平臺包括:Linux, OS X, Windows, VxWorks, QNX, Android, iOS, BlackBerry, Sailfish OS等。Qt最大的特點是跨平臺開發(fā),即:一次編碼多系統(tǒng)編譯。就是說只寫一次代碼,然后把這個代碼拿到各個系統(tǒng)上分別編譯。即可生成各個系統(tǒng)下的原生應(yīng)用程序(并不是java那種依賴運行庫的跨平臺)。因此Qt開發(fā)的應(yīng)用程序在各個系統(tǒng)下都可以獲得和原生應(yīng)用程序同樣的性能。其次Qt使用面向?qū)ο笳Z言C++開發(fā),因此運行效率比C#高。適用于開發(fā)一些需要大量運算的應(yīng)用程序。比如圖像處理軟件,特效制作軟件等。由于Qt使用C++語言編程,因此以前使用VC++寫的老項目可以輕松使用

Qt重新開發(fā)(C++庫可以直接使用,之前C++代碼寫的邏輯函數(shù)可以復(fù)制過來直接使用)。這么好的平臺為什么用的人和公司不太多呢。因為之前Qt是收費的,用于開發(fā)商業(yè)軟件避免不了要交這個費用(不交錢法律上吃官司)?,F(xiàn)在Qt支持LGPL協(xié)議,意味著可以免費開發(fā)商業(yè)軟件了。qt也支持拖拽添加控件和布局軟件頁面。同時還支持使用qss動態(tài)修改控件樣式。再加上Qt的layout動態(tài)布局功能??梢詫崿F(xiàn)非常好看的軟件。這一點比winform好。外觀高度定制修改和wpf是一個水平。這里需要說明Qt編寫程序跨平臺編碼的前提是統(tǒng)一使用Qt提供的系統(tǒng)庫函數(shù),如果你直接使用了Windows的系統(tǒng)庫函數(shù),那么這個程序就只能在windows下編譯并使用了,除非你在其他系統(tǒng)上編譯時候替換成其他系統(tǒng)相應(yīng)功能的系統(tǒng)庫函數(shù)。一般功能開發(fā)來說Qt提供的庫函數(shù)足夠豐富,除非是系統(tǒng)特有的功能需要Qt開發(fā)中特別處理。

Android

開發(fā)語言:Java

開發(fā)工具:Android Studio

適用平臺:安卓手機、安卓平板、安卓電視等

平臺特點:安卓開發(fā)官方的開發(fā)平臺就是Android Studio,是開發(fā)安卓app的官方指定平臺。其他各個開發(fā)平臺雖然也能開發(fā)安卓app,但是實際開發(fā)效果和Android Studio沒法相比。因此你需要開發(fā)安卓的上位機客戶端,就不要用雜七雜八的開發(fā)平臺了,安心學(xué)習(xí)java和Android Studio吧。雖然現(xiàn)在的混合app開發(fā)技術(shù)很火爆,但是如果你的安卓app是配合硬件使用的,就不建議使用混合app開發(fā)技術(shù)了,因為使得項目使用的技術(shù)變復(fù)雜了,即便是你能搞定,對于后續(xù)接手的程序猿維護開發(fā)就不方便了(對于以硬件為主的公司而言)。需要任意一臺電腦和測試手機或平板即可開發(fā)。

IOS

開發(fā)語言:Object-C、swift

開發(fā)工具:Xcode

適用平臺:蘋果手機、蘋果平板

平臺特點:Xcode是開發(fā)IOS軟件的唯一且官方的開發(fā)平臺。如你公司的硬件設(shè)備需要開發(fā)IOS的app。那么這個開發(fā)平臺幾乎是唯一也是最好的選擇。開發(fā)需要一臺蘋果電腦、一個公司或個人開發(fā)者賬號(按年收費)、一臺蘋果手機或平板。

LabVIEW

開發(fā)語言:拖拽圖形開發(fā)

開發(fā)工具:LabVIEW

適用平臺:Wondows、MacOS、Linux

平臺特點:LabVIEW是一種程序開發(fā)環(huán)境,由美國國家儀器(NI)公司研制開發(fā),LabVIEW與其他計算機語言的顯著區(qū)別是:其他計算機語言都是采用基于文本的語言產(chǎn)生代碼,而LabVIEW使用的是圖形化編輯語言編寫程序,產(chǎn)生的程序是框圖的形式。LabVIEW開發(fā)環(huán)境集成了工程師和科學(xué)家快速構(gòu)建各種應(yīng)用所需的所有工具,旨在幫助工程師和科學(xué)家解決問題、提高生產(chǎn)力和不斷創(chuàng)新。也就是說LabVIEW是幫助硬件開發(fā)工程師測試硬件的工具。通過拖拽畫圖即可運行出一個相當(dāng)于上位的客戶端。其集成的眾多控件都是和硬件相關(guān)的,因此只適用于硬件開發(fā)測試,不適合其他任何上位軟件開發(fā)。LabVIEW開發(fā)的軟件也可以打包成獨立的安裝包。

MATLAB

開發(fā)語言:MATLAB

開發(fā)工具:MATLAB

適用平臺:Wondows、MacOS、Linux

平臺特點:MATLAB是工程師和科學(xué)家使用的一個高級數(shù)學(xué)工具軟件。雖然是個工具但是他具有開發(fā)圖形交互界面以及計算機通信的全部功能。因此也在這里稍微介紹一下。MATLAB主要用于計算機視覺、信號處理、機器人等控制系統(tǒng)、模型設(shè)計以及算法驗證。提供了Python、Java、C、C++等外部語言接口,可以供外部其他程序調(diào)用(用于調(diào)試與驗證算法)。因此在開發(fā)特殊行業(yè)的上位機軟件時候需要用到MATLAB??梢岳肕ATLAB單獨開發(fā)一個測試上位機端,也可以和其他開發(fā)平臺聯(lián)合開發(fā)上位端。MATLAB支持把MATLAB算法轉(zhuǎn)換成C/C++代碼、HDL、和CUDA代碼,便于算法的應(yīng)用。

二、硬件工程師做簡單的上位機軟件,應(yīng)該選擇哪個平臺

對于硬件開發(fā)工程師來說,想要做一個上位機軟件無論你選哪個開發(fā)平臺都不簡單,就像要上位機程序猿開發(fā)嵌入式硬件一樣難,都需要深入學(xué)習(xí)。除非你使用LabVIEW。

由于硬件工程師做一個上位機一般需求也不會太復(fù)雜,他的需求就是“怎樣用最少的精力開發(fā)一個基本能用的上位工具軟件,我也不打算深入去開發(fā)專業(yè)的上位機軟件”。

根據(jù)這個需求,從最簡單到復(fù)雜依次推薦的開發(fā)平臺如下:

LabVIEW:

優(yōu)點:投入最少的精力即可學(xué)會,而且可以快速開發(fā)出可用的上位機軟件

缺點:僅適合硬件特別相關(guān)的功能,不方便定制開發(fā)常用軟件

Qt:

優(yōu)點:可以滿足所有高級軟件功能開發(fā)。使用C++語言開發(fā),與硬件開發(fā)者使用的C最接近,相對容易上手開發(fā)。這里不推薦GTK+,是因為GTK+雖然是使用C語言編程,更加方便硬件工程師開發(fā),但是因為可參考的文檔和例子太少,讓硬件開發(fā)人員去讀GTK官方文檔并理解軟件開發(fā)上的一些概念,實在不理智。這里不推薦VC++,是因為VC++畢竟老舊了各種類庫也不如qt豐富,且學(xué)習(xí)VC++所需要的精力和學(xué)習(xí)Qt所用的精力沒有多少區(qū)別。因此還不如學(xué)習(xí)更好的qt?,F(xiàn)在也可以在網(wǎng)上找到很多qt的例子和博客,不用像以前擔(dān)心參考示例太少。

缺點:除了學(xué)習(xí)C++語法之外,還需要學(xué)習(xí)電腦軟件開發(fā)的一些概念,以及學(xué)習(xí)Qt框架知識和Qt庫函數(shù)使用方法

C#WinForm:

優(yōu)點:可以滿足所有高級軟件功能開發(fā)。使用高級語言C#開發(fā),開發(fā)效率高

缺點:需要全新學(xué)習(xí)C#語言,以及電腦軟件開發(fā)概念以及圖形界面庫函數(shù)功能

三、開發(fā)商業(yè)軟件應(yīng)該選擇哪個開發(fā)平臺

商業(yè)公司開發(fā)的軟件是給眾多客戶使用的,軟件的好壞對應(yīng)著公司的收益。因此,開發(fā)商業(yè)軟件要選擇開發(fā)平臺的時候,就比個人開發(fā)者面臨的限制多很多。一般面臨的限制如下:

開發(fā)平臺的普遍性:是否有很多人用,是否能隨時招聘到對應(yīng)平臺的程序猿

開發(fā)平臺的穩(wěn)定性:開發(fā)出來的軟件是否穩(wěn)定、安全、易用

開發(fā)平臺是否收費:是否收費也很重要,有些平臺收費很貴,每賣一個軟件都有交使用費用就很不合算

開發(fā)平臺是否持久:開發(fā)平臺的公司是否對這個開發(fā)平臺做持續(xù)維護和新技術(shù)更新

以上為一個公司選擇開發(fā)平臺基本考慮要素。除此之外,所選平臺只要能滿足功能需求即可。

目前滿足以上基本考慮要素的PC軟件(偏上位機軟件)開發(fā)平臺有:

C#_WinForm

C#_WPF

C++_QT

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉