Google Flutter 2 рамкасын жана Dart 2.12 тилин киргизди

Google Flutter 2 колдонуучу интерфейсинин негизин киргизди, ал долбоордун мобилдик тиркемелерди иштеп чыгуу алкагынан программанын ар кандай түрүн, анын ичинде иш столунун программаларын жана веб-тиркемелерди түзүү үчүн универсалдуу алкактарга айлануусун белгилеген.

Flutter React Nativeге альтернатива катары каралат жана бир коддук базанын негизинде түрдүү платформалар үчүн тиркемелерди, анын ичинде iOS, Android, Windows, macOS жана Linux, ошондой эле браузерлерде иштеген тиркемелерди чыгарууга мүмкүндүк берет. Мурда Flutter 1де жазылган мобилдик тиркемелерди Flutter 2ге өткөндөн кийин кодду кайра жазбастан иш тактасында жана Интернетте иштөөгө ылайыкташтырууга болот.

Flutter кодунун негизги бөлүгү Dart тилинде ишке ашырылат, ал эми тиркемелерди аткаруу үчүн иштөө механизми C++ тилинде жазылган. Тиркемелерди иштеп чыгууда, Флуттердин дарт тилинен тышкары, сиз C/C++ кодун чакыруу үчүн Dart Foreign Function интерфейсин колдоно аласыз. Жогорку аткаруу көрсөткүчү максаттуу платформалар үчүн жергиликтүү кодго тиркемелерди түзүү аркылуу жетишилет. Бул учурда, программаны ар бир өзгөртүүдөн кийин кайра компиляциялоонун кереги жок - Dart иштеп жаткан тиркемеге өзгөртүүлөрдү киргизүүгө жана натыйжаны дароо баалоого мүмкүндүк берүүчү ысык кайра жүктөө режимин камсыз кылат.

Flutter 2 өндүрүштү ишке ашыруу үчүн ылайыктуу Желе үчүн тиркемелерди түзүү үчүн толук колдоону сунуш кылат. Flutter for the Web колдонуунун үч негизги сценарийи айтылган: өз алдынча веб тиркемелерди иштеп чыгуу (PWA, Progressive Web Apps), бир беттик веб тиркемелерди түзүү (SPA, Single page apps) жана мобилдик тиркемелерди веб тиркемелерге айландыруу. Вебди иштеп чыгуу инструменттеринин өзгөчөлүктөрүнүн арасында 2D жана 3D графикасын көрсөтүүнү тездетүү механизмдерин колдонуу, экрандагы элементтердин ийкемдүү жайгашуусу жана WebAssemblyге түзүлгөн CanvasKit рендеринг механизми кирет.

Иш такта колдонмосун колдоо бета версиясында жана ушул жылдын аягында келечектеги чыгарылышта турукташтырылат. Canonical, Microsoft жана Toyota Flutter аркылуу иштеп чыгууну колдоорун жарыялашты. Canonical өзүнүн тиркемелери үчүн негизги алкак катары Flutterди тандап алды жана ошондой эле Ubuntu үчүн жаңы орноткучту иштеп чыгуу үчүн Flutterди колдонууда. Microsoft Flutterди Surface Duo сыяктуу бир нече экраны бар бүктөлүүчү түзмөктөр үчүн ыңгайлаштырган. Тойота Flutterди унаа ичиндеги маалымат-зоок системалары үчүн колдонууну пландаштырууда. Google тарабынан иштелип чыккан Fuchsia microkernel операциялык тутумунун колдонуучу кабыгы да Flutterдин негизинде курулган.

Google Flutter 2 рамкасын жана Dart 2.12 тилин киргизди

Ошол эле учурда Dart 2.12 программалоо тилинин релизи басылып чыкты, анда Dart 2нин түп-тамырынан бери кайра конструкцияланган бутагынын өнүгүшү уланууда. Dart 2 Dart тилинин баштапкы версиясынан күчтүү статикалык терүүнү (түрлөрдү) колдонуу менен айырмаланат. автоматтык түрдө тыянак чыгарууга болот, андыктан типтерди көрсөтүү милдеттүү эмес, бирок динамикалык терүү мындан ары колдонулбайт жана баштапкы эсептелген түрү өзгөрмөгө дайындалат жана кийинчерээк типти катуу текшерүү колдонулат).

Чыгаруу Null коопсуздук режимин турукташтыруу менен өзгөчөлөнөт, ал мааниси аныкталбаган жана Null деп коюлган өзгөрмөлөрдү колдонуу аракеттеринен келип чыккан кыйроолордон сактанууга жардам берет. Режим өзгөрмөлөр нөл мааниге ээ боло албастыгын билдирет, эгерде алар нөл маанисин ыйгармайынча. Режим өзгөрмөлөрдүн түрлөрүн катуу сыйлайт, бул компиляторго кошумча оптималдаштырууларды колдонууга мүмкүндүк берет. Типтин шайкештиги компиляция учурунда текшерилет, мисалы, "Int" сыяктуу аныкталбаган абалды билдирбеген түрдөгү өзгөрмөгө "Null" маанисин ыйгарууга аракет кылсаңыз, ката көрсөтүлөт.

Dart 2.12деги дагы бир маанилүү жакшыртуу - бул FFI китепканасынын туруктуу ишке ашырылышы, бул сизге C тилиндеги API'лерге кире турган жогорку натыйжалуу кодду түзүүгө мүмкүндүк берет. Өндүрүмдүүлүктү жана өлчөмдөрдү оптималдаштырды. Кошулган иштеп чыгуучунун куралдары жана Flutter аркылуу жазылган код профилин түзүү системасы, ошондой эле Android Studio/IntelliJ жана VS Code үчүн Dart жана Flutter тиркемелерин иштеп чыгуу үчүн жаңы плагиндер.

Google Flutter 2 рамкасын жана Dart 2.12 тилин киргизди


Source: opennet.ru

Комментарий кошуу