簡體   English   中英

使用跨平台框架針對一個平台進行開發有哪些弊端?

[英]what are the disadvantages of using a cross-platform framework to develop for one platform?

最近,我一直在考慮是否應該開始研究另一個框架,因為我只有一台Windows機器,而且我不打算在不久的將來制作跨平台軟件。 因此,為了幫助我做出這個決定...

  1. 當我不打算開發跨平台時,使用跨平台框架有任何不利之處嗎? 直觀地說,專門針對某個平台的框架在該平台上的性能要優於跨平台框架。 但我只是假設那樣。

  2. 請列舉我可以開始研究的框架和庫,以便使用C ++在Windows上進行快速的應用程序開發。 首選具有大量文檔的軟件。 如果您提供了可以幫助我入門的鏈接,我們將不勝感激。

當我不打算開發跨平台時,使用跨平台框架有任何不利之處嗎?

這取決於框架。 大多數框架將自身限制為可在所有平台上使用的功能,這可能會對您有所限制。 您也可能無法利用給定平台的最佳功能或該平台上的最佳開發環境。

請列舉我可以開始研究的框架和庫,以便使用C ++在Windows上進行快速的應用程序開發。

Qt是一個很好的選擇。 它為Windows和其他平台提供了一個非常好的基於C ++的框架。 如果僅需要Windows,則還有其他選項,包括通過C ++Windows運行時 (用於Windows 8開發)或Microsoft基礎類

通過使用跨平台框架,您將錯過特定於平台的功能,例如對Windows 7跳轉列表的編程控制。 由於這些原因,它不會感覺像是本機應用程序,而是像為另一個OS編寫的應用程序的端口。 在許多情況下,這並不重要。

使用模板構建的現代C ++框架不會因為跨平台而使性能變差。 您將簡單地錯過在多個平台上不存在的功能。

通常,跨平台框架的問題是特定於框架的。

例如wxWidgets-它們速度很快,但是沒有太多的GUI類可用。 文檔不是很好,但是已正確更新。

GNome-已被廣泛使用,但需要大量的運行時部署,就內存使用而言,它會更加繁重。

這些都是UI框架。 兩者都是GPL,因此您可以使用它。

諾基亞Qt-這是一個出色的跨平台框架,它不僅是另一個UI,還是用於跨平台開發的完整框架。 但是,Qt的問題是metaobjectcompiler(mod)。 這是一種語言擴展。

我建議您選擇QT作為下一個框架。 它正在積極開發,輕巧,最近已開源,並且可以在LGPL lic下使用。

僅次於其他答案,Qt是一個很棒的框架(希望諾基亞能夠幸免)。

跨平台框架主要有兩個缺點:性能(通常它們會添加本機平台不需要的另一層),並且當然是跨平台的,即通常不支持特定於目標平台的功能。 使用Qt,我從來沒有將性能視為問題。 Qt還引入了許多庫,這些庫實際上擴展了您可以在Windows中本地執行的功能,第二點在這里並不是真正的缺點。

Qt的唯一問題實際上是metaobjectcompiler(moc)。 首先,您會偶然發現一些奇怪的編譯器錯誤,這些錯誤最終是由moc引起的。 只要記住這一點,並為谷歌的錯誤,你會習慣這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM