グラフィカル インターフェイスを構築するためのツールキット Slint の最初の重要なリリースが公開されました。これは、プロジェクトの 1.0 年間の作業を総括したものです。 バージョン 3 は、実用的なプロジェクトですぐに使用できるものとして位置付けられています。 このツールキットは Rust で書かれており、GPLvXNUMX または商用ライセンス (オープンソースではないプロプライエタリな製品での使用) に基づいてライセンスされています。 このツールキットは、固定システム用のグラフィカル アプリケーションの作成と、組み込みデバイス用のインターフェイスの開発の両方に使用できます。 このプロジェクトは、Trolltech で Qt に取り組んだ元 KDE 開発者である Olivier Goffart と Simon Hausmann によって開発されています。
プロジェクトの主な目標は、低リソース消費、あらゆるサイズの画面で作業できること、プログラマーとデザイナーの両方にとって便利な開発プロセスを提供すること、異なるプラットフォーム間での移植性を確保することです。 たとえば、Slint ベースのアプリケーションは、ARM Cortex-M0+ マイクロコントローラーと 264 KB の RAM を搭載した Raspberry Pi Pico ボード上で実行できます。 サポートされているプラットフォームには、Linux、Windows、macOS、Blackberry QNX が含まれており、WebAssembly 擬似コードにアセンブルしてブラウザで実行したり、オペレーティング システムを必要としない自己完結型アプリケーションをコンパイルしたりする機能が含まれています。 Android および iOS プラットフォーム用のモバイル アプリケーションを作成する機能を提供する予定です。
このインターフェイスは、特別な宣言型マークアップ言語「.slint」を使用して定義されており、さまざまなグラフィック要素を記述するための読みやすく理解しやすい構文を提供します (Slint の作成者の XNUMX 人は、かつて Qt Company で QtQml エンジンを担当していました)。 。 Slint 言語でのインターフェイス記述は、ターゲット プラットフォームのマシン コードにコンパイルされます。 インターフェイスを操作するためのロジックは Rust に関連付けられておらず、任意のプログラミング言語で定義できます。現在、Slint を操作するための API とツールは Rust、C++、JavaScript 用に用意されていますが、次のような追加言語をサポートする予定です。 Python と Go のように。
出力用にいくつかのバックエンドが提供されているため、サードパーティの依存関係を接続せずに、Qt、OpenGL ES 2.0、Skia、およびソフトウェア レンダリングを使用してレンダリングできます。 開発を簡素化するために、Visual Studio Code へのアドオン、さまざまな開発環境と統合するための LSP (Language Server Protocol) サーバー、および SlintPad オンライン エディターが提供されます。 この計画には、デザイナー向けのビジュアル インターフェイス エディターの開発が含まれており、これを使用すると、ウィジェットや要素をドラッグ アンド ドロップ モードでドラッグしてインターフェイスを作成できます。
出所: オープンネット.ru