SixtyFPS ñòàíîâèòñÿ Slint |
Slint — ýòî íàáîð èíñòðóìåíòîâ äëÿ ðàçðàáîòêè ãðàôè÷åñêèõ ïîëüçîâàòåëüñêèõ èíòåðôåéñîâ, ïîäõîäÿùèé êàê äëÿ âñòðàèâàåìûõ óñòðîéñòâ, òàê è äëÿ íàñòîëüíûõ ïðèëîæåíèé. Èìååòñÿ ïîääåðæêà Rust, C++ è JavaScript.
Èñõîäíûé êîä Slint íàïèñàí íà Rust. Íà âûáîð ïðåäëàãàþòñÿ ëèöåíçèÿ GPLv3 è àëüòåðíàòèâíûå âàðèàíòû äëÿ ïðîïðèåòàðíûõ ïðîåêòîâ.
Ïðîåêò îñíîâàëè Olivier Goffart è Simon Hausmann, êîòîðûå ó÷àñòâîâàëè â ðàçðàáîòêå KDE è ðàáîòàëè â Trolltech íàä Qt. Ðàçðàáîòêà íà÷àëàñü âåñíîé 2020 ãîäà ïîä íàçâàíèåì SixtyFPS, ÷òî ñèìâîëèçèðîâàëî ïëàâíûå àíèìàöèè ñî ñêîðîñòüþ 60 êàäðîâ â ñåêóíäó, íî ïîä íàïîðîì ñîâåò÷èêîâ áûëî ïðèíÿòî ðåøåíèå ïåðåèìåíîâàòü ïðîåêò â Slint, ÷òî ìîæíî ðàñøèôðîâàòü, êàê Straightforward, Lightweight, Native Toolkit (ïðîñòîé, ëåãêîâåñíûé, íàòèâíûé íàáîð èíñòðóìåíòîâ).
Äëÿ îïèñàíèÿ èíòåðôåéñà èñïîëüçóåòñÿ ñïåöèàëüíî ñîçäàííûé äåêëàðàòèâíûé ÿçûê ðàçìåòêè Slint, êîòîðûé ÷àñòè÷íî áûë âäîõíîâë¸í Qt QML. ßçûê ÿâëÿåòñÿ ñòðîãî òèïèçèðîâàííûì, ñ óäîáíîé äëÿ äèçàéíåðà ñèñòåìîé èçìåðåíèé è õîðîøèì èíñòðóìåíòàðèåì. Äëÿ íàïèñàíèÿ áèçíåñ-ëîãèêè ìîæåò èñïîëüçîâàòüñÿ Rust, C++ èëè JavaScript. Äëÿ ýòèõ ÿçûêîâ áûëî ðàçðàáîòàíî èíòóèòèâíîå è èäèîìàòè÷íîå API. ßçûê ðàçìåòêè Slint òðàíñëèðóåòñÿ â êîä íà Rust èëè C++, ÷òî îáåñïå÷èâàåò âûñîêóþ ïðîèçâîäèòåëüíîñòü. Òàêæå ìîæíî çàãðóæàòü .slint-ôàéëû âî âðåìÿ âûïîëíåíèÿ ïðîãðàììû ñ ïîìîùüþ èíòåðïðåòàòîðà.
Èíñòðóìåíòàðèé âêëþ÷àåò ðåàëèçàöèþ LSP äëÿ ÿçûêà ðàçìåòêè Slint, êîòîðàÿ èíòåãðèðóåòñÿ ñ ðàçëè÷íûìè ñðåäàìè ðàçðàáîòêè è ðåäàêòîðàìè è îáåñïå÷èâàåò àâòîäîïîëíåíèå, ñåìàíòè÷åñêóþ ïîäñâåòêó ñèíòàêñèñà è ïðåäïðîñìîòð.
Äåìîíñòðàöèîííûå ïðèìåðû ìîæíî çàïóñòèòü â áðàóçåðå ïî ññûëêå https://slint-ui.com/#demos
| Êîììåíòèðîâàòü | « Ïðåä. çàïèñü — Ê äíåâíèêó — Ñëåä. çàïèñü » | Ñòðàíèöû: [1] [Íîâûå] |