KDE Frameworks 5

出典: フリー百科事典『ウィキペディア(Wikipedia)』

出典: フリー百科事典『ウィキペディア(Wikipedia)』
KDE Frameworks 5
KDE Mascot Konqi for KDE Frameworks.png
作者 KDE
開発元 KDE
初版 2014年7月1日(5年前) (2014-07-01
最新版 5.62.0 / 2019年9月14日(0日前) (2019-09-14[1]
リポジトリ https://cgit.kde.org, https://phabricator.kde.org/project/view/90/
プログラミング言語 C++Qt
対応OS クロスプラットフォーム
サポート状況 開発中
種別 システムライブラリ
ソフトウェアフレームワーク
ライセンス GNU LGPL
公式サイト api.kde.org/frameworks/index.html
テンプレートを表示

KDE Frameworks 5 (ケーディーイー・フレームワークス・ファイブ) は、KDE Plasma 5KDE Applicationsの基盤となるシステムライブラリソフトウェアフレームワークコレクションである。KDE Frameworks 5はGNU LGPLの下で配布されているフリーソフトウェアである。

KDE Frameworks 5はハードウェアの統合・ファイルフォーマットのサポート・追加のコントロール要素・プロット関数・スペルチェックなどの一般的に必要となる機能を提供している。

KDE Frameworks 5はKDE Platform 4KDE以外での再利用が難しいという問題の解決を行っており、クロスプラットフォームに対応した独立したモジュールに置き換えることでQtベースのアプリケーションからの移行を容易にしている。KDE Platform 4からKDE Frameworks 5への移行は、2013年8月からKDEの最高技術貢献者によって開始された[2]

KDE Frameworks 5.0のリリース後、開発者はMozilla FirefoxとKDEの統合性の向上などのように[3]、KDE Frameworks 5に新たな機能を追加することに焦点を当てている[4]

KDE Platform 4ランタイムとKDE Frameworks 5ランタイムの両方をインストールすることでアプリケーションはどちらかを利用できるようになる[5]

採用[編集]

KDEについて

KDE Frameworks 5のソースコードはKDELibs 1以降で使用されている。KDE Software Compilation英語版以外にもLXQtやLiriなどのデスクトップ環境AmarokAvogadroTrojitá英語版Subsurface英語版などのアプリケーションで利用されている。

ラスターグラフィックスエディタKritaは、2016年5月31日にリリースされたバージョン3.0以降はKDE Frameworks 5とQt 5に依存している。バージョン2.8以前はKDE Platform 4とQt 4に依存していた[6]

開発[編集]

いくつかのコードはQt 5.2に統合された。

KDE Software CompilationをKDE Frameworks 5とKDE Plasma 5とKDE Applicationsに分割して以降、各プロジェクトは独自の開発ペースを選択することができるようになった。KDE Frameworks 5は毎月新たなバージョンがリリースされ[7]バージョン管理システムGitを利用している[8]

APIとABIの安定性[編集]

メジャーリリースでは前のバージョンとのバイナリ互換性を損なうことが許容されているが、マイナーリリースではバイナリ移植性 (APIABI) は保証されている。これは例えばKDE 3英語版向けに開発されたアプリケーションが全てのバージョンのKDE 3で動作することや、KDE 2英語版向けに開発されたアプリケーションがKDE 3のライブラリを利用できないことを意味している。KDEのメジャーリリースのバージョン番号はQtのリリースサイクルに従っている。このことはKDE SC 4がQt 4に基づいたものであることを示している。

ソフトウェアアーキテクチャ[編集]

構造[編集]

KDE Frameworks 5は明確な依存構造を持っている。この構造は「カテゴリ」と「階層」からなり、「カテゴリ」は実行時の依存関係を示すものである。

  • 各機能は実行時の依存関係が存在しない。
  • 指定されたコードを統合する場合、オペレーティングシステムやプラットフォームによって実行時の依存関係が必要になる可能性がある。
  • ソリューションには必須の実行時の依存関係が存在する。

「階層」はコンパイル時の他のフレームワークへの依存関係を示す[9]

  • 第1階層フレームワークは、フレームワーク内には依存関係が存在せず、Qtやその他の関連するライブラリのみが必要となる。
  • 第2階層フレームワークは、第1階層フレームワークにのみ依存することができる。
  • 第3階層フレームワークは、第1階層フレームワークや第2階層フレームワークと同様に、他の第3階層フレームワークに依存することができる。

コンポーネント[編集]

KDE Frameworks 5は60以上のパッケージから構成されている。KDE SC 4では、これらのパッケージはKDELibsとして単一の大きなパッケージから構成されていた。KDELibsはいくつかのフレームワークに分割されたが、一部はKDEではなくQt 5.2に統合された[10]

歴史[編集]

KDE Platform 4をベースに開発が行われたため、KDE Frameworks 5がKDE Frameworksの最初のバージョンとなった。

KDE Frameworks 5の主な改良点は、モジュール化の強化である。KDE Frameworks 5以前はライブラリは単一の大きなパッケージから構成されていたが、KDE Frameworks 5ではライブラリは小さなパッケージに分割された。このことにより依存関係を最小限に抑えることができ、他のQtベースのアプリケーションでの利用が容易になった[2]

KDE Frameworks 5はQt 5に基づいており、JavaScriptをベースとした宣言型プログラミング言語QMLユーザインタフェースの設計に利用することができる。QMLで使用されるグラフィックスレンダリングエンジンは、様々なデバイス間でより柔軟なユーザインタフェースを実現することができる[2]

リリース履歴[編集]

バージョン5.0の前に、技術プレビューと2つのアルファリリースと3つのベータリリースが存在した[12][13][14][15]

リリース履歴
バージョン 日付 備考
以前のバージョン、サポート終了: 5.0 2014年7月7日[16] Initial release, requires Qt 5.2.
以前のバージョン、サポート終了: 5.1 2014年8月7日[17]
以前のバージョン、サポート終了: 5.2 2014年9月12日[18]
以前のバージョン、サポート終了: 5.3 2014年10月7日[19]
以前のバージョン、サポート終了: 5.4 2014年11月6日[20]
以前のバージョン、サポート終了: 5.5 2014年12月11日[21]
以前のバージョン、サポート終了: 5.6 2015年1月8日[22] New frameworks: KPackage and NetworkManagerQt
以前のバージョン、サポート終了: 5.7 2015年2月14日[23]
以前のバージョン、サポート終了: 5.8 2015年3月13日[24] New frameworks: KPeople and KXmlRpcClient
以前のバージョン、サポート終了: 5.9 2015年4月10日[25] New framework: ModemManagerQt
以前のバージョン、サポート終了: 5.10 2015年5月8日[26]
以前のバージョン、サポート終了: 5.11 2015年6月12日[27] New framework: BlueZ-Qt (cf. BlueZ)
以前のバージョン、サポート終了: 5.12 2015年7月10日[28]
以前のバージョン、サポート終了: 5.13 2015年8月12日[29] New frameworks: Baloo (replaces NEPOMUK) and KFileMetaData, now requires Qt 5.3.
以前のバージョン、サポート終了: 5.14 2015年9月11日[30]
以前のバージョン、サポート終了: 5.15 2015年10月10日[31]
以前のバージョン、サポート終了: 5.16 2015年11月13日[32]
以前のバージョン、サポート終了: 5.17 2015年12月12日[33]
以前のバージョン、サポート終了: 5.18 2016年1月9日[34]
以前のバージョン、サポート終了: 5.19 2016年2月13日[35]
以前のバージョン、サポート終了: 5.20 2016年3月13日[36]
以前のバージョン、サポート終了: 5.21 2016年4月9日[37] New framework: KActivities-stats, now requires Qt 5.4.
以前のバージョン、サポート終了: 5.22 2016年5月15日[38] New framework: KWayland
以前のバージョン、サポート終了: 5.23 2016年6月13日[39]
以前のバージョン、サポート終了: 5.24 2016年7月9日[40]
以前のバージョン、サポート終了: 5.25 2016年8月13日[41] Now requires Qt 5.5 or above.
以前のバージョン、サポート終了: 5.26 2016年9月10日[42]
以前のバージョン、サポート終了: 5.27 2016年10月8日[43]
以前のバージョン、サポート終了: 5.28 2016年11月15日[44] New framework: KSyntaxHighlighting[45]
以前のバージョン、サポート終了: 5.29 2016年12月12日[46] New framework: Prison
以前のバージョン、サポート終了: 5.30 2017年1月14日[47] Add KNewStuff support for KPackage
以前のバージョン、サポート終了: 5.31 2017年2月11日[48] Many modules now have Python bindings, now requires Qt 5.6 or above
以前のバージョン、サポート終了: 5.32 2017年3月11日[49]
以前のバージョン、サポート終了: 5.33 2017年4月8日[50]
以前のバージョン、サポート終了: 5.34 2017年5月13日[51]
以前のバージョン、サポート終了: 5.35 2017年6月1日[52]
以前のバージョン、サポート終了: 5.36 2017年7月8日[53]
以前のバージョン、サポート終了: 5.37 2017年8月13日[54] New framework: Kirigami, now requires Qt 5.7 or above
以前のバージョン、サポート終了: 5.38 2017年9月9日[55]
以前のバージョン、サポート終了: 5.39 2017年10月14日[56]
以前のバージョン、サポート終了: 5.40 2017年11月11日[57]
以前のバージョン、サポート終了: 5.41 2017年12月10日[58]
以前のバージョン、サポート終了: 5.42 2018年1月13日[59]
以前のバージョン、サポート終了: 5.43 2018年2月12日[60] New frameworks: KHolidays
以前のバージョン、サポート終了: 5.44 2018年3月10日[61]
以前のバージョン、サポート終了: 5.45 2018年4月14日[62]
以前のバージョン、サポート終了: 5.46 2018年5月12日[63]
以前のバージョン、サポート終了: 5.47 2018年6月9日[64]
以前のバージョン、サポート終了: 5.48 2018年7月14日[65]
以前のバージョン、サポート終了: 5.49 2018年8月11日[66]
以前のバージョン、サポート終了: 5.50 2018年9月8日[67]
以前のバージョン、サポート終了: 5.51 2018年10月15日[68]
以前のバージョン、サポート終了: 5.52 2018年11月10日[69]
以前のバージョン、サポート終了: 5.53 2018年12月9日[70]
以前のバージョン、サポート終了: 5.54 2019年1月12日[71]
以前のバージョン、サポート終了: 5.55 2019年2月9日[72]
以前のバージョン、サポート終了: 5.56 2019年3月9日[73]
以前のバージョン、サポート終了: 5.57 2019年4月13日[74]
以前のバージョン、サポート終了: 5.58 2019年5月13日[75]
以前のバージョン、サポート終了: 5.59 2019年6月8日[76]
以前のバージョン、サポート終了: 5.60 2019年7月13日[77]
以前のバージョン、サポート終了: 5.61 2019年8月10日[78]
現在の安定版: 5.62 2019年9月14日[79]
将来のリリース: 5.63
凡例:
旧バージョン
以前のバージョン、サポート中
最新バージョン
最新プレビュー版
将来のリリース

脚注[編集]

  1. ^ Release of KDE Frameworks 5.62.0”. KDE (2019年9月14日). 2019年9月14日閲覧。
  2. ^ a b c Howard Chan (2013年9月4日). “KDE Release Structure Evolves”. 2018年7月26日閲覧。
  3. ^ Firefox + KDE integration: Getting FF to use Dolphin reliably. 12+ years and counting.” (2014年7月3日). 2018年7月26日閲覧。
  4. ^ KF5 Update Meeting Minutes 2014-w28” (2014年7月8日). 2018年7月26日閲覧。
  5. ^ Coinstallability”. KDE. 2018年7月26日閲覧。
  6. ^ Krita 3.0リリース”. Krita Foundation (2016年5月31日). 2018年7月26日閲覧。
  7. ^ Schedules”. KDE. 2018年7月26日閲覧。
  8. ^ Git Workflow”. KDE. 2018年7月26日閲覧。
  9. ^ Frameworks 5”. KDE (2013年9月25日). 2018年7月26日閲覧。
  10. ^ Qt 5.2 - Foundation for KDE Frameworks 5”. KDE (2013年12月17日). 2018年7月26日閲覧。
  11. ^ http://blog.martin-graesslin.com/blog/2014/02/kwindowsystem-in-frameworks-5/
  12. ^ Frameworks 5 Technology Preview”. KDE (2014年1月7日). 2018年7月26日閲覧。
  13. ^ KDE Ships First Alpha of Frameworks 5”. KDE (2014年4月14日). 2018年7月26日閲覧。
  14. ^ KDE Ships Second Alpha of Frameworks 5”. KDE (2014年3月3日). 2018年7月26日閲覧。
  15. ^ KDE Ships Third Beta of Frameworks 5”. KDE (2013年6月5日). 2018年7月26日閲覧。
  16. ^ First release of KDE Frameworks 5”. KDE (2014年7月7日). 2017年12月31日閲覧。
  17. ^ Second release of KDE Frameworks 5”. KDE (2014年8月7日). 2017年12月31日閲覧。
  18. ^ Release of KDE Frameworks 5.2.0”. KDE (2014年9月12日). 2015年3月5日閲覧。
  19. ^ Release of KDE Frameworks 5.3.0” (2014年10月7日). 2014年3月5日閲覧。
  20. ^ Release of KDE Frameworks 5.4.0”. KDE (2014年11月6日). 2015年3月5日閲覧。
  21. ^ Release of KDE Frameworks 5.5.0”. KDE (2014年12月11日). 2015年3月5日閲覧。
  22. ^ Release of KDE Frameworks 5.6.0”. KDE (2015年1月8日). 2015年3月5日閲覧。
  23. ^ Release of KDE Frameworks 5.7.0”. KDE (2015年2月14日). 2015年3月5日閲覧。
  24. ^ Release of KDE Frameworks 5.8.0”. KDE (2015年3月13日). 2015年3月13日閲覧。
  25. ^ Release of KDE Frameworks 5.9.0”. KDE (2015年4月10日). 2015年4月30日閲覧。
  26. ^ Release of KDE Frameworks 5.10.0”. KDE (2015年5月8日). 2015年5月9日閲覧。
  27. ^ Release of KDE Frameworks 5.11.0”. KDE. 2015年6月29日閲覧。
  28. ^ Release of KDE Frameworks 5.12.0”. KDE. 2015年7月10日閲覧。
  29. ^ Release of KDE Frameworks 5.13.0”. KDE (2015年8月12日). 2015年8月12日閲覧。
  30. ^ Release of KDE Frameworks 5.14.0”. KDE (2015年9月12日). 2015年9月12日閲覧。
  31. ^ Release of KDE Frameworks 5.15.0”. KDE (2015年10月10日). 2018年7月26日閲覧。
  32. ^ Release of KDE Frameworks 5.16.0”. KDE (2015年11月13日). 2018年7月26日閲覧。
  33. ^ Release of KDE Frameworks 5.17.0”. KDE (2015年12月12日). 2018年7月26日閲覧。
  34. ^ Release of KDE Frameworks 5.18.0”. KDE (2016年1月9日). 2018年7月26日閲覧。
  35. ^ Release of KDE Frameworks 5.19.0”. KDE (2016年2月13日). 2018年7月26日閲覧。
  36. ^ Release of KDE Frameworks 5.20.0”. KDE (2016年3月13日). 2017年12月31日閲覧。
  37. ^ Release of KDE Frameworks 5.21.0”. KDE (2016年4月9日). 2016年4月9日閲覧。
  38. ^ Release of KDE Frameworks 5.22.0”. KDE (2016年5月15日). 2016年5月15日閲覧。
  39. ^ Release of KDE Frameworks 5.23.0”. KDE (2016年6月13日). 2016年6月14日閲覧。
  40. ^ Release of KDE Frameworks 5.24.0”. KDE (2016年7月9日). 2016年7月10日閲覧。
  41. ^ Release of KDE Frameworks 5.25.0”. KDE (2016年8月13日). 2016年8月21日閲覧。
  42. ^ Release of KDE Frameworks 5.26.0”. KDE (2016年9月10日). 2016年10月8日閲覧。
  43. ^ Release of KDE Frameworks 5.27.0”. KDE (2016年10月8日). 2016年10月8日閲覧。
  44. ^ Release of KDE Frameworks 5.28.0”. KDE (2016年11月15日). 2016年11月15日閲覧。
  45. ^ KSyntaxHighlighing: A new Syntax Highlighting Framework”. KDE (2016年11月15日). 2016年11月21日閲覧。
  46. ^ Release of KDE Frameworks 5.29.0”. KDE (2016年12月12日). 2016年12月13日閲覧。
  47. ^ Release of KDE Frameworks 5.30.0”. KDE (2017年1月14日). 2017年1月27日閲覧。
  48. ^ Release of KDE Frameworks 5.31.0”. KDE (2017年2月11日). 2017年2月19日閲覧。
  49. ^ Release of KDE Frameworks 5.32.0”. KDE (2017年3月11日). 2017年3月11日閲覧。
  50. ^ Release of KDE Frameworks 5.33.0”. KDE (2017年4月8日). 2017年4月8日閲覧。
  51. ^ Release of KDE Frameworks 5.34.0”. KDE (2017年5月13日). 2017年5月13日閲覧。
  52. ^ Release of KDE Frameworks 5.35.0”. KDE (2017年6月10日). 2017年6月10日閲覧。
  53. ^ Release of KDE Frameworks 5.36.0”. KDE (2017年7月8日). 2017年7月8日閲覧。
  54. ^ Release of KDE Frameworks 5.37.0”. KDE (2017年8月13日). 2017年9月9日閲覧。
  55. ^ Release of KDE Frameworks 5.38.0”. KDE (2017年9月9日). 2017年9月9日閲覧。
  56. ^ Release of KDE Frameworks 5.39.0”. KDE (2017年10月14日). 2017年12月31日閲覧。
  57. ^ Release of KDE Frameworks 5.40.0”. KDE (2017年11月11日). 2017年12月31日閲覧。
  58. ^ Release of KDE Frameworks 5.41.0”. KDE (2017年12月10日). 2017年12月31日閲覧。
  59. ^ Release of KDE Frameworks 5.42.0”. KDE (2018年1月13日). 2018年1月15日閲覧。
  60. ^ Release of KDE Frameworks 5.43.0”. KDE (2018年2月12日). 2018年2月12日閲覧。
  61. ^ Release of KDE Frameworks 5.44.0”. KDE (2018年3月10日). 2018年4月14日閲覧。
  62. ^ Release of KDE Frameworks 5.45.0”. KDE (2018年4月14日). 2018年4月14日閲覧。
  63. ^ Release of KDE Frameworks 5.46.0”. KDE (2018年5月12日). 2018年5月12日閲覧。
  64. ^ Release of KDE Frameworks 5.47.0”. KDE (2018年6月9日). 2018年6月9日閲覧。
  65. ^ Release of KDE Frameworks 5.48.0”. KDE (2018年7月14日). 2019年4月1日閲覧。
  66. ^ Release of KDE Frameworks 5.49.0”. KDE (2018年8月11日). 2019年4月1日閲覧。
  67. ^ Release of KDE Frameworks 5.50.0”. KDE (2018年9月8日). 2019年4月1日閲覧。
  68. ^ Release of KDE Frameworks 5.51.0”. KDE (2018年10月15日). 2019年4月1日閲覧。
  69. ^ Release of KDE Frameworks 5.52.0”. KDE (2018年11月10日). 2019年4月1日閲覧。
  70. ^ Release of KDE Frameworks 5.53.0”. KDE (2018年12月9日). 2019年4月1日閲覧。
  71. ^ Release of KDE Frameworks 5.54.0”. KDE (2019年1月12日). 2019年4月1日閲覧。
  72. ^ Release of KDE Frameworks 5.55.0”. KDE (2019年2月9日). 2019年4月1日閲覧。
  73. ^ Release of KDE Frameworks 5.56.0”. KDE (2019年3月9日). 2019年4月1日閲覧。
  74. ^ Release of KDE Frameworks 5.57.0”. KDE (2019年4月13日). 2019年4月23日閲覧。
  75. ^ Release of KDE Frameworks 5.58.0”. KDE (2019年5月13日). 2019年6月27日閲覧。
  76. ^ Release of KDE Frameworks 5.59.0”. KDE (2019年6月8日). 2019年6月27日閲覧。
  77. ^ Release of KDE Frameworks 5.60.0”. KDE (2019年7月13日). 2019年7月17日閲覧。
  78. ^ Release of KDE Frameworks 5.61.0”. KDE (2019年8月10日). 2019年8月12日閲覧。
  79. ^ Release of KDE Frameworks 5.62.0”. KDE (2019年9月14日). 2019年9月14日閲覧。

関連項目[編集]