Google чаҳорчӯбаи Flutter 2 ва забони Dart 2.12-ро муаррифӣ кард

Google чаҳорчӯбаи интерфейси корбарии Flutter 2-ро муаррифӣ кард, ки табдили лоиҳаро аз чаҳорчӯбаи таҳияи замимаҳои мобилӣ ба чаҳорчӯбаи универсалӣ барои эҷоди ҳама гуна барномаҳо, аз ҷумла барномаҳои мизи корӣ ва веб-барномаҳо нишон дод.

Flutter ҳамчун алтернатива ба React Native баррасӣ мешавад ва ба шумо имкон медиҳад, ки барои платформаҳои гуногун дар асоси як пойгоҳи рамзӣ, аз ҷумла iOS, Android, Windows, macOS ва Linux, инчунин барномаҳое, ки дар браузерҳо кор мекунанд, таҳия кунед. Замимаҳои мобилие, ки қаблан дар Flutter 1 навишта шуда буданд, метавонанд пас аз гузаштан ба Flutter 2 бидуни навиштани рамз барои кор дар мизи корӣ ва дар Интернет мутобиқ карда шаванд.

Қисми асосии рамзи Flutter бо забони Dart амалӣ карда мешавад ва муҳаррики вақти корӣ барои иҷрои барномаҳо дар C++ навишта шудааст. Ҳангоми таҳияи барномаҳо, ба ғайр аз забони модарии Dart Flutter, шумо метавонед интерфейси Dart Foreign Function-ро барои занг задан ба рамзи C/C++ истифода баред. Иҷрои баланд тавассути тартиб додани барномаҳо ба коди аслӣ барои платформаҳои мақсаднок ба даст оварда мешавад. Дар ин ҳолат, пас аз ҳар як тағирот, барномаро дубора тартиб додан лозим нест - Dart режими пурборкуниро таъмин мекунад, ки ба шумо имкон медиҳад ба замимаи иҷрошаванда тағирот ворид кунед ва натиҷаро фавран арзёбӣ кунед.

Flutter 2 дастгирии пурраи эҷоди замимаҳо барои вебро пешниҳод мекунад, ки барои татбиқи истеҳсолӣ мувофиқ аст. Се сенарияи асосии истифодаи Flutter барои Web зикр шудаанд: таҳияи веб-барномаҳои мустақил (PWA, Web Apps Progressive), эҷоди веб-барномаҳои яксаҳифа (SPA, Single page apps) ва табдил додани замимаҳои мобилӣ ба веб замимаҳо. Дар байни хусусиятҳои асбобҳои таҳияи веб истифодаи механизмҳо барои суръат бахшидани графикаи 2D ва 3D, ҷойгиркунии чандирии элементҳо дар экран ва муҳаррики рендеринги CanvasKit, ки дар WebAssembly тартиб дода шудаанд, мебошанд.

Дастгирии барномаҳои мизи корӣ дар бета аст ва дар охири соли ҷорӣ дар нашри оянда устувор карда мешавад. Canonical, Microsoft ва Toyota пуштибонии рушдро бо истифода аз Flutter эълон карданд. Canonical Flutter-ро ҳамчун чаҳорчӯбаи асосии барномаҳои худ интихоб кардааст ва инчунин барои таҳияи насбкунандаи нав барои Ubuntu Flutter-ро истифода мебарад. Microsoft Flutter-ро барои дастгоҳҳои қатшаванда бо экранҳои гуногун, ба монанди Surface Duo мутобиқ кардааст. Toyota нақша дорад, ки Flutter-ро барои системаҳои фароғатии дохили мошин истифода барад. Қабули корбарии системаи оператсионии микро ядрои Fuchsia, ки аз ҷониби Google таҳия шудааст, инчунин дар асоси Flutter сохта шудааст.

Google чаҳорчӯбаи Flutter 2 ва забони Dart 2.12-ро муаррифӣ кард

Ҳамзамон нашри забони барномасозии Dart 2.12 нашр шуд, ки дар он рушди як шохаи ба таври куллӣ аз нав тарҳрезишудаи Dart 2 идома дорад. Dart 2 аз версияи аслии забони Dart бо истифода аз чопкунии сахти статикӣ (намудҳо) фарқ мекунад. ба таври худкор хулоса баровардан мумкин аст, бинобар ин муайян кардани намудҳо ҳатмӣ нест, аммо чопкунии динамикӣ дигар истифода намешавад ва навъи аввал ҳисобшуда ба тағирёбанда таъин карда мешавад ва баъдан санҷиши сахти навъи он истифода мешавад).

Нашрия барои мӯътадилсозии режими бехатарии Null назаррас аст, ки барои пешгирӣ кардани садамаҳо дар натиҷаи кӯшиши истифодаи тағирёбандаҳо, ки арзиши онҳо номуайян ва ба Null муқаррар карда шудаанд, кӯмак мекунад. Режим маънои онро дорад, ки тағирёбандаҳо қиматҳои сифр дошта наметавонанд, агар онҳо ба таври возеҳ арзиши null таъин карда нашаванд. Режим ба таври қатъӣ намудҳои тағирёбандаро эҳтиром мекунад, ки ба компилятор имкон медиҳад, ки оптимизатсияи иловагиро татбиқ кунад. Мутобиқати намуд дар вақти тартибдиҳӣ санҷида мешавад, масалан, агар шумо кӯшиш кунед, ки арзиши "Null" -ро ба тағирёбанда бо навъе, ки ҳолати номуайянро дар назар надорад, ба мисли "int" таъин кунед, хатогӣ нишон дода мешавад.

Боз як такмилдиҳии муҳим дар Dart 2.12 татбиқи устувори китобхонаи FFI мебошад, ки ба шумо имкон медиҳад, ки рамзи баландсифат эҷод кунед, ки аз он шумо метавонед ба API-ҳои C дастрас шавед. Иҷрои кор ва андоза оптимизатсия кард. Асбобҳои иловагии таҳиякунанда ва системаи профили код, ки бо истифода аз Flutter навишта шудаанд, инчунин плагинҳои нав барои таҳияи замимаҳои Dart ва Flutter барои Android Studio/IntelliJ ва VS Code.

Google чаҳорчӯбаи Flutter 2 ва забони Dart 2.12-ро муаррифӣ кард


Манбаъ: opennet.ru

Илова Эзоҳ