統信開發套件

統信開發套件

DTK(Development ToolKit)全稱是統信開發套件,是基於Qt開發的一整套通用開發框架。 其主要覆蓋日常圖形套用、業務套用、系統定製套用等開發需求。截止到2021年5月DTK已完成 5 個版本疊代,108 + 次更新,累計提交代碼近 20 萬行,已被遷移至超過 10 個 Linux 發行版。

基本介紹

發展歷程,主要功能,dtkcore,dtkgui,widget,版本記錄,V1.0,V2.0,V3.0,V4.0,V5.0,運行環境,作業系統,軟體環境,指令集環境,

發展歷程

2015 年,Deepin 團隊開發 Deepin v15 版本的時候,因為開發控制中心(基於 Qt Widgets),開發的過程中抽象出了 DUI 控制項庫(從控制中心開發起三個月),只有一些通用性的控制項,倉庫名稱為DUI 。
2016 年,隨後開發其他項目,DUI 中加的東西越來越多,也不僅限於 UI 方面的控制項,之後就改名為了 deepin-tool-kit 項目。
2017 年,隨後成為了 DDE 桌面環境的底層開發庫,封裝了桌面組件和上層套用的通用型視窗、控制項、工具類,隨著項目越來越大,編譯也越來越慢,於是拆分為了 dtkcore、dtkwidget、dtkwm(僅三個倉庫),舊的 deepin-tool-kit 倉庫地址處於廢棄狀態。
2019 年,新增加了 dtkgui 模組,廢棄了 dtkwm(不可跨平台,強依賴 X11,因此廢棄),此後分為 dtkcore、dtkgui、dtkwidget,角色分別對應 Qt core、gui、widgets 模組。
2020 年,按照如今的理解為,dtk = dtkwidget + dtkgui + qt5integration + dtkcore + ... 等多個項目的總稱呼
2021年,DTK由原來的Deepin tool kit深度開發工具套件,更名為Development ToolKit全稱是統信開發工具套件,並支持UOS、Deepin作業系統,且具備平台化,提供商店、簽名、開發工具、IDE外掛程式等。
2021年4月25日,統信開發套件DTK發布 。

主要功能

由dtk主文檔可以看出當前的主要功能有:

dtkcore

提供應用程式開發中的工具類,如程式日誌、檔案系統監控、格式轉換等工具類。

dtkgui

包含了開發圖形用戶界面應用程式所需的功能。主要是控制視窗主題這種外觀性,調色板等信息。

widget

提供各種dtk基礎控制項,方便開發統一風格的套用。
其中隨著時間的變化,界面的 UI 樣式也發生了比較大的變化,當時deepin v15版本的控制中心,還在螢幕右側,不透明偏向黑色,到後來的成為白色偏透明色,直到uos v20一個單獨的控制中心。
而 dtk 是屬於繪畫自定義皮膚控制項的基礎核心,然後在它的基礎上面做了一次封裝, 封裝了一系列 Dxxxx 開頭的控制項(如 DPushButton 等), 然後再由套用開發的同學們,開發出一款款套用,全部使用 dtk 的控制項。那樣開發出來的界面,就和系統的風格保持了一致性;而對於 win 系列的軟體,也可以使用 wine來在 此 linux 上面運行;而對於第三方的套用軟體,使用 chameleon style 啟動,來保證和系統的風格一致。

版本記錄

V1.0

DUI(Deepin UI Library)誕生與Deepin作業系統,實現系統控制中心的開發需求

V2.0

DUI改名為DTK(Deepin Tool Kit)並添加眾多基礎工具庫

V3.0

初步支持Windows、Mac系統。
套用於DDE桌面環境底層開發
實現通用開發框架
模組化:dxcb / dtkcore / dtkwidget / dtkwm

V4.0

實現同源異構,同步CPU架構
添加dtkgui,並廢棄dtkwm

V5.0

Deepin Tool Kit 改名為 Development ToolKit
支持UOS、Deepin作業系統
實現平台化,提供商店、簽名、開發工具、IDE外掛程式

運行環境

作業系統

Windows,IOS,UOS,KOS,Linux各發行版(如Debian,Ubuntu)

軟體環境

  • gtk+-2.0
  • mtdev
  • libqtxdg
  • Qt5-Core
  • Qt5-Gui
  • Qt5-Widgets
  • Qt5-DBus
  • Qt5-Multimedia
  • Qt5-MultimediaWidgets
  • Qt5-Svg
  • Qt5-OpenGL
  • Qt5-X11extras
  • Qt5-Core-Private
  • Qt5-Widgets-Private

指令集環境

X86,ARM,MIPS

相關詞條

熱門詞條

聯絡我們