Dart 2.14 gagana ma Flutter 2.5 fa'ava'a avanoa

Google ua lomia le tatalaina o le Dart 2.14 gagana polokalame, lea e faaauau pea le atinae o se radically redesigned Dart 2 lala, lea e ese mai le uluai lomiga o le gagana Dart i le faaaogaina o le malosi static typing (ituaiga e mafai ona otometi ona manatu, o lea e faamaoti mai. e le'o mana'omia ituaiga, ae e le o toe fa'aogaina le ta'i malosi ma o le fa'atusatusaga muamua o le ituaiga e tu'uina atu i le fesuiaiga ma fa'atonuina le siakiina o le ituaiga).

Vaega o le gagana Dart:

  • Fa'asologa masani ma faigofie ona a'oa'oina, fa'anatura mo tagata fai polokalame JavaScript, C ma Java.
  • Faʻamautinoa le faʻalauiloaina vave ma le maualuga o faʻatinoga mo suʻesuʻega uma i luga o le upega tafaʻilagi faʻaonapo nei ma ituaiga eseese o siʻosiʻomaga, mai masini feaveaʻi i 'auʻaunaga mamana.
  • Le mafai ona faʻamalamalamaina vasega ma fesoʻotaʻiga e mafai ai ona faʻapipiʻi ma toe faʻaaogaina auala ma faʻamatalaga o loʻo iai.
  • O le fa'ama'otiina o ituaiga e fa'afaigofie ai le debug ma fa'ailoa mea sese, fa'amanino atili le fa'ailoga ma sili atu ona mafai ona faitau, ma fa'afaigofieina lona suiga ma au'ili'ili e le au atina'e lona tolu.
  • Ituaiga lagolago e aofia ai: ituaiga eseese o hashes, arrays ma lisi, queues, numera ma manoa ituaiga, ituaiga mo le fuafuaina o le aso ma le taimi, faʻamatalaga masani (RegExp). E mafai ona fai a oe lava ituaiga.
  • Ina ia faʻatulagaina le faʻatinoga tutusa, ua fautuaina e faʻaoga vasega faʻatasi ai ma le uiga tuʻufua, o le code lea e faʻatinoina atoa i le vaʻavaʻa ese i se isi nofoaga manatua, fegalegaleai ma le faiga autu e ala i le lafoina o feʻau.
  • Lagolago mo le faʻaogaina o faletusi e faʻafaigofie ai le lagolago ma le faʻaogaina o galuega tetele i luga ole laiga. O fa'atinoga fa'atino a vaega lona tolu e mafai ona fa'aaofia i le faiga o faletusi fa'asoa. O talosaga e mafai ona vaevaeina i ni vaega ma tuʻuina atu le atinaʻeina o vaega taʻitasi i se vaega eseese o tagata fai polokalame.
  • O se seti o meafaigaluega ua saunia e lagolago ai le atinaʻe i le gagana Dart, e aofia ai le faʻatinoina o le atinaʻe malosi ma le faʻaogaina o meafaigaluega faʻatasi ai ma le faʻasaʻoina o tulafono i luga o le lele ("faʻasaʻo-ma-faʻaauau").
  • Ina ia faafaigofieina le atinae i le gagana Dart, e sau ma se SDK, se pusa pule pusa, se static code analyzer dart_analyzer, se seti o faletusi, se siosiomaga atinae tuufaatasia DartPad ma Dart-enabled plugins mo IntelliJ IDEA, WebStorm, Emacs, Sublime Text 2 ma Vim.
  • O isi afifi faʻatasi ma faletusi ma mea aoga e tufatufaina atu i le fale faʻatau oloa, lea e sili atu i le 20 afe afifi.

Suiga tetele i le faʻasalalauga Dart 2.14:

  • Ua faʻaopoopoina se faʻaoga tolu suiga fou (>>>), lea, e le pei o le ">>" operator, e le o se numera, ae o se suiga talafeagai e galue e aunoa ma le amanaia o le faʻailoga (o le suiga e faia e aunoa ma le vaevaeina i totonu. numera lelei ma le leaga).
  • Ave'ese le tapula'a i ituaiga finauga na taofia ai ituaiga galuega lautele mai le fa'aaogaina o se ituaiga finauga. Mo se faʻataʻitaʻiga, e mafai nei ona e faʻamaonia: tuai Lisi (T)>idFunctions; var callback = [ (T value) => tau]; tuai S Galuega (T)>(S) f;
  • Fa'ataga le fa'amaotiina o finauga ma ituaiga i fa'amatalaga e pei o @Deprecated. Mo se faʻataʻitaʻiga, e mafai nei ona e faʻamaonia: @TypeHelper (42, "O le uiga")
  • O metotia faʻataʻitaʻiga hash, hashAll ma hashAllUnordered ua faʻaopoopoina i le faletusi masani (autu) i le vasega Object. O le vasega DateTime ua fa'aleleia atili le fa'afoeina o taimi fa'apitonu'u pe a fa'aliliu uati i le va o le tau mafanafana ma le taumalulu e le mafai ona vaelua i le itula e tasi (mo se fa'ata'ita'iga, i Ausetalia o lo'o fa'aogaina le offset o le 30 minute). O le pusa ffi ua fa'aopoopoina le lagolago mo le fa'aogaina o mea e manatua ai le malae, lea e otometi lava ona tu'u mai punaoa. O le pusa ffigen ua faʻaopoopoina le tomai e faʻatupu ai faʻamatalaga typedef o ituaiga Dart mai le gagana C.
  • O le 250 sili ona lauiloa afifi mai le pub.dev repository ma 94% o le pito i luga-1000 ua suia i le faʻaogaina o le "null safety" mode, lea o le a aloese ai mai faʻalavelave e mafua mai i taumafaiga e faʻaoga fesuiaiga o latou tau e le faʻamalamalamaina ma seti i le "Null. ”" O le fa'atusa e fa'aalia ai e le mafai ona i ai ni tau fa'aletonu se'i vagana ua tu'u fa'amaonia le tau o le null. O le faiga e matua fa'aaloalo lava i ituaiga fesuiaiga, lea e mafai ai e le tagata fa'apipi'i ona fa'aoga fa'aopoopo fa'atatau. O le tausisia o le ituaiga e siakiina i le taimi o le tuʻufaʻatasia, mo se faʻataʻitaʻiga, pe afai e te taumafai e tuʻuina le tau "Null" i se fesuiaiga ma se ituaiga e le faʻaalia ai le tulaga le faʻamalamalamaina, e pei o le "int", o le a faʻaalia se mea sese.
  • O seti tu'ufa'atasi o tulafono mo le su'esu'e tulafono (linter) o lo'o tu'uina atu, e tu'uina atu ai le lagolago fa'atasi mo le siakiina o le usita'ia o ta'iala mo le Dart ma le Flutter framework. Mo mafuaaga faʻasolopito, o tulafono faʻamaonia mo Flutter ma Dart e ese, faʻaopoopo, mo Dart e lua seti o tulafono o loʻo faʻaaogaina - pedantic mai Google ma tulafono mai le Dart developer community. Dart 2.14 fa'alauiloa se seti fou masani o tulafono mo linter, lea ua filifili e fa'aaoga e ala i le fa'aletonu i galuega fou Dart ma i le Flutter SDK. O le seti e aofia ai tulafono autu (lints/core.yaml package), fautuaina tulafono faaopoopo (lints/recommended.yaml), ma Flutter-specific fautuaga (flutter_lints/flutter.yaml). O lo'o fa'aogaina tulafono fa'atatau e fautuaina e sui i le fa'aogaina o se sitaili fou e fa'atatau i fautuaga mai le pepa Dart.
  • I le formatter, optimizations ua faia i le faatulagaga o poloka code cascading, lea e mafai ona faʻaleleia lelei le faʻatulagaina o faʻatinoga ma aloese mai faʻamatalaga le mautonu o le umiaina o elemene faʻaaliga. Mo se faʻataʻitaʻiga, valaʻau "..doIt" i le faʻamatalaga "var result = errorState ? foo : leaga..doIt()" e le o aafia ai le vaega o tuutuuga o le poloka "leaga", ae o le faaupuga atoa, o lea pe a faʻapipiʻiina ua vavae ese nei: var result = errorState ? foo : leaga ..doIt();
  • Lagolago mo Apple M1 (Silicon) processors ua faʻaopoopoina i le SDK, faʻaalia uma le mafai ona faʻatautaia Dart VM, mea aoga ma SDK vaega i luga o faiga faʻatasi ma le Apple Silicon processor, ma le lagolago mo le tuʻufaʻatasia o faila faʻatinoina mo nei meataalo.
  • O le "dart pub" poloaiga ua faaopoopo le lagolago mo se faila auaunaga fou ".pubignore", lea e mafai ai ona e faʻamalamalamaina se lisi o faila o le a faaseʻe pe a lolomiina se afifi i le fale teu oloa pub.dev. O nei faʻatulagaga e le faʻalavelave i le ".gitignore" le amanaʻia lisi (i nisi o tulaga, pub.dev atonu e manaʻo e aloese mai le fesiitaiga o faila e manaʻomia i Git, mo se faʻataʻitaʻiga, tusitusiga i totonu na faʻaaogaina i le taimi o le atinaʻe).
  • Ua maeʻa galuega e faʻaleleia ai le faʻatinoga o le faʻatonuga o le "suʻega dart", lea e le manaʻomia ai le toe tuʻufaʻatasia o suʻega pe a uma ona suia le pubspec pe afai e leʻi suia le numera numera.
  • Lagolago mo le tu'ufa'atasia i le ECMAScript 5 tulaga fa'afetaui ua fa'agata (o le suiga o le a i'u ai i le leiloa o le feso'ota'iga ma le IE11 browser).
  • Ua fa'ailoa mai ua le toe aoga le fa'aoga ta'itasi, dartfmt ma le dart2native, ua suia i fa'atonuga fa'apipi'i e ta'ua e ala i le fa'aoga dart.
  • O le masini VM Native Extensions ua le toe fa'aaogaina. Ina ia valaʻau le tulafono faʻapitoa mai le Dart code, e fautuaina e faʻaaoga le Dart FFI fou (Foreign Function Interface).

I le taimi lava e tasi, na tuʻuina atu ai se faʻasalalauga faʻapitoa o le faʻaogaina o fesoʻotaʻiga faʻaoga Flutter 2.5, lea e manatu o se isi mea i le React Native ma faʻatagaina, faʻavae i luga o le tasi code base, e faʻasaʻo ai talosaga mo iOS, Android, Windows, macOS ma Linux. platforms, faʻapea foʻi ma le fatuina o talosaga e faʻatautaia i suʻesuʻega. O se atigi masani mo le Fuchsia microkernel operating system na fausia e Google ua fausia i luga o le faavae ole Flutter.

O le vaega autu o le Flutter code o loʻo faʻatinoina i le gagana Dart, ma o le taʻavale afi mo le faʻatinoina o talosaga o loʻo tusia i le C ++. A atia'e talosaga, fa'aopoopo i le gagana Dart a Flutter, e mafai ona e fa'aogaina le Dart Foreign Function interface e vala'au ai le C/C++ code. E maua le fa'atinoga maualuga e ala i le tu'ufa'atasia o tusi talosaga i le tulafono fa'ale-aganu'u mo tulaga fa'atatau. I lenei tulaga, e le manaʻomia le toe faʻapipiʻiina o le polokalame pe a maeʻa suiga taʻitasi - Dart e tuʻuina atu se faiga vevela vevela lea e mafai ai ona e faia suiga i se talosaga faʻaoga ma vave iloilo le taunuuga.

Suiga tetele ile Flutter 2.5:

  • Faia ni fa'atinoga taua tele. I luga ole iOS ma macOS platforms, ua faʻatinoina muamua le tuʻufaʻatasia o shaders mo le Metal graphics API. Fa'aleleia atili le lelei o le fa'agaioiina o mea fa'aletonu. Fo'ia se fa'afitauli i le tuai ona toe maua mai e le tagata ao lapisi le manatua mai ata e le'i fa'aaogaina (mo se fa'ata'ita'iga, i le taimi e toe ta'alo ai se GIF animated e 20-lua, na fa'aitiitia le aofa'i o galuega fa'aputu lapisi mai le 400 i le 4. Fa'atuai pe a pasi fe'au i le va o Dart ma Objective- C/Swift na fa'aitiitia ile 50% (iOS) po'o le Java/Kotlin (Android) Fa'aopoopoina le lagolago faufale fa'aletagata mo faiga fa'avae ile Apple Silicon chip.
    Dart 2.14 gagana ma Flutter 2.5 fa'ava'a avanoa
  • Mo le Android platform, ua fa'atuina le lagolago mo le fa'agaioia o talosaga i le ata atoa. O le faʻatinoga o le "Material You" design concept, na tuʻuina atu o se isi augatupulaga Material Design filifiliga, faʻaauau. Fa'aopoopoina se tulaga fou MaterialState.scrolledUnder, fa'atino le fa'aaliga malosi o pa'u ta'ai pe a toe fa'afua, ma fa'atūina se atina'e fou mo le fa'aalia o fu'a fa'ailoa.
  • O le gafatia o le mea pueata plug-in ua matua faʻalauteleina, faʻaopoopo meafaigaluega mo le faʻatonutonuina o le autofocus, faʻaalia, moli, soʻo, faʻaitiitia le pisa ma fofo.
  • Mea faigaluega atiaʻe (DevTools) ua faʻaleleia e aofia ai le faʻafouina o le faʻataʻitaʻiga o le widget, faʻapea foʻi ma meafaigaluega mo le faʻailoaina o le tuai o le tuʻuina atu ma le siakiina o le tuufaatasiga o le shader.
    Dart 2.14 gagana ma Flutter 2.5 fa'ava'a avanoa
  • Fa'alelei plugini mo Visual Studio Code ma IntelliJ/Android Studio.

puna: opennet.ru

Faaopoopo i ai se faamatalaga