Flattern: Ergebnisse der Entwicklerumfrage für das dritte Quartal 2020

Hallo! Eugene Saturov von Surf ist in Kontakt .



Das Google-Team hat die Ergebnisse der Flutter-Entwicklerumfrage für das dritte Quartal 2020 veröffentlicht. Ich veröffentliche eine Übersetzung des Materials mit meinen Kommentaren.







Der Artikel wurde vom Flutter UX-Forschungsteam (Flutter UXR) ( Jayeon Lee , Yoyoyang Hou , Jack Kim und Tao Dong ) erstellt.



Im August 2020 startete das Flutter-Team die 10. vierteljährliche Entwicklerumfrage. Innerhalb von 10 Tagen haben 7.668 Flutter-Entwickler auf der ganzen Welt daran teilgenommen. Jeder von ihnen antwortete etwa 7,4 Minuten - insgesamt 39,4 Tage. Wir schätzen die Zeit, die Sie gebraucht haben, um Ihr Feedback zu hinterlassen, und möchten die Ergebnisse mit Ihnen teilen.



Wie üblich haben wir Sie nach Ihrer Zufriedenheit mit verschiedenen Flutter-Komponenten gefragt. Darüber hinaus suchten wir in diesem Quartal nach Feedback zu neuen Themen wie Flutter für das Web, Splittern (Widgets zum Erstellen komplexer Bildlaufeffekte) und dem Debuggen plattformspezifischer Probleme. In diesem Artikel werden wir uns die einzelnen Themen genauer ansehen.



Zusammenfassungsdaten



  • 94% der Befragten waren mit dem Flutter-Framework im Allgemeinen zufrieden (PSAT - positiv zufrieden) und 58% waren sehr zufrieden (VSAT - sehr zufrieden). Der Anteil von PSAT hat sich nicht geändert, aber der Prozentsatz von VSAT wächst stetig.

  • Der Anteil professioneller Entwickler ist von 26% auf 31% gestiegen. Der Anteil fortgeschrittener Benutzer nimmt ebenfalls zu.

  • , 3 Flutter for web, 59% . 71% Flutter , -UI.

  • , , 79% . (36%) , .

  • 71% , . (32%), (28%) (28%).





In diesem Quartal erreichte der Anteil hochzufriedener Nutzer mit Flutter einen Rekordwert von 58%. Insgesamt sind die Flutter-Nutzer trotz des exponentiellen Wachstums der Community weiterhin mit dem Produkt zufrieden (94%). Die folgende Grafik zeigt, wie sich die Zufriedenheit von Flutter im Laufe der Zeit verändert hat.





58% der Nutzer beantworteten die Frage mit "Sehr zufrieden": "Wie zufrieden sind Sie mit Flutter im Allgemeinen?"



Unsere Benutzerbasis hat einige wesentliche Änderungen erfahren. Erstens ist der Anteil der Unternehmensbenutzer des Flutter-Frameworks von 26% im ersten und zweiten Quartal auf 31% deutlich gestiegen, während der Anteil der Entwickler aus Startups immer noch bei rund 35% liegt.





Trotz der Tatsache, dass die Mehrheit der Flutter-Benutzer für Startups arbeitet, ist der Anteil der Unternehmensentwickler von 26% auf 31% deutlich gestiegen







, Flutter . Surf : .



— , .



, , . , Android iOS, — . , , .



Darüber hinaus hat sich die subjektive Bewertung der Erfahrungen mit Flutter in der Nutzerbasis erheblich geändert. Wie Sie in der folgenden Grafik sehen können, nahm der Anteil der unerfahrenen Benutzer allmählich ab, während der Anteil der fortgeschrittenen Benutzer allmählich zunahm. Dies bedeutet, dass es in unserer Community fortgeschrittenere Benutzer gibt, die ihr Wissen mit Anfängern teilen können. Wenn Sie etwas lernen oder Wissen teilen möchten, können Sie an Online-Diskussionen mit anderen Flutter-Entwicklern teilnehmen. Gehen Sie auf flutter.dev zur Registerkarte "Community" .





Der Anteil fortgeschrittener Benutzer wächst stetig







. , Flutter-. , «» - . Flutter- . , , , .



, pro-. .



, . HR-. Flutter-, software-. , .



Flutter for Web



Flutter unterstützt nicht nur die mobile Entwicklung in der stabilen Version, sondern auch die Webentwicklung in der Beta. Dieses Mal haben wir die ersten Flutter-Benutzer gebeten, uns genau mitzuteilen, mit welchen Problemen sie mit der Leistung, dem Erscheinungsbild und der Funktionalität der Webanwendung, des Workflows und der Dokumentation konfrontiert waren, um zu verstehen, woran sie zuerst arbeiten müssen.



