{"id":81140,"date":"2020-05-11T07:42:08","date_gmt":"2020-05-11T05:42:08","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-yazyka-programmirovaniya-dart-2-8"},"modified":"2020-05-11T07:42:08","modified_gmt":"2020-05-11T05:42:08","slug":"vypusk-yazyka-programmirovaniya-dart-2-8","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/vypusk-yazyka-programmirovaniya-dart-2-8","title":{"rendered":"Pubblicazione del linguaggio di programmazione Dart 2.8","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/dartlang\/announcing-dart-2-8-7750918db0a\">Si \u00e8 svolto<\/a><\/noindex> rilascio del linguaggio di programmazione <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dartlang.org\/\">Dart 2.8<\/a><\/noindex>, in cui continua lo sviluppo della branca totalmente rivisitata di Dart 2, focalizzata sulla creazione di sistemi Web e mobili e ottimizzata per la generazione di componenti eseguiti lato client. <\/p>\n<p>Dart 2 si differenzia dalla versione originale del linguaggio Dart per l'uso di una forte tipizzazione statica (i tipi possono essere dedotti automaticamente, quindi specificare i tipi non \u00e8 obbligatorio, ma la tipizzazione dinamica non \u00e8 pi\u00f9 utilizzata e il tipo calcolato inizialmente \u00e8 fissato alla variabile e in seguito \u00e8 applicato un rigoroso controllo del tipo). Per lo sviluppo di applicazioni Web <noindex><a rel=\"nofollow\" href=\"https:\/\/webdev.dartlang.org\/\">si propone<\/a><\/noindex> sono disponibili set di librerie specifiche, come dart:html, oltre al framework web Angular. Per la creazione di applicazioni mobili, viene promosso il framework <noindex><a rel=\"nofollow\" href=\"https:\/\/flutter.io\/\">Flutter<\/a><\/noindex>, su cui si basa anche l'interfaccia utente della nuova microkernel operating system in sviluppo presso Google <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52464\">Fuchsia<\/a><\/noindex>. <\/p>\n<p>Nel nuovo rilascio:<\/p>\n<ul>\n<li class=\"l\"> Sono stati aggiunti strumenti per un uso sicuro del valore \u00abNull\u00bb, che violano la retrocompatibilit\u00e0. Ad esempio, ora verr\u00e0 restituito un errore in fase di compilazione se si tenta di assegnare il valore \u00abNull\u00bb a una variabile di un tipo che non prevede uno stato indefinito, come \u00abint\u00bb. Sono anche state introdotte restrizioni sulla compatibilit\u00e0 delle variabili con i tipi che ammettono oppure no il Null, come \u00abint?\u00bb e \u00abint\u00bb (una variabile di tipo \u00abint?\u00bb pu\u00f2 ricevere una variabile di tipo \u00abint\u00bb, ma non viceversa). Lo stesso vale per le variabili restituite nell'operatore \u00abreturn\u00bb \u2014 se nel corpo della funzione non \u00e8 stata assegnata una variabile di un tipo che non ammette lo stato \u00abNull\u00bb, il compilatore mostrer\u00e0 un errore. Le modifiche indicate eviteranno i crash causati dal tentativo di utilizzare variabili il cui valore non \u00e8 definito e impostato su \u00abNull\u00bb.\n<li class=\"l\"> Repository <noindex><a rel=\"nofollow\" href=\"https:\/\/pub.dev\/\">pub.dev<\/a><\/noindex> ha superato la soglia di 10.000 pacchetti. Durante il ciclo di preparazione di Dart 2.8, \u00e8 stata notevolmente migliorata la performance di recupero dei pacchetti da pub.dev grazie al supporto per il recupero dei pacchetti in pi\u00f9 thread paralleli durante l'esecuzione del comando \u00abpub get\u00bb, e grazie alla compilazione posticipata durante l'esecuzione del comando \u00abpub run\u00bb. Il test del comando \u00abpub get\u00bb per un nuovo progetto basato su Flutter ha mostrato una riduzione del tempo di esecuzione dell'operazione da 6.5 a 2.5 secondi, e per applicazioni pi\u00f9 grandi, come Flutter gallery, da 15 a 3 secondi.\n<li class=\"l\"> \u00c8 stato aggiunto un nuovo comando \u00abpub outdated\u00bb per mantenere tutte le dipendenze dei pacchetti installati aggiornate. Con il comando \u00abpub outdated\u00bb \u00e8 possibile valutare la disponibilit\u00e0 di versioni pi\u00f9 recenti e significative per tutte le dipendenze associate al pacchetto specificato senza modificare il file pubspec. A differenza di \u00abpub upgrade\u00bb, il nuovo comando verifica non solo le versioni corrispondenti al pubspec, ma anche i rami pi\u00f9 recenti. Ad esempio, per un pacchetto con dipendenze bloccate \u00abfoo: ^1.3.0\u00bb e \u00abbar: ^2.0.0\u00bb, l'esecuzione di \u00abpub outdated\u00bb mostrer\u00e0 la disponibilit\u00e0 sia di aggiornamenti che di rami pi\u00f9 recenti.\n<p>   Dipendenze            Corrente  Aggiornabile  Risolvibile  Ultimo<br \/>\n   foo                     1.3.0    1.3.1       1.3.1       1.3.1<br \/>\n   bar                     2.0.1    2.1.0       3.0.3       3.0.3<\/p>\n<\/ul>\n<p>Caratteristiche del linguaggio Dart:\n<\/p>\n<ul>\n<li class=\"l\"> Sintassi familiare e semplice da apprendere, naturale per programmatori in JavaScript, C e Java.\n<\/li>\n<li class=\"l\"> Garantire un avvio rapido e prestazioni elevate per tutti i moderni web browser e vari tipi di ambienti, dai dispositivi portatili ai server potenti;\n<\/li>\n<li class=\"l\"> Possibilit\u00e0 di definire classi e interfacce che consentono di utilizzare l'incapsulamento e riutilizzare metodi e dati esistenti;\n<\/li>\n<li class=\"l\">  L'indicazione dei tipi semplifica il debug e l'individuazione degli errori, rende il codice pi\u00f9 chiaro e leggibile, facilitando ulteriormente le modifiche e l'analisi da parte di sviluppatori esterni.\n<\/li>\n<li class=\"l\"> Tra i tipi supportati: vari tipi di hash, array e liste, code, tipi numerici e stringhe, tipi per la definizione di date e orari, espressioni regolari (RegExp). \u00c8 possibile <noindex><a rel=\"nofollow\" href=\"http:\/\/www.dartlang.org\/articles\/optional-types\/\">creare i propri<\/a><\/noindex> tipi;\n<\/li>\n<li class=\"l\"> Per organizzare l'esecuzione parallela, si suggerisce di utilizzare classi con l'attributo isolate, il cui codice viene eseguito completamente in uno spazio isolato in un'area di memoria separata, interagendo con il processo principale tramite l'invio di messaggi;\n<\/li>\n<li class=\"l\"> Supporto per l'uso di librerie che semplificano la manutenzione e il debug di grandi progetti web. Le implementazioni di funzioni di terze parti possono essere collegate come librerie condivise. Le applicazioni possono essere suddivise in parti e lo sviluppo di ciascuna di esse pu\u00f2 essere assegnato a team di programmatori separati;\n<\/li>\n<li class=\"l\"> Una suite di strumenti pronti per supportare lo sviluppo nel linguaggio Dart, inclusa l'implementazione di strumenti per lo sviluppo dinamico e il debug con correzione del codice al volo (\u00abedit-and-continue\u00bb);\n<\/li>\n<li class=\"l\"> Per semplificare lo sviluppo nel linguaggio Dart \u00e8 fornito <noindex><a rel=\"nofollow\" href=\"http:\/\/www.dartlang.org\/docs\/sdk\/\">SDK<\/a><\/noindex>, un gestore di pacchetti <noindex><a rel=\"nofollow\" href=\"http:\/\/pub.dartlang.org\/\">pub<\/a><\/noindex>, un analizzatore di codice statico <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dartlang.org\/docs\/dart-up-and-running\/contents\/ch04-tools-dart_analyzer.html\">dart_analyzer<\/a><\/noindex>, un insieme di librerie, un ambiente di sviluppo integrato <noindex><a rel=\"nofollow\" href=\"https:\/\/dartpad.dartlang.org\/\">DartPad<\/a><\/noindex> e plugin con supporto per Dart per <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dartlang.org\/tools\/webstorm\/\">IntelliJ IDEA, WebStorm<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nex3\/dart-mode\">Emacs<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/dart-lang\/dart-sublime-bundle#readme\">Sublime Text 2<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/dart-lang\/dart-vim-plugin\">Vim<\/a><\/noindex>;\n<\/li>\n<li class=\"l\"> Pacchetti aggiuntivi con librerie e strumenti sono distribuiti attraverso un repository <noindex><a rel=\"nofollow\" href=\"https:\/\/pub.dartlang.org\/packages\">pub<\/a><\/noindex>, che conta oltre 10.000 pacchetti.\n<\/li>\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Fonte: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52889\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Dart 2.8, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043a\u0430\u0440\u0434\u0438\u043d\u0430\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 Dart 2, \u043f\u0435\u0440\u0435\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0434\u043b\u044f Web \u0438 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0445 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0430. Dart 2 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u044f\u0437\u044b\u043a\u0430 Dart \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u0441\u0438\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0442\u0438\u043f\u0438\u0437\u0430\u0446\u0438\u0438 (\u0442\u0438\u043f\u044b \u043c\u043e\u0433\u0443\u0442 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u0442\u0438\u043f\u043e\u0432 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c, \u043d\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-81140","post","type-post","status-publish","format-standard","hentry","category-novosti-interneta"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Dart.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/vypusk-yazyka-programmirovaniya-dart-2-8\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Dart 2.8 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Dart.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/vypusk-yazyka-programmirovaniya-dart-2-8\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-05-11T05:42:08+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-11T05:42:08+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Uscita del linguaggio di programmazione Dart 2.8 | ProHoster","description":"\u00c8 stato rilasciato il linguaggio di programmazione Dart.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/vypusk-yazyka-programmirovaniya-dart-2-8","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Dart 2.8 | ProHoster","og:description":"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Dart.","og:url":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/vypusk-yazyka-programmirovaniya-dart-2-8","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-05-11T05:42:08+00:00","article:modified_time":"2020-05-11T05:42:08+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"81140","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 16:04:22","updated":"2022-09-28 08:24:30","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/81140","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=81140"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/81140\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=81140"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=81140"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=81140"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}