Google je objavio da su ponovno izradili Dart DevTools od nule u Flutteru kako bi programerima pružili bolju izvedbu i veću svestranost.
Lepršanje je a programski okvir za više platformi, s ciljem rješavanja problema razvoja višeplatformskih aplikacija bez nereda nenativnog koda. Uz poznavanje programskog jezika Dart, razvojni programer može izraditi aplikacije za Android, iOS, web i desktop s objedinjenim korisničkim sučeljem za sve. Lepršanje 1.9 donio podršku za macOS i Catalina u alfa stanju dok je Izdanje v1.12 sazrijelo je njihovu podršku nakon pre-alfa stanja i v1.17 za Flutter i v2.8 za Dart označili su svoja prva stabilna izdanja u 2020. Google danas objavljuje novu verziju DevTools for Dart and Flutter koda, koji je ponovno izgrađen od nule u Flutteru i dolazi s nekoliko poboljšanja.
U prethodnoj najavi Google je spomenuo svoju namjeru zamjene trenutne verzije Dart DevTools s novom verzijom Flutter. To se sada dogodilo jer je novi DevTools ponovno napravljen od nule u Flutteru. Ova nova verzija DevTools dodaje poboljšanja kao što su promjene performansi i stranica memorije, kao i potpuno novu mrežnu stranicu.
Ali zašto nešto ponovno graditi kada još uvijek radi? Tim koji stoji iza Fluttera tvrdi da su prednosti produktivnosti važne pri izgradnji visokih performansi UI-ja, a najbolji način da se pokaže povjerenje u ove tvrdnje je usvajanje istih alata za se. Ponovna izgradnja u Flutteru također omogućuje programerima odabir distribucijskog modela nakon pisanja koda, koji je odstupanje od trenutnog dijagrama tijeka donošenja odluka u kojem bi model distribucije diktirao kodirati.
DevTools se isporučuje kao web aplikacija koja olakšava integraciju alata u postojeće iskustvo alata u svim ciljne platforme i IDE. DevTools je samostalni paket alata koji se izvodi u pregledniku, a radi za mobilne aplikacije, aplikacije za stolna računala i web aplikacije.
DevTools uključuje sljedeće značajke:
-
Inspektor lepršanja: alat za vizualizaciju i istraživanje stabala widgeta. Možete odabrati widgete u svojoj pokrenutoj aplikaciji, usporiti sve animacije, vidjeti osnovne linije teksta i još mnogo toga.
- Jedna od novih značajki je Layout Explorer koju možete pronaći na kartici Flutter Inspector pokraj Details Tree. Layout Explorer vam omogućuje da pregledate Flutterov flex model izgleda. Tim daje primjer kako ovaj alat može pomoći u otklanjanju pogrešaka zašto red widgeta ne izgleda onako kako je programer očekivao, na primjer.
-
Prikaz vremenske trake: prikazuje vrijeme izrade za svaki okvir i dijagram plamena. To olakšava prepoznavanje problematičnih okvira u kontekstu.
- Ovo okno sada uključuje novi gumb Prati izradu widgeta koji dodaje vremena izgradnje svih widgeta u svoju aplikaciju na vremensku traku (nauštrb izvedbe izrade vašeg profila—tako da nije uključena do zadano). Ovo je zgodno kada pokušavate saznati koji se widgeti točno nalaze iza sporog okvira.
-
Prikaz memorije: pokazuje vam kako vaša aplikacija koristi memoriju u određenom trenutku.
- Ovaj pogled sada prikazuje toplinsku kartu dodijeljene memorije i omogućuje praćenje memorije platforme.
- Prikaz izvedbe: Ovo je tradicionalni CPU profiler. Omogućuje vam da snimite sesiju svoje aplikacije i vidite u kojim je funkcijama CPU proveo najviše vremena. Ovo možete koristiti da odlučite gdje ćete provesti svoje vrijeme optimizirajući.
- DevTools čak uključuje i vlastiti Debugger. Ovo može biti korisno ako ne koristite IDE, ali ipak želite opciju dodavanja prijelomnih točaka, prolaska kroz kod, zavirivanja u vrijednosti varijabli i tako dalje.
- Mrežni prikaz: Ovo je potpuno novo.
- Kao što mu naziv govori, omogućuje vam pregled mrežnog prometa. Možete vidjeti cijelu povijest zahtjeva koje je vaša aplikacija uputila od pokretanja i dobiti detaljne informacije o svakom od njih. To vas oslobađa potrebe da sami bilježite ove događaje kada pokušavate otkloniti mrežni problem.
- Kartica Mreža trenutno prikazuje HTTP promet; buduća poboljšanja uključuju prikazivanje opći I/O promet utičnice.
- Mrežni zahtjevi također se prikazuju u prikazu vremenske trake tako da ih možete vidjeti u kontekstu.
- Prikaz zapisivanja: prikazuje događaje iz vaše aplikacije i okvira. Pomoću njega možete jednostavno filtrirati poruke (na primjer, možete navesti "-gc" za filtriranje događaja skupljača smeća ili "flutter.frame" za prikaz samo događaja okvira). U Dartu, bilježenje poruka može biti strukturiran, a prikaz Logging to koristi.
Da biste u potpunosti iskoristili DevTools, možete pročitati dokumentacija. Ako pronađete bilo kakve greške ili ako želite glasovati o novim značajkama, to možete učiniti dalje GitHub.