Die Umfrageteilnehmer verwendeten Flutter ausgiebig, um Webanwendungen zu erstellen. Laut der dritten Zeile des nächsten Diagramms gaben etwa 33% an, Flutter in kommerziellen Webanwendungen zu evaluieren (15%), eine Demoversion der Anwendung damit zu erstellen (11%) oder eine kommerzielle Anwendung zu veröffentlichen (7%).





33% der Benutzer (1468 von 4449) gaben an, dass sie Flutter in kommerziellen Webanwendungen evaluierten (15%), eine Demoversion der Anwendung damit erstellten (11%) oder eine kommerzielle Anwendung veröffentlichten (7%).



Insbesondere 29,5% der Benutzer mit Erfahrung in der mobilen und Webentwicklung haben Flutter for Web in den letzten 3 Monaten (für potenzielle kommerzielle Zwecke) ernsthafter eingesetzt. Der Prozentsatz variierte basierend auf früheren Entwicklererfahrungen mit Plattformen. Anscheinend verwendeten Befragte, die zuvor nur mit der Webentwicklung befasst waren, Flutter als alternatives Webframework (22% verwendeten Flutter für das Web für potenzielle kommerzielle Zwecke), während Befragte, die zuvor nur mit der mobilen Entwicklung befasst waren, Flutter für das Web aktiv für die Integration verwendeten mit Webentwicklung (16% verwendeten Flutter for Web).





Der Prozentsatz der Benutzer, die Flutter in den letzten 3 Monaten kommerziell im Web verwendet haben, variiert aufgrund ihrer früheren Erfahrungen mit Mobil- und Webplattformen.



Das Flutter-Webteam sammelte auch Feedback zu verschiedenen Fragen im Zusammenhang mit dem Erscheinungsbild der Webanwendung. Zunächst erfuhren wir, dass die wichtigsten Umfrageteilnehmer die Browsernavigation und den Seitenverlauf (55%), das Kopieren / Einfügen von ausgewähltem Text (34%), die Bildlaufphysik (33%) und die Texthervorhebung (32%) berücksichtigten. Die Befragten forderten außerdem eine bessere Dokumentation zur Seitennavigation und zur Anpassung mobiler Layouts an das Web.







Flutter for Web . , Flutter Team web. FlutterDevPodcast Flutter for Web , , . , UX, . CEO .







Laut Benutzern sind „Browsernavigation und Seitennavigation“ die wichtigsten Funktionen beim Erstellen einer Weboberfläche mit Flutter.



Das Flutter-Team berücksichtigt das Feedback der Entwickler und arbeitet aktiv an Verbesserungen. Um die Hauptprobleme der Benutzer im Zusammenhang mit der Navigation und Seitennavigation zu lösen, hat das Team kürzlich Navigator 2 veröffentlicht . Wir haben auch Unterstützung für das Kopieren / Einfügen von ausgewähltem Text hinzugefügt und planen, die Funktionalität von ausgewähltem Text (insbesondere in Rich Text) zu verbessern . Wir arbeiten weiterhin an Problemen beim Scrollen von Physik und Leistung, basierend auf Problemen, die von der Community erhalten wurden.



Schließlich erhielt unser Team Feedback zu Workflows, Leistung und APIs von Drittanbietern. Unter allen Hauptworkflows war nach Angaben der Befragten das Debuggen am schwierigsten. Seitenladegeschwindigkeit und Bildlauf sind die Aspekte, bei denen die Befragten am häufigsten auf Leistungsprobleme stießen. Die Umfrageteilnehmer forderten eine verbesserte Unterstützung für lokalen Speicher (z. B. SQLite), Firebase-Speicher und Google Maps für Flutter for Web. Unser Team wird daran arbeiten, diese Aspekte bei der Entwicklung von Flutter for Web zu verbessern.



Kommentar



Natürlich ist es lobenswert, Flutter for Web zur Perfektion zu bringen. Ist das Framework bereit, ein vollwertiger Ersatz für seine traditionelleren Konkurrenten zu werden? Meine Meinung ist eindeutig: nein. Es liegt noch ein langer Weg für Verbesserungen und Verbesserungen vor uns.


Splitter



Sliver-Widgets (Widgets mit Namen, die mit „Sliver“ beginnen, wie z. B. SliverAppBar und SliverList) werden zum Erstellen komplexer Bildlaufeffekte verwendet. Viele Bildlaufeffekte können mithilfe von Widgets wie ListView, GridView, PageView oder AnimatedList implementiert werden. Splitter-Widgets helfen jedoch dabei, die Bildlaufansicht anzupassen und die Benutzeroberfläche schöner zu gestalten.





