Google prestavuje Dart DevTools od nuly vo Flutteri

Google oznámil, že vo Flutter prebudoval Dart DevTools od nuly, aby vývojárom poskytol lepší výkon a väčšiu všestrannosť.

Flutter je a multiplatformový programovací rámec, ktorej cieľom je vyriešiť problémy s vývojom aplikácií naprieč platformami bez neporiadku s nenatívnym kódom. So znalosťou programovacieho jazyka Dart môže vývojár vytvárať aplikácie pre Android, iOS, web a desktop s jednotným používateľským rozhraním naprieč všetkými. Flutter 1.9 priniesol podporu MacOS a Catalina v stave alfa, zatiaľ čo Vydanie v1.12 dozrelo ich podporu po pre-alfa stave a v1.17 aplikácie Flutter a v2.8 aplikácie Dart zaznamenali svoje prvé stabilné vydania v roku 2020. Google dnes vydáva novú verziu DevTools pre kód Dart a Flutter, ktorá bola od základov prestavaná vo Flutter a prichádza s niekoľkými vylepšeniami.

V predchádzajúcom oznámení spoločnosť Google spomenula svoj zámer vymeniť súčasnú verziu Dart DevTools za novú verziu Flutter. Stalo sa to teraz, keď boli nové nástroje pre vývojárov prestavané od začiatku vo Flutteri. Táto nová verzia DevTools pridáva vylepšenia, ako sú zmeny na stránke výkonu a pamäte, ako aj úplne novú sieťovú stránku.

Ale prečo niečo prestavovať, keď to stále funguje? Tím stojaci za Flutterom tvrdí, že výhody produktivity sú dôležité pri budovaní vysokého výkonu Používateľské rozhranie a najlepší spôsob, ako preukázať dôveru v tieto tvrdenia, je prijať rovnaké nástroje sami. Rebuilding in Flutter tiež umožňuje vývojárom vybrať distribučný model po napísaní kódu, ktorý je odklon od súčasného vývojového diagramu rozhodovania, v ktorom by to diktoval distribučný model kód.

DevTools sa dodáva ako webová aplikácia, ktorá uľahčuje integráciu nástroja do existujúceho prostredia nástrojov vo všetkých cieľové platformy a IDE. DevTools je samostatný balík nástrojov, ktorý beží v prehliadači a funguje pre mobilné aplikácie, desktopové aplikácie a web. aplikácie.

DevTools obsahuje nasledujúce funkcie:

  • Flutterový inšpektor: nástroj na vizualizáciu a skúmanie stromov widgetov. Môžete si vybrať miniaplikácie vo svojej spustenej aplikácii, spomaliť všetky animácie, zobraziť základné čiary textu a ďalšie.
    • Jednou z nových funkcií je Layout Explorer, ktorú nájdete na karte Flutter Inspector vedľa stromu podrobností. Layout Explorer vám umožňuje kontrolovať Flutterov model flexibilného rozloženia. Tím uvádza príklad toho, ako môže tento nástroj pomôcť pri ladení, prečo napríklad rad miniaplikácií nevyzerá tak, ako vývojár očakával.
Flutterový inšpektor
  • Zobrazenie časovej osi: zobrazuje časy zostavenia pre každý snímok a plameňový graf. To uľahčuje identifikáciu problematických rámcov v kontexte.
    • Táto tabla teraz obsahuje nové tlačidlo Sledovať zostavy miniaplikácií, ktoré pridáva časy zostavenia všetkých miniaplikácií vašej aplikácie na časovú os (na úkor výkonu zostavy vášho profilu – takže nie je zapnutá predvolené). Je to užitočné, keď sa snažíte zistiť, ktoré miniaplikácie sú za pomalým rámom.
Tabuľka vykresľovania snímok
  • Pohľad na pamäť: zobrazuje, ako vaša aplikácia využíva pamäť v danom momente.
    • Toto zobrazenie teraz zobrazuje teplotnú mapu pridelenej pamäte a umožňuje sledovať aj pamäť platformy.
Anatómia pamäte
  • Pohľad na výkon: Toto je tradičný profilovač CPU. Umožňuje vám zaznamenať reláciu vašej aplikácie a zistiť, v ktorých funkciách CPU strávil väčšinu času. Môžete sa tak rozhodnúť, kde budete tráviť čas optimalizáciou.
  • DevTools dokonca obsahuje svoje vlastné Debugger. To môže byť užitočné, ak nepoužívate IDE, ale napriek tomu chcete možnosť pridať body prerušenia, krokovať kód, nahliadnuť do hodnôt premenných atď.
Debugger
  • Zobrazenie siete: Toto je úplne nové.
    • Ako už názov napovedá, umožňuje vám kontrolovať sieťovú prevádzku. Môžete si pozrieť celú históriu žiadostí, ktoré vaša aplikácia zadala od spustenia, a získať podrobné informácie o každej z nich. To vás oslobodí od toho, že pri pokuse o ladenie problému so sieťou nemusíte tieto udalosti zaznamenávať sami.
    • Karta Sieť momentálne zobrazuje prenos HTTP; budúce vylepšenia zahŕňajú zobrazovanie všeobecná I/O prevádzka soketov.
    • Sieťové požiadavky sa zobrazujú aj v zobrazení časovej osi, takže ich môžete vidieť v kontexte.
  • Zobrazenie protokolovania: zobrazuje udalosti z vašej aplikácie a rámca. Pomocou neho môžete jednoducho filtrovať správy (napríklad môžete zadať "-gc" na odfiltrovanie udalostí Garbage Collector alebo "flutter.frame" na zobrazenie iba rámcových udalostí). V Darte zaznamenávanie správ môžu byť štruktúrovanéa zobrazenie protokolovania to využíva.

Ak chcete úplne využiť nástroje DevTools, môžete si prečítať dokumentáciu. Ak nájdete nejaké chyby alebo ak chcete hlasovať o nových funkciách, môžete tak urobiť ďalej GitHub.