Copperspice
介紹
CopperSpice是一組單個庫,可用於在C ++中開發跨平台軟件應用程序。這是一個根據LGPL V2.1許可證發布的完全開源項目,最初是從QT框架中得出的。在過去的幾年中,Copperspice已經完全分歧,目的是提供一流的GUI庫以團結C ++社區。
我們開發Copperspice的動機是改變基本設計,並將現有框架變成C ++開發人員的一組庫。我們通過利用現代C ++功能,新技術和現代工具來實現這一目標。 Copperspice當前需要C ++ 17或更新。
Copperspice中可用的庫包括:
- CSCORE
- CSGUI
- CSMultimedia
- CSNetwork
- csopengl
- CSScript
- CSSQL
- CSSVG
- CSVULKAN
- cswebkit
- CSXML
- csxmlpatterns
還有幾個開源BSD許可的庫,由Copperspice使用,可作為獨立庫,適用於開發C ++應用程序的任何人。
- cscrypto
- cslibguard
- CSPART
- CSPOINTER
- cssignal
- CSSTRING
系統要求
要使用CopperSpice庫A C ++ 17編譯器和A C ++ 17標準庫。
Copperspice Cmake構建文件與源分佈一起提供。我們建議您的項目還應將CMAKE和NINJA用於構建系統。
有關從源構建的更多信息,請參閱我們的CopperSpice概述文檔或kitchensink演示應用程序以獲取示例cmake項目文件。
建築
Copperspice庫是使用CMAKE BUILD系統構建的。
使用Copperspice庫
- 任何使用CopperSpice的C ++應用程序都可以使用CMAKE或任何導入CMAKE文件的構建系統構建
- Copperspice可以直接鏈接到任何標準的C ++應用
文件
概述
CopperSpice概述文檔包括有關構建CopperSpice,下載預構建二進製文件,包裝要求,設置與CopperSpice鏈接,遷移到Copperspice以及常規配置信息的應用程序的信息。
https://www.copperspice.com/docs/cs_overview/index.html
API
API包含完整的文檔和多個用於CopperSpice的教程,可直接在我們的網站和下載頁面上找到。
https://www.copperspice.com/docs/cs_api/index.html
離線
CS概述和API文檔均可下載以供離線使用。它們有壓縮的焦油文件或ZIP格式。
https://download.copperspice.com/copperspice/documentation
主要增強功能
- 反射
- 生成元數據不需要元觀察編譯器,所有參考已刪除
- MOC提供的功能被編譯時模板替換
- Copperspice自動生成用於處理信號/插槽和內省的元數據
- 現在,模板類可以從qobject繼承而沒有任何類型的限制
- 複雜的數據類型,例如qmap <qString,int>可用於信號或插槽參數
- 增強功能
- Copperspice廣泛使用現代C ++功能
- constexpr,lambda表達式,模板,變異模板,模板變量
- 移動語義,結構化綁定,元組,聲明,sfinae和類型特徵
- 重新設計了所有容器類,以使用C ++標準庫容器,迭代器和算法
- 重新分配所有靜音和鎖類
- Copperspice包括QT 5類的大部分
- 基於標準C ++的平台獨立插件系統
- 高DPI渲染支持
- 重新設計的指針類
- CSSIGNAL的整合
- 改進的線程意識信號/插槽傳遞
- 效率提高,同時保持完整的信號/插槽API
- 信號/插槽處理中的僵局已被消除
- CSString的整合
- 改進存儲以正確表示Unicode字符串
- QSTRING8(UTF-8)和QSTRING16(UTF-16)類
- 添加了QStringView,QStringParser和QRegulareXpression
演講
我們的YouTube頻道包含有關C ++,圖形,構建系統,Copperspice,DoxyPress和其他與軟件開發相關的主題的視頻。
https://www.youtube.com/copperspice
可以在CPPCON,CPPNOW,EMBBO ++,MEDERC ++和CODE :: DIVE記錄的技術演示文稿的鏈接,可以在我們的演示頁面上找到。
https://www.copperspice.com/presentations.html
作者和關鍵貢獻者
CS團隊歡迎各種技能水平的貢獻者。提交拉動請求時,請遵守我們的編碼樣式準則。
https://www.copperspice.com/style_guide/source_code_style.html
- Ansel Sermersheim
- 芭芭拉·蓋勒(Barbara Geller)
- 揚·威爾曼斯(Jan Wilmans)
- 蒂姆·範·迪爾森(Tim Van Deurzen)
- 保羅·本迪克森(Paul Bendixen)
- 彼得·賓德斯(Peter Bindels)
- 摩爾達羅·馬塞洛(Marcello)
- 亞當·梅塞爾(Adam Mensel)
- 羅賓·米爾斯(Robin Mills)
- Ivailo Monev
- 亞當·梅塞爾(Adam Mensel)
- Matan Nassaw
- 傑夫·科恩(Jeff Cohen)
- 丹尼爾·菲佛(Daniel Pfeifer)
- Zbigniew Skowron
- 約翰·福爾伯格(JohanFörberg)
- 丹尼斯·門舍(Dennis Menschel)
執照
該庫是根據LGPL v2.1許可發布的。有關更多信息,請參閱此項目提供的許可證文件。
參考
- 網站:https://www.copperspice.com
- Twitter:https://twitter.com/copperspice_cpp
- 電子郵件:[email protected]
- github:https://github.com/copperspice
- 論壇:https://forum.copperspice.com
- 日記:https://journal.copperspice.com