Solche komplexen Bildlaufeffekte können mithilfe von Splitter-Widgets implementiert werden.



Das Flutter-Team hat viele verschiedene Geschichten über die Benutzererfahrung mit Splittern gelernt. Einige sagten, sie hätten in ihren Anwendungen keine Splitter verwendet, andere sagten, sie brauchten mehr Slicer, um verschiedene Effekte zu implementieren. In diesem Quartal hat unser Team beschlossen, die Umfrage zu aktualisieren, um besser zu verstehen, wie Flutter-Benutzer mit Hausschuhen arbeiten.



Das erste, was wir erfuhren, war, dass die Mehrheit der Umfrageteilnehmer (49%) Benutzeroberflächen mit einfachen Bildlaufeffekten entwerfen. UI mit komplexen Effekten wird von 39% entwickelt. (Die Umfrage lieferte Beispiele für einfache und komplexe Bildlaufeffekte.) Von denjenigen, die komplexe Effekte benötigen, gaben 78% an, dass sie Splitter benötigen, um die gewünschten Effekte zu erzielen.





Die Benutzeroberfläche mit einfachen Bildlaufeffekten wird von mehr Benutzern (49%) entwickelt als die Benutzeroberfläche mit komplexen Effekten (39%).



20% der Benutzer, die Splitter benötigen, geben an, sie nicht ausprobiert zu haben. Noch interessanter ist, dass 35% der Benutzer, die Hausschuhe verwendet haben, angaben, Probleme zu haben. Als wir nach den größten Herausforderungen fragten, stand die Suche an erster Stelle (36%), gefolgt von Exploration (30%) und schließlich Usability (19%).





Die Suche stellte sich als das häufigste Problem für Splitterbenutzer heraus. Es wurden weniger Schwierigkeiten beim Erlernen des Widgets und seiner Benutzerfreundlichkeit gemeldet.



Da diese Probleme Ihre Benutzeroberfläche nicht beeinträchtigen sollen, planen wir, flutter.dev zu aktualisieren , um das Auffinden von Splitter-Widgets zu vereinfachen und die entsprechenden zu untersuchen Information. Wenn Sie nach neuen Splittern suchen, die Flutter nicht hat, probieren Sie von der Community entwickelte Softwarepakete wie sliver_tools oder sticky_headers aus . Die Flutter-Community freut sich auch über Ihre Beiträge in diesem Bereich.



Und wenn Sie mit Splittern noch nicht vertraut sind und mehr darüber erfahren möchten, bieten wir Ihnen die folgenden Ressourcen:



Splitter, entmystifiziert(Kleiner Artikel)



Splitter erklärt - dynamische Layouts erstellen ("The Boring Flutter Development Show" auf YouTube, Folge 12)



Comment



Sliver - ein Stolperstein für viele Flutter-Entwickler. Sie haben Angst und werden nicht verstanden. Möglicherweise liegt der Grund nicht in der transparentesten API für die Arbeit mit Komponenten sowie in der schwierigen Verschachtelung von Widgets. CustomScrollView, SliverList, SliverChildBuilderDelegate - bis Sie herausfinden, welche Rolle jede dieser Komponenten beim Erstellen des Gesamtbilds spielt, scheinen Sie zu versuchen, den Trick eines erfahrenen Illusionisten zu enträtseln. In der Tat sind Splitter und ähnliche Mechanismen einer der Hauptgründe, warum ich Flutter liebe. Die Fähigkeit, nur komplexe Dinge zu tun, ist viel wert.


Debuggen plattformspezifischer Probleme



In unserer vorherigen Umfrage haben wir festgestellt, dass die plattformspezifische Fehlerbehebung und das plattformübergreifende Testen von Anwendungen die schwierigsten Aufgaben für Flutter-Entwickler sind. Es sind Fehler aufgetreten, die für bestimmte Plattformen spezifisch sind, aber nicht wussten, welche Probleme vorrangiger sind und ob es möglich ist, sie nach Themen in Gruppen zu gruppieren. Um zu verstehen, warum das Debuggen und Testen wirklich schwierig ist, haben wir gefragt, mit welchen Problemen die Benutzer konfrontiert sind.



Zuerst haben wir die Benutzer gefragt, welche plattformspezifischen Probleme sie behoben haben. Infolgedessen fanden wir das am häufigsten Probleme mit Werkzeugen (32%), visuelle Unterschiede auf verschiedenen Plattformen (28%), Abhängigkeitsmanagement (28%), Funktionsunterschiede auf verschiedenen Plattformen (27%), Funktionsunterschiede von Plugins auf verschiedenen Plattformen (26%) und Außerdem fehlen häufig native Funktionen (25%).



