中國應該收購QT,然後開源免費
中興事件給我們當頭棒喝,搞了很多房地產,關鍵技術沒掌握多少。阿里收購晶元公司,全民大談中國芯,其實和中國晶元一樣軟甚至比晶元更軟的是軟體。
沒有自己的操作系統,沒有自己的關鍵技術。但是今天我想得了一點,就是GUI圖形界面是僅次於操作系統的一個關鍵組件。而QT是跨平台的C++ GUI框架。linux系統沒有很好的c++圖形界面系統,QT是非常好的一個選擇。QT還能跨平台,有很多關鍵用戶,比如OPIE、Skype、VLC media player、Adobe Photoshop Elements、VirtualBox與Mathematica以及被Autodesk、歐洲空間局、夢工廠、Google、HP、KDE、盧卡斯影業、西門子公司、富豪集團, 華特迪士尼動畫製作公司、三星集團、飛利浦、Panasonic等。還有良好的社區支持和學習氛圍。諾基亞曾經收購了QT,后里又賣了。賣身之後的QT授權就複雜了,開源項目可以免費使用,但是商業項目要付費,這就限制了QT的應用和發展。所以我的國既然要發展IT產業,軟體發展必不可少,反正我的國有的是money,不如花幾億(諾基亞收購QT花了1.6億美元,600萬美元出售的)美元把QT買了,然後徹底免費,並且組建一個團隊,促進QT發展,讓其成為一個能撐起一片天空的GUI系統,再配合Liunx,形成一個全球化、實用化的,類似windows的系統平台,不失為擺脫美國微軟控制的一個方法,否則你的卵子永遠被人捏在手裡。
也算為世界和平做了一件好事。
Linux之所以無法取代Windows,主要還是因為無法盈利,缺乏系統性的投資。很多Linux的關鍵組件維護人很少,大多根本無人維護。中國如果真想擺脫windows的壟斷控制,就有必須設定一個明確的目標,系統性的投資這個項目。
===========
參考:
使用於使用Qt開發的軟體,相同的代碼可以在任何支持的平台上編譯與運行,而不需要修改源代碼。會自動依平台的不同,表現平台特有的圖形界面風格。
Linux/X11:用於X Window System(如Solaris、AIX、HP-UX、Linux、BSD)。支持KDevelop和Eclipse IDE集成
Mac:用於Apple Mac OS X。基於Cocoa框架。支持Universal Binary。支持以Xcode編輯、編譯和測試。
Windows:用於Microsoft Windows。支持Visual Studio集成,也可以使用MinGW編譯
Embedded Linux:用於嵌入式Linux。可以通過編譯移除不常使用的組件與功能。通過自己的視窗系統QWS,不需依賴X Window System,直接寫入Linux幀緩衝。可以減少存儲器消耗。並提供虛擬幀緩衝QVFb,方便在桌面系統上進行嵌入式測試。
Windows CE / Mobile :用於Windows CE
Symbian:用於Symbian platform
Maemo/MeeGo:用於Maemo
Wayland –用於Wayland顯示伺服器,Qt應用程序可以在運行時切換圖形後端,如X與Wayland。
外部移植
自從諾基亞開放了Qt的源代碼給社區後,Gitorious上各種移植紛紛出現。下面是其中一部分:
Qt for OpenSolaris –用於OpenSolaris
Qt for Haiku –用於Haiku OS
Qt for OS/2 –仍然不完整的OS/2 eCS platform移植。
Qt-iPhone –用於iPhone的實驗中產品。
Android-Lighthouse –用於Android的實驗中產品。
Qt for webOS –用於Palm Pre上webOS的實驗中產品。
Qt for Amazon Kindle DX –用於Amazon Kindle DX的實驗中產品。
授權模式
Qt開放源代碼,並且提供自由軟體的用戶協議。使得它可以被廣泛地應用在各平台上的開放源代碼軟體開發中。
Qt提供三種授權方式。三種授權方式的功能、性能都沒有區別,僅在於授權協議的不同。LGPL和GPL是免費發布,商業版則需收取授權費。:
Qt商業版 - Qt商業授權適用於開發專屬和/或商業軟體。此版本適用於不希望與他人共享源代碼,或者遵循GNU寬通用公共許可證(LGPL)2.1版或GNU GPL 3.0版條款的開發人員。提供了技術支持服務。可以任意的修改Qt的源代碼,而不需要公開。
GNU LGPL v. 2.1- Qt 4.5.0及以後的版本開始遵循GNU LGPL。LGPL允許鏈接到它的軟體使用任意的許可證,可以被專屬軟體作為類庫引用、發布和銷售。可以購買支持服務。
GNU GPL v. 3.0 - 如果您希望將Qt應用程序與受GNU通用公共許可證(GPL)3.0版本條款限制的軟體一同使用,或者您希望Qt應用程序遵循該GNU許可證版本的條款,則此版本Qt適用於開發此類Qt應用程序。可以購買支持服務。
Qt模塊
經過多年發展,Qt不但擁有了完善的C++圖形庫,而且近年來的版本逐漸集成了資料庫、OpenGL庫、多媒體庫、網路、腳本庫、XML庫、WebKit庫等等,其核心庫也加入了進程間通信、多線程等模塊,極大的豐富了Qt開發大規模複雜跨平台應用程序的能力,真正意義上實現了其研發宗旨「Code Less; Create More; Deploy Anywhere.」。
由於各家編譯器良莠不齊。Qt本身為了跨平台兼容性,只能以「最低兼容規格」來設計。因此Qt必須具備RTTI、動態創建、Persistence/Serialization的基礎建設,以及建構出自己的容器組件。
下列模塊提供一般的軟體開發
QtCore—QtCore模塊是所有基於Qt的應用程序的基礎,提供信號與槽的對象間通信機制、IO、事件和對象處理、多線程
QtGui—包含了開發圖形用戶界面應用程序所需的功能。使用其支持的各個平台的原生圖形API。支持反鋸齒、向量形變。支持ARGB頂層widget
QtMultimedia—提供了用於多媒體內容處理的QML類型集和C++類集。同時提供訪問攝像頭及音頻功能的API。包含的Qt音頻引擎支持三維音頻回放及管理。
QtNetwork—提供了網路程序設計功能。支持通用協議,如HTTP、FTP和DNS,包括對非同步HTTP 1.1的支持。與較低層的TCP/IP和UDP協議,如QTcpSocket、QTcpServer和QUdpSocket
QtOpenGL—提供在應用程序中使用OpenGL和OpenGL ES加入3D圖形。在Windows平台上亦支持Direct3D
QtOpenVG-提供OpenVG繪圖支持的一個插件
QtScript—包含完全集成的ECMA標準腳本引擎。提供信號與槽機制簡化對象間通信和QtScript調試器。
QtScriptTools—額外的Qt Script組件
QtSql—將資料庫集成至應用程序。支持所有主要的資料庫驅動包括ODBC、MySQL、PSQL、SQLite、ibase、Oracle、Sybase、DB2。
QtSvg—支持SVG格式
QtWebKit—集成WebKit,提供了HTML瀏覽器引擎,便於在原生應用程序中嵌入網路內容和服務。
QtXml—提供了XML文檔的閱讀器和編寫器、支持SAX和DOM。
QtXmlPatternsl—提供了XQuery和XPath引擎支持。
Phonon—集成Phonon,支持跨平台應用程序播放音頻和視頻內容。Qt5開始不支持Phonon。
Qt3Support—模塊提供兼容Qt 3.х.х版本的程序庫
QtDeclarative [34] - engine for declaratively building fluid user interfaces in QML
作業於Qt附帶工具的模塊
QtDesigner—提供擴充Qt Designer的類別。
QtUiTools
QtHelp—協助集成在線文件到應用程序中。
QtTest—提供單元測試框架和滑鼠和鍵盤類比功能。集成Visual Studio和KDevelop。
下列模塊用於Unix開發
QtDBus
下列模塊用於Windows開發
QAxContainer
QAxServer所使用。
推薦閱讀: