Dart 2.15 fiteny fandaharana sy Flutter 2.8 rafitra misy

Namoaka ny famoahana ny fiteny fandaharana Dart 2.15 i Google, izay manohy ny fivoaran'ny sampana Dart 2 nohavaozina tanteraka, izay tsy mitovy amin'ny dikan-teny voalohany amin'ny fiteny Dart amin'ny alàlan'ny fampiasana sora-baventy matanjaka (karazana azo raisina ho azy, noho izany. Tsy ilaina ny mamaritra karazana, fa ny fanoratana dynamique dia tsy ampiasaina intsony ary ny kajy voalohany dia nomena ny karazana ary ny fanamarinana karazana henjana dia ampiharina avy eo).

Ny mampiavaka ny fiteny Dart:

  • Syntax mahazatra sy mora ianarana, voajanahary ho an'ny mpandrindra JavaScript, C ary Java.
  • Miantoka ny fandefasana haingana sy ny fampisehoana avo lenta ho an'ny mpitety tranonkala maoderina rehetra sy ny karazana tontolo isan-karazany, manomboka amin'ny fitaovana azo entina mankany amin'ny lohamilina matanjaka.
  • Ny fahafahana mamaritra kilasy sy interface tsara izay mamela ny encapsulation sy ny fampiasana indray ny efa misy fomba sy ny angona.
  • Ny famaritana karazana dia manamora ny fandrafetana sy hamantarana ny lesoka, mahatonga ny kaody ho mazava kokoa sy mora vakina, ary manatsotra ny fanovana sy ny famakafakana ataon'ireo mpamorona antoko fahatelo.
  • Ny karazana tohana dia misy: karazana hash, arrays ary lisitra, filaharana, karazana isa sy tady, karazana hamaritana ny daty sy ny ora, fomba fiteny mahazatra (RegExp). Azo atao ny mamorona karazana anao manokana.
  • Mba handaminana ny famonoana parallèle, dia soso-kevitra ny hampiasa kilasy miaraka amin'ny toetra mitoka-monina, ny kaody izay tanterahana tanteraka amin'ny toerana mitoka-monina ao amin'ny faritra fitadidiana misaraka, mifandray amin'ny dingana lehibe amin'ny fandefasana hafatra.
  • Fanohanana ny fampiasana trano famakiam-boky izay manamora ny fanohanana sy ny debugging ny tetikasan-tranonkala lehibe. Azo ampidirina amin'ny endrika tranomboky iombonana ny fampiharana ny asa ataon'ny antoko fahatelo. Azo zaraina ho ampahany ny fampiharana ary ankininy amin'ny ekipa mpandrindra programa manokana ny fampandrosoana ny ampahany tsirairay.
  • Fitaovam-pitaovana efa vonona hanohanana ny fampandrosoana amin'ny fiteny Dart, ao anatin'izany ny fampiharana ny fampivoarana mavitrika sy ny fitaovana debug miaraka amin'ny fanitsiana kaody amin'ny lalitra (“manova-ary-manohy”).
  • Mba hanatsorana ny fampandrosoana amin'ny fiteny Dart dia tonga miaraka amin'ny SDK, pub manager manager, analyzer dart_analyzer code static, tranomboky iray, tontolo fampandrosoana mitambatra DartPad sy Dart-enabled plugins ho an'ny IntelliJ IDEA, WebStorm, Emacs, Text Sublime 2 sy vim.
  • Ny fonosana fanampiny misy trano famakiam-boky sy kojakoja dia zaraina amin'ny alàlan'ny fitahirizana pub, izay misy fonosana 22 arivo eo ho eo.

Fiovana lehibe amin'ny famoahana Dart 2.15:

  • Manome fitaovana ho an'ny fanatanterahana asa mifanitsy haingana miaraka amin'ny fitokanan'ny mpitantana. Amin'ny rafitra maro-fototra, ny Dart runtime amin'ny alàlan'ny default dia mitantana fehezan-dalàna fampiharana amin'ny fototra CPU iray ary mampiasa cores hafa mba hanatanterahana ny asan'ny rafitra toy ny I/O asynchronous, manoratra amin'ny rakitra, na manao antso amin'ny tambajotra. Ho an'ny rindranasa mila manatanteraka ny mpitantana azy mifanandrify, ohatra, mba hamerenana ny animation ao amin'ny interface, dia azo atao ny manomboka blocs code (mitokana), mitoka-monina ary tanterahana amin'ny core CPU hafa miaraka amin'ny kofehy fampiharana lehibe. . Mba hiarovana amin'ny hadisoana mipoitra rehefa manatanteraka miaraka ny fehezan-dalàna miasa miaraka amin'ny angon-drakitra mitovy, dia voarara ny fizarana zavatra azo ovaina amin'ny sakana mitoka-monina samihafa, ary ny maodely mandalo hafatra dia ampiasaina amin'ny fifampiraharahana eo amin'ireo mpitantana.

    Dart 2.15 dia mampiditra foto-kevitra vaovao - vondrona sakana mitoka-monina (vondrona mitoka-monina), izay ahafahanao mandamina ny fidirana ifampizarana amin'ny rafitra angon-drakitra anatiny isan-karazany amin'ny sakana mitoka-monina izay ao anatin'ny vondrona iray ihany, izay mety hampihena be ny haavony rehefa mifandray eo amin'ireo mpitantana ao anaty vondrona iray. . Ohatra, ny fandefasana sakana mitoka-monina fanampiny ao amin'ny vondrona efa misy dia in-100 heny haingana kokoa ary mitaky fitadidiana 10-100 heny noho ny fandefasana sakana mitoka-monina iray, noho ny fanafoanana ny filàna fanombohana ny rafitra angon-drakitra fandaharana.

    Na dia eo aza ny zava-misy fa ny sakana mitokantokana ao amin'ny vondrona iray dia mbola mandrara ny fidirana ifampizarana amin'ny zavatra azo ovaina, ny vondrona dia mampiasa fitadidiana antontam-bato iombonana, izay afaka manafaingana be ny famindrana zavatra avy amin'ny bloc iray mankany amin'ny iray hafa tsy mila manao asa dika mitovy amin'ny loharanon-karena. Ny dikan-teny vaovao ihany koa dia ahafahanao mampita ny valin'ny mpitantana rehefa miantso Isolate.exit() mba hamindra angona amin'ny sakana mitoka-monina tsy misy kopia. Fanampin'izany, nohatsaraina ny rafitra fandefasana hafatra - ny hafatra kely sy salantsalany dia voahodina in-8 eo ho eo haingana kokoa. Ny zavatra azo ampitaina eo anelanelan'ny mitoka-monina amin'ny alàlan'ny antso SendPort.send() dia misy karazana fiasa sasany, fanakatonana ary dian'ny stack.

  • Ao amin'ny fitaovana hamoronana tondro ho an'ny asa tsirairay ao amin'ny zavatra hafa (rovitra) dia nesorina ny famerana amin'ny famoronana tondro mitovy amin'ny kaody mpanorina, izay mety ilaina rehefa manangana fifandraisana mifototra amin'ny tranomboky Flutter. Ohatra, mba hamoronana Widget Column misy Widget Text marobe, azonao atao ny miantso ny ".map()" ary mandefa tondro mankany amin'ny Text.new constructor amin'ny Text object: class FruitWidget extends StatelessWidget { @override Widget build(BuildContext context) { Avereno tsanganana (ankizy: ['Apple', 'Orange'].map(Text.new).toList()); } }
  • Nitarina ny fahafahana mifandray amin'ny fampiasana tondro fiasa. Nampiana ny fahafahana mampiasa fomba générique sy tondro fiasa mba hamoronana fomba sy tondro tsy générique: T id (T sanda) => sanda; var intId = id ; // navela tamin'ny version 2.15 fa tsy "int Function(int) intId = id;" const fo = id; // pointer amin'ny function id. const c1 = fo ;
  • Ny dart:core library dia nanatsara ny fanohanana ny enums, ohatra, azonao atao izao ny mamoaka sanda tady avy amin'ny sandan'ny enum tsirairay amin'ny alàlan'ny fomba ".name", mifantina sanda amin'ny anarana, na mifanandrify sanda roa: enum MyEnum { iray , roa, telo } void main() { print(MyEnum.one.name); // "iray" no hatao pirinty. print(MyEnum.values.byName('roa') == MyEnum.two); // "marina" dia hatao pirinty. sari-tany farany = MyEnum.values.asNameMap(); print(sari-tany['telo'] == MyEnum.three); // "marina". }
  • Napetraka ny teknika fanerena pointer izay mamela ny fampiasana fanehoana tondro mirindra kokoa amin'ny tontolo 64-bit raha toa ka ampy ny adiresin'ny adiresy 32-bit (tsy mihoatra ny 4 GB ny fahatsiarovana no ampiasaina). Nasehon'ny fitsapana fa ny fanatsarana toy izany dia ahafahana mampihena ny haben'ny antontam eo ho eo amin'ny 10%. Ao amin'ny Flutter SDK, ny maody vaovao dia efa alefa ho an'ny Android amin'ny alàlan'ny default, ary nokasaina ho alefa ho an'ny iOS amin'ny famoahana ho avy.
  • Ny Dart SDK dia misy fitaovana ho an'ny debugging sy ny famakafakana ny zava-bita (DevTools), izay efa natolotra tao anaty fonosana mitokana.
  • Nampiana fitaovana ny baiko "dart pub" sy ny fitahirizana fonosana pub.dev mba hanaraha-maso ny famoahana tsy nahy ny fampahalalana tsiambaratelo, ohatra, mamela ny fahazoan-dàlana ho an'ny rafitra fampidirana mitohy sy ny tontolo rahona ao anaty fonosana. Raha tsikaritra ny fivoahana toy izany, dia ho tapaka miaraka amin'ny hafatra diso ny fanatanterahana ny baiko "dart pub publish". Raha toa ka nisy diso tsara dia azo atao ny mandingana ny fanamarinana amin'ny alàlan'ny lisitra fotsy.
  • Ny fahafahana manafoana ny dikan-teny efa navoaka amin'ny fonosana dia nampiana tao amin'ny pub.dev repository, ohatra, raha misy hadisoana mampidi-doza na vulnerabilities hita. Teo aloha, ho an'ny fanitsiana toy izany, ny fanao dia ny famoahana dikan-teny fanitsiana, fa amin'ny toe-javatra sasany dia ilaina ny manafoana ny famoahana efa misy ary mampiato haingana ny fizarana fanampiny (ohatra, raha tsy mbola vonona ny fanitsiana na raha misy famoahana feno. navoaka tsy nety fa tsy version test). Aorian'ny fanafoanana dia tsy hita intsony ilay fonosana ao amin'ny baiko "pub get" sy "pub upgrade", ary amin'ny rafitra efa nametraka azy dia misy fampitandremana manokana avoaka amin'ny manaraka ny "pub get" dia tanterahina.
  • Fiarovana fanampiny amin'ny vulnerability (CVE-2021-22567) vokatry ny fampiasana tarehin-tsoratra unicode ao amin'ny kaody izay manova ny filaharan'ny fampisehoana.
  • Namboarina ny vulnerable (CVE-2021-22568) izay ahafahanao maka tahaka ny mpampiasa pub.dev hafa rehefa mamoaka fonosana amin'ny mpizara antoko fahatelo izay manaiky mari-pamantarana fidirana pub.dev oauth2. Ohatra, ny vulnerability dia azo ampiasaina hanafika ireo mpizara fonosana anatiny sy orinasa. Ireo mpamorona izay mampiantrano fonosana ao amin'ny pub.dev ihany dia tsy voakasik'ity olana ity.

Nandritra izany fotoana izany dia naseho ny famoahana manan-danja ny rafitry ny interface interface Flutter 2.8, izay heverina ho solon'ny React Native ary mamela, mifototra amin'ny fototra fehezan-dalàna tokana, hamoaka rindranasa ho an'ny iOS, Android, Windows, macOS ary Sehatra Linux, ary koa mamorona rindranasa hihazakazaka amin'ny navigateur. Ny akorandriaka mahazatra ho an'ny rafitra fiasan'ny microkernel Fuchsia novolavolain'i Google dia naorina tamin'ny alàlan'ny Flutter. Marihina fa tao anatin'ny enim-bolana lasa izay dia nitombo ny isan'ny fampiharana Flutter 2 ao amin'ny Google Play Store avy amin'ny 200 arivo ho 375 arivo, izany hoe. efa ho indroa.

Ny ampahany lehibe amin'ny kaody Flutter dia ampiharina amin'ny fiteny Dart, ary ny motera runtime ho an'ny fampiharana fampiharana dia voasoratra ao amin'ny C ++. Rehefa mamolavola rindranasa, ankoatra ny fiteny Dart teratany an'i Flutter, dia azonao atao ny mampiasa ny interface Dart Foreign Function hiantsoana kaody C/C++. Ny fampandehanana avo lenta dia azo amin'ny alàlan'ny fanangonana ny rindranasa amin'ny kaody teratany ho an'ny sehatra kendrena. Amin'ity tranga ity, ny programa dia tsy mila averina averina aorian'ny fanovana tsirairay - Dart dia manome fomba famerenana mafana izay ahafahanao manova ny rindranasa mihazakazaka ary manombana avy hatrany ny vokatra.

Anisan'ny fiovana amin'ny famoahana vaovao an'ny Flutter, ny fanatsarana ny hafainganam-pandehan'ny fandefasana sy ny fanjifana fahatsiarovana amin'ny fitaovana finday. Mora kokoa ny mampifandray fampiharana amin'ny serivisy backend toa ny Firebase sy Google Cloud. Nalamina ny fitaovana fampidirana amin'ny Google Ads. Ny fanohanana ny fakan-tsary sy ny plugins amin'ny tranonkala dia nihatsara be. Natolotra ny fitaovana vaovao hanatsorana ny fampandrosoana, ohatra, nampiana widget iray ho an'ny fanamarinana amin'ny fampiasana Firebase. Nohavaozina ny motera Flame, natao hamolavola lalao 2D mampiasa Flutter.

Source: opennet.ru

Add a comment