Јетпацк Цомпосе, Гоогле-ов УИ алат за развој Андроид апликација, сада је у алфа верзији. Потпуно је интероперабилан са Андроид-овим стандардним Виевс.
Када је у питању развој апликације, постоји много начина да се то уради. Можете одабрати за коју платформу(е) ћете развијати, који програмски језик(е) желите да користите и још много тога.
Гугл је још у јесен 2019 представио нови оквир за прављење корисничког интерфејса у Андроиду, користећи Котлин. До сада је био у развојном стању, са честим променама у квару и тоном недостајућих функција. Али данас је Гоогле гурнуо Јетпацк Цомпосе у стање алфа издања, што значи да је један корак ближе употреби у пројектима квалитета производње.
Шта је Јетпацк Цомпосе?
Када правите Андроид апликацију, обично постоје две главне компоненте са којима морате да се бавите: код, за ствари засноване на логици; и КСМЛ, за распореде. Андроид подразумевано користи Јава за код и сопствени скуп КСМЛ ознака за распореде.
За многе, Јава и КСМЛ су сасвим у реду, посебно за једноставније апликације. Али оба система имају своја ограничења и сметње. Са увођењем Котлина као ан
званичник (и препоручени) језик за Андроид развој, страна кодирања прављења Андроид апликације је вероватно постала много лакша. Уз Котлин-ове згодне функције као што су уграђена нулта заштита и функције проширења, код изгледа чистије и лакше је за читање.Али Котлин није ништа променио са Андроид распоредом. Да бисте направили сложен изглед, и даље сте морали да креирате КСМЛ датотеку и да је дизајнирате тамо. Ово има неке значајне недостатке, укључујући инхерентно раздвајање између кода и КСМЛ-а. Ако имате константни стринг у свом коду, на пример, не можете га само референцирати из КСМЛ-а, тако да ако се тај стринг промени у коду, морате запамтити да га ажурирате иу КСМЛ-у.
Унесите Јетпацк Цомпосе. Ово је Гоогле-ов одговор на све компликованији процес дизајна КСМЛ изгледа у Андроиду. Уместо да дизајнирате кориснички интерфејс ваше апликације у КСМЛ-у, то можете да урадите директно из кода. Иако је могуће креирати распореде засноване на коду, они се обично мање одржавају од КСМЛ-а и укључују библиотеке које се лако разбијају. Цомпосе је, с друге стране, дизајниран да ради директно унутар Котлина: нема више КСМЛ-а.
Јетпацк Цомпосе је такође прилично радикално одступање од стандардног императивног дизајна КСМЛ изгледа. Уместо тога, сличнији је Реацт-у или Флуттер-у, са декларативним изгледима који се сами ажурирају када се подаци промене, уместо да се ослањају на програмера да примени ту логику.
Шта је подржано
Дакле, Јетпацк Цомпосе је сада у алфа верзији. Шта то значи? Па, много ствари.
Интероперабилност са Виевс
Баш као што је Котлин у потпуности интероперабилан са Јавом, Јетпацк Цомпосе је у потпуности интероперабилан са Андроид-овим стандардним Виевс. Ово значи доста ствари.
Као прво, биће много лакше прећи на Јетпацк Цомпосе ако то желите. Уместо да морате да конвертујете све своје прилагођене приказе и распореде у Цомпосаблес, моћи ћете само да направите своје нове распореде и компоненте у Цомпосе. Имате библиотеку која користи „старе“ приказе, али је ваша апликација дизајнирана са Цомпосе? Нема проблема. Можете додати Виев директно у своју Цомпосабле функцију. Још нисте прешли на Цомпосе, али желите да користите библиотеку која се ослања на Цомпосаблес? Опет, нема проблема. Само ставите Цомпосабле право у свој распоред.
Што се тиче тематике, није баш тако плуг-анд-плаи као интероперабилност распореда. Међутим, Гугл је направио библиотеку да прилагодите своје стандардне КСМЛ теме у теме компатибилне са Цомпосе, помажући да ствари буду централизоване и избегнете дуплирање.
Анимације
Овде нема много тога да се каже, осим да Јетпацк Цомпосе подржава анимације, баш као и Андроидов оквир Виев. Можете да померате, мењате величину и ротирате колико вам је драго.
Лази Листс
Лења листа је у суштини Цомпосе верзија РецицлерВиев-а. Поставља ставке само по потреби, штедећи на РАМ-у и повећавајући перформансе. Наравно, ако је ово Цомпосе, листе су знатно једноставније за имплементацију.
ЦонстраинтЛаиоут
Један од моћнијих приказа у Андроид-у је ЦонстраинтЛаиоут. Ово вам омогућава да позиционирате, величину и тежину дечјих приказа један у односу на други, а истовремено олакшавате одређене анимације. Ако сте били забринути да ћете изгубити ову функционалност у Цомпосеу, не би требало да будете, јер је и она овде.
Компоненте корисничког интерфејса материјала
Још један скуп моћних погледа је Гоогле-ова библиотека компоненти материјала. Већина онога што је овде су стандардни прикази и распореди које можете пронаћи у матичном Виев оквиру. Али они су подешени или умотани да обезбеде додатну функционалност и олакшају креирање тема, а такође су успели да саставе Цомпосе.
Тестирање
Важан део развоја апликације је њено тестирање. За једноставну апликацију, то можете урадити ручно тако што ћете је инсталирати и користити. Међутим, сложенији пројекти могу имати велике користи од аутоматизованих оквира за тестирање који већину тешког посла обављају уместо вас. Јетпацк Цомпосе подржава аутоматизовано тестирање тако да своју апликацију можете учинити што стабилнијом.
Функције приступачности
Приступачност је важан део нашег друштва. Без функција приступачности у нашој технологији, многи људи би једноставно били искључени из предности које пружају наши телефони, телевизори и било шта друго. Јетпацк Цомпосе је још увек у алфа верзији, тако да подршка за приступачност није потпуна, али Гоогле то има на уму током развоја, а рудиментарна подршка је већ присутна.
Андроид Студио
Међутим, нису све функције Јетпацк Цомпосе-а у самом Јетпацк Цомпосе-у. Андроид Студио и Котлин такође имају додатке и проширења за лакше састављање.
Додатак за компајлер Котлин
Као и код Котлин ЈВМ-а, постоји додатак за компајлер у Андроид Студију да правилно конвертује ваше Цомпосе функције у код који Андроид заправо може да разуме и прати.
Интерактивни прегледи
Баш као и код ваших стандардних КСМЛ изгледа, Андроид Студио долази са прегледом изгледа за Јетпацк Цомпосе. Иако тренутно није тако згодно као преглед КСМЛ-а у неким аспектима — морате да направите свој пројекат за преглед за ажурирање и креирање наменске функције за преглед — има једну значајну предност: интерактивност прегледи.
Интерактивни преглед је само нормалан преглед, али интерактивни. Лудо, знам. Међутим, ово значи да можете да унесете текст у оквире за текст, да кликнете на дугмад и, добро, да ступите у интеракцију са вашим Цомпосабле-има, а да чак и не морате да их примените.
Сингле Цомпосабле Деплоимент
Ако заиста желите да примените (тј. инсталирате) свој распоред да бисте видели како функционише на стварном уређају, ова функција би вам могла помоћи. Са нормалним КСМЛ распоредима, да бисте видели како распоред функционише у стварном свету, морате да направите и инсталирате целу апликацију. Ако распоред који желите да тестирате није на примарном екрану, можда ћете много додиривати да бисте дошли до њега.
И ту долази у обзир могућност да се примени само један Цомпосабле. Уместо да морате да направите и инсталирате своју апликацију, а затим да се крећете до изгледа који тестирате, можете једноставно да примените изглед. Андроид Студио ће генерисати и отворити омотну активност која само приказује Цомпосабле који сте применили. Ово може учинити тестирање и дизајн много бржим, а може чак и помоћи да се изолују проблеми у вези са интеракцијом елемената.
Завршетак кода
Ако ваш ИДЕ нема довршавање кода, да ли је то чак и ИДЕ? Не. Не, није. Дакле, наравно, Андроид Студио подржава комплетан код за Јетпацк Цомпосе.
Иако ово није све што Јетпацк Цомпосе доноси на сто, функције и понашање изнад показују колико моћан Гоогле жели да овај оквир буде. И, док је још увек у алфа фази, то је корак испред свог претходног статуса „развоја“. Ако сте одуговлачили да заиста користите Јетпацк Цомпосе (као ја), сада је можда време да покушате поново.