Google introduceerde het Flutter 2-framework en de Dart 2.12-taal

Google introduceerde het Flutter 2-gebruikersinterfaceframework, dat de transformatie markeerde van het project van een raamwerk voor het ontwikkelen van mobiele applicaties naar een universeel raamwerk voor het maken van elk type programma, inclusief desktopprogramma's en webapplicaties.

Flutter wordt gezien als een alternatief voor React Native en stelt je in staat om applicaties te produceren voor verschillende platforms op basis van één codebasis, waaronder iOS, Android, Windows, macOS en Linux, maar ook applicaties die in browsers draaien. Mobiele applicaties die eerder in Flutter 1 zijn geschreven, kunnen na het overschakelen naar Flutter 2 worden aangepast om op de desktop en op internet te werken zonder de code te herschrijven.

Het grootste deel van de Flutter-code is geïmplementeerd in de Dart-taal en de runtime-engine voor het uitvoeren van applicaties is geschreven in C++. Bij het ontwikkelen van applicaties kunt u, naast de eigen Dart-taal van Flutter, de Dart Foreign Function-interface gebruiken om C/C++-code aan te roepen. Hoge uitvoeringsprestaties worden bereikt door applicaties te compileren naar native code voor doelplatforms. In dit geval hoeft het programma niet na elke wijziging opnieuw te worden gecompileerd - Dart biedt een hot reload-modus waarmee u wijzigingen kunt aanbrengen in een actieve applicatie en het resultaat onmiddellijk kunt evalueren.

Flutter 2 biedt volledige ondersteuning voor het maken van applicaties voor het web, geschikt voor productie-implementaties. Er worden drie hoofdscenario’s voor het gebruik van Flutter for the Web genoemd: het ontwikkelen van stand-alone webapplicaties (PWA, Progressive Web Apps), het creëren van single-page webapplicaties (SPA, Single page apps) en het omzetten van mobiele applicaties naar webapplicaties. Tot de kenmerken van ontwikkelingstools voor het web behoren het gebruik van mechanismen voor het versnellen van de weergave van 2D- en 3D-afbeeldingen, de flexibele opstelling van elementen op het scherm en de CanvasKit-rendering-engine die in WebAssembly is gecompileerd.

Ondersteuning voor desktop-apps bevindt zich in de bètafase en zal later dit jaar in een toekomstige release worden gestabiliseerd. Canonical, Microsoft en Toyota hebben ondersteuning aangekondigd voor ontwikkeling met Flutter. Canonical heeft Flutter gekozen als het belangrijkste raamwerk voor zijn applicaties en gebruikt Flutter ook om een ​​nieuw installatieprogramma voor Ubuntu te ontwikkelen. Microsoft heeft Flutter aangepast voor opvouwbare apparaten met meerdere schermen, zoals de Surface Duo. Toyota is van plan Flutter te gebruiken voor infotainmentsystemen in auto's. Ook de gebruikersschil van het door Google ontwikkelde Fuchsia microkernel-besturingssysteem is gebouwd op basis van Flutter.

Google introduceerde het Flutter 2-framework en de Dart 2.12-taal

Tegelijkertijd werd de release van de programmeertaal Dart 2.12 gepubliceerd, waarin de ontwikkeling van een radicaal opnieuw ontworpen tak van Dart 2 wordt voortgezet. Dart 2 verschilt van de originele versie van de Dart-taal door het gebruik van sterk statisch typen (typen kan automatisch worden afgeleid, dus het specificeren van typen is niet verplicht, maar dynamisch typen wordt niet langer gebruikt en het aanvankelijk berekende type wordt toegewezen aan de variabele en vervolgens wordt strikte typecontrole toegepast).

De release is opmerkelijk vanwege de stabilisatie van de Null-veiligheidsmodus, die crashes zal helpen voorkomen die worden veroorzaakt door pogingen om variabelen te gebruiken waarvan de waarde niet is gedefinieerd en is ingesteld op Null. De modus houdt in dat variabelen geen nulwaarden kunnen hebben, tenzij ze expliciet de waarde null krijgen toegewezen. De modus respecteert strikt de typen variabelen, waardoor de compiler aanvullende optimalisaties kan toepassen. De naleving van het type wordt tijdens het compileren gecontroleerd. Als u bijvoorbeeld de waarde “Null” probeert toe te wijzen aan een variabele met een type dat geen ongedefinieerde status impliceert, zoals “int”, wordt er een foutmelding weergegeven.

Een andere belangrijke verbetering in Dart 2.12 is de stabiele implementatie van de FFI-bibliotheek, waarmee je krachtige code kunt maken van waaruit je toegang hebt tot API's in C. Prestatie- en grootte-optimalisaties doorgevoerd. Ontwikkelaarstools toegevoegd en een codeprofileringssysteem geschreven met Flutter, evenals nieuwe plug-ins voor het ontwikkelen van Dart- en Flutter-applicaties voor Android Studio/IntelliJ en VS Code.

Google introduceerde het Flutter 2-framework en de Dart 2.12-taal


Bron: opennet.ru

Voeg een reactie