Kommentar



In jüngerer Zeit wurde auf GitHub eine benutzerdefinierte Version der Flutter Engine mit deaktiviertem Metall veröffentlicht . Es stellte sich heraus, dass die für iOS erstellte Anwendung ohne sie viel reibungsloser funktioniert! Wir stoßen nicht oft auf so schlimme Plattformprobleme. Trotzdem sollten Sie immer bereit sein. Um voll bewaffnet zu sein, hilft nur ein tiefer Einblick in die Grundlagen der unterstützten Plattformen.





Die häufigsten plattformspezifischen Probleme betreffen Tooling-Probleme, visuelle Unterschiede und Probleme



mit dem Abhängigkeitsmanagement. Die Umfrageteilnehmer bewerteten auch die Bedeutung und Komplexität der einzelnen von ihnen debuggten Probleme. Die wichtigsten Debugging-Probleme sind fehlende native Funktionen, Leistungsunterschiede, Leistungsunterschiede, Unterschiede in der Plugin-Funktionalität und Release-Probleme. Die schwierigsten Probleme beim Debuggen sind das Fehlen nativer Funktionen, Probleme mit einem bestimmten Gerät, Leistungsunterschiede, Abhängigkeitsmanagement und Tools.





Hinweis zur Abbildung (von links nach rechts): Schwierigkeit - Schwierigkeit, Testprobleme - Probleme beim Testen, visuelle Unterschiede - visuelle Unterschiede, Bedeutung - Wichtigkeit, gerätespezifische Probleme - Probleme für bestimmte Geräte, Probleme beim Abhängigkeitsmanagement - Probleme beim Abhängigkeitsmanagement , Release-Probleme - Probleme mit dem Release, Tooling-Probleme - Probleme mit Tools, Verhaltensunterschiede - Funktionsunterschiede, fehlende native Funktionen - Mangel an nativen Tools, Plugin-Verhaltensunterschiede - Unterschiede in der Funktion von Plugins, Leistungsunterschiede - Leistungsunterschiede.



Die Bedeutung und Komplexität plattformspezifischer Themen. Die "Ranken" in der Grafik markieren das 95% -Konfidenzintervall





85% der Befragten gaben an, dass das Testen von Anwendungen auf mehreren Plattformen sehr oder äußerst wichtig sei. Für 27% der Befragten erwies es sich jedoch als sehr oder äußerst schwierig. Daher ist das Testen von Anwendungen auf mehreren Plattformen wichtig, für die meisten Entwickler jedoch nicht allzu schwierig. Aus den detaillierten Antworten auf die Fragen haben wir gelernt, dass die häufigsten Testprobleme beim Testen für iOS (insbesondere für Windows-Entwickler), beim Testen auf mehrere Bildschirmgrößen und beim Testen auf mehreren physischen Geräten auftreten.



Im nächsten Quartal wird unser Team mehr Zeit aufwenden, Fehler drastisch reduzieren und wichtige Probleme im Zusammenhang mit Tools, Abhängigkeitsmanagement und Release lösen. Wir werden auch die Dokumentation zu diesen Themen weiter verbessern. Beispielsweise werden wir die Benutzerdokumentation für CI-Tools wie GitHub Actions und Bitrise verbessern, mit denen Benutzer iOS-Apps testen können.



Der Kommentar zu

GitHub-Aktionen ist in Ordnung, solange Ihr Repository nicht privat ist. Ab sofort haben Sie nur noch 200 freie Minuten pro Monat, um auf einer virtuellen Maschine für macOS aufzubauen. Lesen Sie meinen Artikel über das Einrichten des perfekten Workflows für ein Flutter-Projekt .



Was weiter



Ihre Eingabe beeinflusst unsere Entscheidungen jeden Tag. Wir werden dieser Tradition treu bleiben und weiterhin Entscheidungen treffen, die auf Ihren Antworten auf unsere Umfragen basieren. Deshalb bitten wir Sie, weiterhin teilzunehmen und Ihre Gedanken zu teilen. Darüber hinaus führt das Flutter UX-Forschungsteam eine breite Palette von User Experience (UX) -Forschungen durch, um Ihr Flutter-Erlebnis zu verbessern. Wenn Sie an der Forschung teilnehmen möchten, registrieren Sie sich und Ihre Kandidatur wird für zukünftige Forschung berücksichtigt.



All Articles