Slint, набор от инструменти за създаване на графични интерфейси

хрема

Slint, изчерпателен набор от инструменти за създаване на потребителски интерфейси за настолни компютри и вградени устройства,

Стартирането на първата значима версия на инструментариума Slint GUI, който обобщава три години работа по проекта. Версия 1.0 е позиционирана като готова за използване в работни проекти.

Лос Основните цели на проекта са ниска консумация на ресурси, възможност за работа с екрани от всякакъв размер, осигуряване на удобен процес на разработка както за програмисти, така и за дизайнери и осигуряване на преносимост между различни платформи.

От платформите, сПоддържат се Linux, Windows, macOS, Blackberry QNX, възможно сглобяване на псевдокод на WebAssembly за стартиране в браузър или създаване на самостоятелни приложения, които не изискват операционна система. Има планове за предоставяне на възможност за създаване на мобилни приложения за платформите Android и iOS. Например приложенията, базирани на Slint, могат да работят на платка Raspberry Pi Pico, оборудвана с микроконтролер ARM Cortex-M0+ и 264KB RAM.

Slint използва декларативно програмиране, за да ускори разработването на потребителски интерфейс. Нашият подход за оптимизиране на разработката и производителността на приложения е:

Потребителският интерфейс е описан на декларативен език, като се използва синтаксис, който предоставя изчерпателен начин за описание на различните графични елементи, като същевременно е лесен за четене, писане и научаване.
Компилаторът Slint оптимизира и превежда описанието на потребителския интерфейс в естествен код,
Бизнес логиката, която можете да пишете на всеки език, е свързана с потребителския интерфейс с помощта на специфичните за езика API, предоставени от Slint.

Slint идва с език за маркиране, създаден специално за потребителски интерфейси. Този език е лесен за научаване, четене и писане и предоставя мощен начин за описание на графични елементи, тяхното местоположение и потока от данни през различните състояния. Това е познат синтаксис за описване на йерархията от елементи и обвързвания на свойства.

интерфейса се дефинира с помощта на специален декларативен език за маркиране „.slint“, който осигурява синтаксис за описание на различни графични елементи (един от авторите на Slint някога е отговарял за QtQml двигателя в Qt Company).

на Описанията на интерфейса на езика Slint се компилират в собствения код на целевата платформа. Логиката за работа с интерфейса не е обвързана с Rust и може да бъде дефинирана на всеки език за програмиране; В момента API и инструментите за работа със Slint са готови за Rust, C++ и JavaScript, но се планира поддръжка за допълнителни езици като Python и Go.

Slint се предлага с поддръжка на инструменти за довършване на код, сърфиране, рефакторинг и подчертаване на синтаксиса. Докато разработвате и усъвършенствате потребителския интерфейс, визуализацията на живо на Slint показва промените в реално време, за да осигури незабавна обратна връзка.

Se осигурете множество бекенди за изхода, което ви позволява да използвате Qt, OpenGL ES 2.0, Skia и софтуер за изобразяване, за да изобразявате, без да включвате зависимости на трети страни.

За да се опрости развитието, предлага се допълнение към Visual Studio Code, LSP (Language Server Protocol) сървър за интеграция с различни среди за разработка и онлайн редактор SlintPad. Плановете включват разработване на редактор на визуален интерфейс за дизайнери, който позволява създаване на интерфейс чрез плъзгане и пускане на джаджи и елементи в режим на плъзгане и пускане.

И накрая, ако се интересувате да можете да научите малко повече за него, можете да се консултирате с подробностите В следващия линк.

За се интересуват от този инструментариум, те трябва да знаят, че е написан на Rust и е лицензиран под GPLv3 или търговски лиценз (за използване в патентовани продукти без отворен код). Инструментариумът може да се използва както за създаване на графични приложения за стационарни системи, така и за разработване на интерфейси за вградени устройства.

Проектът се разработва от Оливие Гофарт и Симон Хаусман, бивши разработчици на KDE, които са работили върху Qt в Trolltech.