fbpx
维基百科

KDE Frameworks

KDE Frameworks是一套由KDE社群所編寫的函式庫軟體框架,是KDE Plasma 5KDE Applications 5的基礎,並使用GNU宽通用公共许可证進行散佈。

KDE Frameworks
原作者KDE
開發者KDE
首次发布2014年7月1日,​8年前​(2014-07-01
目前版本
  • 5.100.0 (2022年11月14日;穩定版本)[1]
源代码库
  • invent.kde.org/frameworks
编程语言C++
操作系统LinuxOS XMicrosoft Windows
类型
许可协议GNU宽通用公共许可证(LGPL)[2]
网站www.kde.org
KDE Frameworks 5

其中所包含的各種獨立框架提供了各種常用的功能,包括了硬體整合、檔案格式支援、控件、繪圖功能、拼寫檢查及更多。

KDE Frameworks相當於將KDE Platform 4重寫為一套單獨且分開、跨平臺的模組,可以很容易的提供給所有基於Qt的程式使用。從KDE Platform到KDE Frameworks的轉換歷時超過3年,由頂尖的技術貢獻者們指導[3]

在KDE Frameworks 5.0釋出後,因為沒有嚴苛的底線壓力,開發者們將會專注在加入新的功能到KDE Frameworks 5的組件中[4]。像是Firefox與KDE的更佳整合[5]

KDE Frameworks 5執行時函式庫與KDE Platform 4執行時函式庫一同安裝應該是可行的,這樣應用程式就可以選擇要用哪一種[6]

採用

KDE Frameworks中的原始碼有一部份在KDElibs 1中就有使用。除了KDE Software Compilation以外,也可能有其他許多的採用者,像是桌面环境,如Razor-qtLXQtMoonLightDE英语MoonLightDE或是Hawaii英语Hawaii (desktop environment),或是應用程式,像是AmarokAvogadro等。

開發

因為KDE Software Compilation被分割為KDE Frameworks 5、KDE Plasma 5KDE Applications 5、每個子專案都可以選擇自己的開發步伐。KDE Frameworks 5將會以每個月為基礎釋出[7]且使用git[8][9]

應用程式介面及應用二進制介面穩定性

平台發布是開始一個系列(版本號X.0)的主要發布。這些版本可以打破二進制檔案和原始碼相容性英语source code compatibility,或者換句話說,所有以下版本(X.1, X.2, ...)將保證原始碼和二進制兼容性(应用程序接口应用二进制接口)。例如,該軟體使用KDE 3.0開發將可以工作在所有(未來)發布的KDE 3,相對於應用程序開發使用KDE 2,不保證能夠利用KDE 3的函式庫。KDE的主要版本號按照Qt的發布週期,這意味著KDE SC 4是基於 Qt 4,而KDE 3是基於Qt 3。

軟體架構

結構

Frameworks有著清晰明確的依賴性結構,分為「類型」及「層次」。「類別」是指運行時依賴性:

  • 功能項沒有運行時依賴性。
  • 整合指定的代碼可能需要運行時依賴性,取決於使用何種作業系統或平臺。
  • 解決方案有強制性的運行時依賴性。

「層次」是指編譯時對其他Frameworks的依賴性:

  • 層次1的Frameworks在Frameworks內沒有依賴性,只需要Qt及其他相關的函式庫。
  • 層次2的Frameworks只能依賴於層次1的Frameworks。
  • 層次3的Frameworks可以依賴其他層次3的Frameworks以及層次1及層次2的Frameworks。

組件

KDE Frameworks包含了超過60個軟體包。這些在KDE SC 4中包含在一個單一的大軟體包中,稱為kdelibs,其中一些已經不再是KDE的一部份,但已併入Qt 5.2[10]

KDE Frameworks根據其依賴其他函式庫的程度分類為四種不同的層次。層次1的Frameworks只依賴Qt或是其他系統函式庫。層次2的Frameworks可以依賴層次1的函式庫、或是其他系統函式庫等等[11]

Frameworks的完整列表
名稱 層次 描述
Frameworkintegration 4 將Qt程式與KDE Plasma Workspaces整合。
KActivities 3 KDE活動管理員的核心組件。
KApiDox 4 構建標準格式及風格的API文件所使用的指令稿及資料。
KArchive 1 方便讀取、創造及操作「壓縮檔」格式,像是zipTar
KAuth 2 提供一個方便的、系統整合的方法在執行需要提高權限的動作結束後降低回一般使用者權限的小幫手工具。
KBookmarks 3 網路瀏覽器的書籤管理。
KCMUtils 3 KDE系統設定模組的實用工具。
KCodecs 1 提供一種使用各種編碼的方法來操作字串。
KCompletion 2 字串補完框架。
KConfig 1 儲存應用程式設定值的後端。
KConfigWidgets 3 設定對話框的控件
KCoreAddons 1 核心應用程式的功能及對作業系統的存取的實用工具。
KCrash 2 提供攔截及處理應用程式當機的支援。
KDBusAddons 1
KDE4Support 4 提供在KDE Frameworks 5中已經移除的kdelibs4模組及API。
KDeclarative 3
KDED 3
KDesignerPlugin 3
KDESu 3
KDEWebkit 3
KDNSSDFramework 2
KDocTools 2
KEmoticons 3
KF5Umbrella 1
KFileAudioPreview 4
KGlobalAccel 3
KGuiAddons 1
KHTML 4
Ki18n 1 KDE的國際化支援。
KIconThemes 3 KDE的圖示主題模組。
KIdleTime 1
KImageFormats 1
KInit 3
KIO 3
KItemModels 1
KItemViews 1
KJobWidgets 2
KJS 1
KJSEmbed 3
KMediaPlayer 3
KNewStuff 3
KNotifications 3
KNotifyConfig 3
KParts 3
KPlotting 1
KPrintUtils 3
KPty 2
Kross 3
KRunner 3
KService 3
KTextEditor 3
KTextWidgets 3
KUnitConversion 2
KWalletFramework 3
KWidgetsAddons 1
KWindowSystem 1 允許與視窗系統互動。它提供了一個存取全域狀態(這裡的所有項目均在根視窗上)的所有關於特定視窗的資訊NETRootInfo。此類型包含了一個視窗管理員及客戶端。這是KWin及其他圖形殼層,像是工作管理員,的基礎。

建基於X11的特有類型,我們有一個方便的API,KWindowInfo,而KWindowSystem提供了與視窗系統無關的API給應用程式使用。

KXMLGUI 3
Plasma-framework 3
Solid 1
Sonnet 1 拼寫檢查
ThreadWeaver 1

歷史

KDE Frameworks第一個版本的版本號是5,代表其整個代碼庫是繼承KDE Platform的事實,但因為KDE Platform的版本號只有到4,而且其大多數代碼只是將先前的版本重新包裝,所以使用版本號5來代表。

在Frameworks 5中的主要變更為,增加了模組化的程度。在較早的KDE版本中,其函式庫被包裝為一個單一的大軟體包。在Frameworks中,這些函式庫會分裂成較小的數個獨立的軟體包。這有利於其他基於Qt的軟體利用這些函式庫,因為依賴性可以被保持在最低程度[3]

而KDE 4是基於第四版的Qt部件工具箱開發,Frameworks 5則是使用第五版的Qt。Qt 5能增加QML的使用量,一個簡單的,基於JavaScript的敘述性程式語言,用以設計使用者介面。使用QML的圖形渲染引擎可以帶來橫跨不同裝置且更流暢的使用者介面[3]

參考資料

  1. ^ 1.0 1.1 KDE Frameworks 5.100.0. 2022年11月14日 [2022年11月16日]. 
  2. ^ First release of KDE Frameworks 5. 2014-07-07 [2014-08-20]. (原始内容于2015-09-05). 
  3. ^ 3.0 3.1 3.2 Howard Chan. KDE Release Structure Evolves. KDE. 2013-09-04 [2014-02-27]. (原始内容于2020-11-12). 
  4. ^ KF5 Update Meeting Minutes 2014-w28. 2014-07-08 [2014-08-20]. (原始内容于2016-03-07). 
  5. ^ Firefox + KDE integration: Getting FF to use Dolphin reliably. 2014-07-03 [2014-08-20]. (原始内容于2018-05-15). 
  6. ^ Coinstallability with KDE Platform 4. [2014-08-20]. (原始内容于2020-12-01). 
  7. ^ Release schedule for KDE Frameworks 5. [2014-08-20]. (原始内容于2020-10-28). 
  8. ^ Git workflow for Frameworks. [2014-08-20]. (原始内容于2020-10-20). 
  9. ^ . [2014-08-20]. (原始内容存档于2014-08-22). 
  10. ^ Jos Poortvliet. Qt 5.2 - Foundation for KDE Frameworks 5. Dot.kde.org. 2013-12-17 [2014-03-10]. (原始内容于2020-11-11). 
  11. ^ Howard Chan. Frameworks 5. Dot.kde.org. 2013-09-25 [2014-03-10]. (原始内容于2020-11-26). 

frameworks, 此條目可参照英語維基百科相應條目来扩充, 2022年8月16日, 若您熟悉来源语言和主题, 请协助参考外语维基百科扩充条目, 请勿直接提交机械翻译, 也不要翻译不可靠, 低品质内容, 依版权协议, 译文需在编辑摘要注明来源, 或于讨论页顶部标记, href, template, translated, page, html, title, template, translated, page, translated, page, 标签, 是一套由kde社群所編寫的函式庫及軟體框架, 是kde. 此條目可参照英語維基百科相應條目来扩充 2022年8月16日 若您熟悉来源语言和主题 请协助参考外语维基百科扩充条目 请勿直接提交机械翻译 也不要翻译不可靠 低品质内容 依版权协议 译文需在编辑摘要注明来源 或于讨论页顶部标记 a href Template Translated page html title Template Translated page Translated page a 标签 KDE Frameworks是一套由KDE社群所編寫的函式庫及軟體框架 是KDE Plasma 5及KDE Applications 5的基礎 並使用GNU宽通用公共许可证進行散佈 KDE Frameworks原作者KDE開發者KDE首次发布2014年7月1日 8年前 2014 07 01 目前版本5 100 0 2022年11月14日 穩定版本 1 源代码库invent wbr kde wbr org wbr frameworks编程语言C 操作系统Linux OS X Microsoft Windows类型系統函式庫軟體框架许可协议GNU宽通用公共许可证 LGPL 2 网站www wbr kde wbr orgKDE Frameworks 5 其中所包含的各種獨立框架提供了各種常用的功能 包括了硬體整合 檔案格式支援 控件 繪圖功能 拼寫檢查及更多 KDE Frameworks相當於將KDE Platform 4重寫為一套單獨且分開 跨平臺的模組 可以很容易的提供給所有基於Qt的程式使用 從KDE Platform到KDE Frameworks的轉換歷時超過3年 由頂尖的技術貢獻者們指導 3 在KDE Frameworks 5 0釋出後 因為沒有嚴苛的底線壓力 開發者們將會專注在加入新的功能到KDE Frameworks 5的組件中 4 像是Firefox與KDE的更佳整合 5 KDE Frameworks 5執行時函式庫與KDE Platform 4執行時函式庫一同安裝應該是可行的 這樣應用程式就可以選擇要用哪一種 6 目录 1 採用 2 開發 2 1 應用程式介面及應用二進制介面穩定性 3 軟體架構 3 1 結構 3 2 組件 4 歷史 5 參考資料採用 编辑KDE Frameworks中的原始碼有一部份在KDElibs 1中就有使用 除了KDE Software Compilation以外 也可能有其他許多的採用者 像是桌面环境 如Razor qt LXQt MoonLightDE 英语 MoonLightDE 或是Hawaii 英语 Hawaii desktop environment 或是應用程式 像是Amarok Avogadro等 開發 编辑因為KDE Software Compilation被分割為KDE Frameworks 5 KDE Plasma 5及KDE Applications 5 每個子專案都可以選擇自己的開發步伐 KDE Frameworks 5將會以每個月為基礎釋出 7 且使用git 8 9 應用程式介面及應用二進制介面穩定性 编辑 平台發布是開始一個系列 版本號X 0 的主要發布 這些版本可以打破二進制檔案和原始碼相容性 英语 source code compatibility 或者換句話說 所有以下版本 X 1 X 2 將保證原始碼和二進制兼容性 应用程序接口及应用二进制接口 例如 該軟體使用KDE 3 0開發將可以工作在所有 未來 發布的KDE 3 相對於應用程序開發使用KDE 2 不保證能夠利用KDE 3的函式庫 KDE的主要版本號按照Qt的發布週期 這意味著KDE SC 4是基於 Qt 4 而KDE 3是基於Qt 3 軟體架構 编辑結構 编辑 Frameworks有著清晰明確的依賴性結構 分為 類型 及 層次 類別 是指運行時依賴性 功能項沒有運行時依賴性 整合指定的代碼可能需要運行時依賴性 取決於使用何種作業系統或平臺 解決方案有強制性的運行時依賴性 層次 是指編譯時對其他Frameworks的依賴性 層次1的Frameworks在Frameworks內沒有依賴性 只需要Qt及其他相關的函式庫 層次2的Frameworks只能依賴於層次1的Frameworks 層次3的Frameworks可以依賴其他層次3的Frameworks以及層次1及層次2的Frameworks 組件 编辑 KDE Frameworks包含了超過60個軟體包 這些在KDE SC 4中包含在一個單一的大軟體包中 稱為kdelibs 其中一些已經不再是KDE的一部份 但已併入Qt 5 2中 10 KDE Frameworks根據其依賴其他函式庫的程度分類為四種不同的層次 層次1的Frameworks只依賴Qt或是其他系統函式庫 層次2的Frameworks可以依賴層次1的函式庫 或是其他系統函式庫等等 11 Frameworks的完整列表名稱 層次 描述Frameworkintegration 4 將Qt程式與KDE Plasma Workspaces整合 KActivities 3 KDE活動管理員的核心組件 KApiDox 4 構建標準格式及風格的API文件所使用的指令稿及資料 KArchive 1 方便讀取 創造及操作 壓縮檔 格式 像是zip及Tar KAuth 2 提供一個方便的 系統整合的方法在執行需要提高權限的動作結束後降低回一般使用者權限的小幫手工具 KBookmarks 3 網路瀏覽器的書籤管理 KCMUtils 3 KDE系統設定模組的實用工具 KCodecs 1 提供一種使用各種編碼的方法來操作字串 KCompletion 2 字串補完框架 KConfig 1 儲存應用程式設定值的後端 KConfigWidgets 3 設定對話框的控件 KCoreAddons 1 核心應用程式的功能及對作業系統的存取的實用工具 KCrash 2 提供攔截及處理應用程式當機的支援 KDBusAddons 1KDE4Support 4 提供在KDE Frameworks 5中已經移除的kdelibs4模組及API KDeclarative 3KDED 3KDesignerPlugin 3KDESu 3KDEWebkit 3KDNSSDFramework 2KDocTools 2KEmoticons 3KF5Umbrella 1KFileAudioPreview 4KGlobalAccel 3KGuiAddons 1KHTML 4Ki18n 1 KDE的國際化支援 KIconThemes 3 KDE的圖示主題模組 KIdleTime 1KImageFormats 1KInit 3KIO 3KItemModels 1KItemViews 1KJobWidgets 2KJS 1KJSEmbed 3KMediaPlayer 3KNewStuff 3KNotifications 3KNotifyConfig 3KParts 3KPlotting 1KPrintUtils 3KPty 2Kross 3KRunner 3KService 3KTextEditor 3KTextWidgets 3KUnitConversion 2KWalletFramework 3KWidgetsAddons 1KWindowSystem 1 允許與視窗系統互動 它提供了一個存取全域狀態 這裡的所有項目均在根視窗上 的所有關於特定視窗的資訊NETRootInfo 此類型包含了一個視窗管理員及客戶端 這是KWin及其他圖形殼層 像是工作管理員 的基礎 建基於X11的特有類型 我們有一個方便的API KWindowInfo 而KWindowSystem提供了與視窗系統無關的API給應用程式使用 KXMLGUI 3Plasma framework 3Solid 1Sonnet 1 拼寫檢查ThreadWeaver 1歷史 编辑KDE Frameworks第一個版本的版本號是5 代表其整個代碼庫是繼承KDE Platform的事實 但因為KDE Platform的版本號只有到4 而且其大多數代碼只是將先前的版本重新包裝 所以使用版本號5來代表 在Frameworks 5中的主要變更為 增加了模組化的程度 在較早的KDE版本中 其函式庫被包裝為一個單一的大軟體包 在Frameworks中 這些函式庫會分裂成較小的數個獨立的軟體包 這有利於其他基於Qt的軟體利用這些函式庫 因為依賴性可以被保持在最低程度 3 而KDE 4是基於第四版的Qt部件工具箱開發 Frameworks 5則是使用第五版的Qt Qt 5能增加QML的使用量 一個簡單的 基於JavaScript的敘述性程式語言 用以設計使用者介面 使用QML的圖形渲染引擎可以帶來橫跨不同裝置且更流暢的使用者介面 3 參考資料 编辑 1 0 1 1 KDE Frameworks 5 100 0 2022年11月14日 2022年11月16日 First release of KDE Frameworks 5 2014 07 07 2014 08 20 原始内容存档于2015 09 05 3 0 3 1 3 2 Howard Chan KDE Release Structure Evolves KDE 2013 09 04 2014 02 27 原始内容存档于2020 11 12 KF5 Update Meeting Minutes 2014 w28 2014 07 08 2014 08 20 原始内容存档于2016 03 07 Firefox KDE integration Getting FF to use Dolphin reliably 2014 07 03 2014 08 20 原始内容存档于2018 05 15 Coinstallability with KDE Platform 4 2014 08 20 原始内容存档于2020 12 01 Release schedule for KDE Frameworks 5 2014 08 20 原始内容存档于2020 10 28 Git workflow for Frameworks 2014 08 20 原始内容存档于2020 10 20 KDE Frameworks5 API documentation 2014 08 20 原始内容存档于2014 08 22 Jos Poortvliet Qt 5 2 Foundation for KDE Frameworks 5 Dot kde org 2013 12 17 2014 03 10 原始内容存档于2020 11 11 Howard Chan Frameworks 5 Dot kde org 2013 09 25 2014 03 10 原始内容存档于2020 11 26 取自 https zh wikipedia org w index php title KDE Frameworks amp oldid 73234205, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。