Alles neu in Apples Swift


AppleInsider wird von seinem Publikum unterstützt und kann als Amazon Associate und Affiliate-Partner Provisionen für qualifizierte Käufe erhalten. Diese Affiliate-Partnerschaften haben keinen Einfluss auf unsere redaktionellen Inhalte.

Apples Programmiersprache Swift hat auf der WWDC 2022 eine Vielzahl von Updates erhalten. Hier ist eine Zusammenfassung der besten Funktionen, die sehr bald neben iOS 16 und macOS Ventura verfügbar sein werden.

Die Swift-Entwicklung begann 2010 von Chris Lattner und wurde 2014 der Apple-Entwicklergemeinschaft vorgestellt. Ende Dezember 2015 veröffentlichte Apple Swift und seine Bibliotheken, den Paketmanager und den Debugger zur öffentlichen Nutzung als Open-Source-Software.

Seitdem ist es öffentlich zugänglich und jeder, der zur Entwicklung beitragen möchte, kann dies tun. Und Apple fügt fast jedes Jahr Funktionen und Fähigkeiten hinzu.

Nach der WWDC 2022 haben wir die wichtigsten Funktionen ausgewählt, die der Sprache hinzugefügt wurden. Hier sind die Details zu den Neuerungen in Swift und dem ergänzenden UI-Backend SwiftUI.

Was ist neu in Swift 5.7

Die Hauptprogrammiersprache Swift erhielt eine Reihe von Updates zur Verbesserung der Lebensqualität auf Oberflächenebene.

Dazu gehören sendable Types zur Bezeichnung von Datentypen zur Unterstützung beim Umgang mit App-Laufzeit-Workflows, optionale Bindung zum Extrahieren und dynamischen Umgang mit sowohl konstanten als auch variablen Formen von Werten und ein Checker, um maximale Kompatibilität mit den verfügbaren APIs eines Geräts sicherzustellen.

Sendebare Typen

Jetzt können Apps in verschiedene Unterabschnitte unterteilt und gleichzeitig ausgeführt werden. Sie können auch Daten voneinander senden und empfangen.

Verschiedene Unter-Apps können Daten enthalten, die als unveränderlich gekennzeichnet sind, weil sie einen aktiven Systemprozess beinhalten oder Teil eines aktiven Systemprozesses sind, der umfangreiches Überschreiben beinhaltet, das nicht unterbrochen werden kann.

Sendable Types ermöglichen es Entwicklern, verschiedene angegebene Daten als „sendable“ oder „unsendable“ zu markieren, um App-Workflows zu verbessern.

Optionale Bindung

Optionale Bindung ermöglicht der App zu prüfen, ob ein Wert in einer Funktion vorhanden ist und ob es sich um eine Konstante oder Variable handelt.

Dieser Wert kann in eine andere Funktion, Konstante oder Variable, extrahiert werden und zusätzliche Funktionen verwenden, z. B. ein Live-Auslesen eines solchen Werts.

API-Verfügbarkeitsprüfungsfunktion

Da Apps auf Geräten mit vielen verschiedenen Softwareversionen bereitgestellt und installiert werden, ist die Verfügbarkeit von Anwendungsprogrammierschnittstellen (APIs) von Gerät zu Gerät unterschiedlich. Neu in Swift 5.7 ist die Möglichkeit, dass eine App prüft, ob eine solche API auf dem Gerät verfügbar ist, und dass der Entwickler einen Fallback festlegen kann, falls die API auf dem Gerät nicht verfügbar ist.

Dadurch können Apps auf mehr Geräten besser funktionieren.

Was ist neu in SwiftUI

Viele verschiedene Updates sind in der diesjährigen SwiftUI-Aktualisierung enthalten, wobei Swift Charts die Neuzugänge anführt. Drei Zweige von Updates sind hier vorhanden: Push-and-Pop-Navigationsstapel, detailreiche geteilte Ansichten und App-Erlebnisse mit mehreren Fenstern.

Zu den Navigationsverbesserungen gehören umfangreichere Listen in Geräten wie der Apple Watch. In einer komplizierten Benutzeroberfläche mit vielen verschiedenen Formen von Umschaltern, die Schalter und visuelle Vorschauen mischen, präsentiert SwiftUI die Optionen jetzt besser und richtet die Elemente der Benutzeroberfläche in einem angemesseneren visuellen Stil aus.

Die API kann eine bestimmte vorgefertigte Schnittstelle für verschiedene Dateneingabetypen, wie z. B. eine Zahl oder ein Datum, füllen. Es hat auch die Unterstützung für Datentabellen und deren Präsentation verbessert. Die Updates beinhalten auch neue geteilte Ansichten, die die Liste neben dem erweiterten Körperinhalt anzeigen, wie die App „Einstellungen“ auf dem iPad.

Neue kleinere Popup-Berichtsblätter für Listen sind ebenfalls verfügbar. Inline-Textfelder in Apps können jetzt erweitert werden, um weiterhin die vollständige Eingabe anzuzeigen.

SwiftUI erhielt auch Unterstützung für eine bessere Anpassung von UI-Elementen im Dunkelmodus und eine bessere Inline-Skalierung von Schnittstellenelementen. Darüber hinaus wurde eine bessere UIKit-Interoperabilität mit SwiftUI eingeführt.

Es gibt eine neue Share Sheet API sowie zahlreiche Verbesserungen für macOS. Das Desktop-Betriebssystem wird eine bessere Unterstützung für seine schwebenden und in der Größe anpassbaren Fenster erhalten. Schließlich wurde die Unterstützung von Widgets auf dem Sperrbildschirm für das kommende iOS 16 hinzugefügt.

Swift-Charts

Mit Swift Charts können Zahlen und Daten, die in Apps importiert werden, nativ aussehende Diagramme nutzen.

Eine neue Ansicht in SwiftUI, die sich anderen wie Listen und Diagrammen anschließt, nimmt importierte Daten und generiert automatisch Diagramme. Liniendiagramme, Balkendiagramme, Tortendiagramme und Histogramme gehören zu den vielen verschiedenen Diagrammtypen, die jetzt als Teil von SwiftUI unterstützt werden. Swift Charts unterstützt auch sechs verschiedene Markierungstypen, einschließlich der üblichen Linien- und Punktoptionen sowie der weniger verbreiteten Regeloption.

Integriert in Swift und unter Verwendung der gleichen Benutzeroberfläche wie Apple für ihre eigenen Apps können Entwickler die Legende, Farbe, Skalierung und Deckkraft von Diagrammelementen anpassen. Swift Charts übernimmt automatisch die Lokalisierung, die Verwendung des Dunkelmodus und dynamische Schriftarten.

Anpassungsoptionen für die Systemschnittstelle sind auch für Diagramme verfügbar. Entwickler können die Hintergrundfarbe festlegen, die Option zum Anzeigen einzelner Datenpunkte aktivieren oder deaktivieren, hervorgehobene Datenparameter ändern und Registerkarten aktivieren, um zwischen verschiedenen Zeitskalen zu wechseln.

Verteilte Akteure in Swift

In Multiplayer-Spielen, insbesondere in einer Peer-to-Peer-Umgebung, müssen einzelne Spieldaten generiert, empfangen und an und von verschiedenen Geräten gesendet werden, die mit demselben Netzwerk verbunden sind. Die neue Distributed Actor-Funktion in Swift macht Multiplayer-Spiele praktikabler.

Zusätzlich zu den nativen Transparenzfunktionen, die es Debuggern ermöglichen, Fehler einfach zu verfolgen, indem sie in die Aktivitäten jedes angeschlossenen Geräts einsehen, wird auch Bot-Unterstützung hinzugefügt. Dies ermöglicht es einem Spiel, Computerspieler einzufügen und Spieler mit anderen menschlichen Gegnern zu verbinden.

Verteilte Akteure arbeiten mit Spielen sowohl über einen zentralen Server als auch über Peer-to-Peer-Verbindungen, um das Gameplay auf mehreren Geräten bereitzustellen.

Die Funktion kann auch in Kontexten außerhalb von Spielen angewendet werden, in denen Daten bearbeitet und synchronisiert und sofort auf allen Geräten in einem Netzwerk aktualisiert werden müssen.

Schnelle asynchrone Algorithmen

In einem sich schnell bewegenden Datenstrom, wie z. B. einem Cloud-Fotoalbum mit mehreren Mitgliedern, kommen Daten in unvorhersehbaren und gruppierten Intervallen an, die nicht ganz mit den Systemaktualisierungszeiten übereinstimmen. Der Bediener muss möglicherweise Systemabstürze überwachen, wenn das Timing und die Menge der eingehenden Daten für das System schwer zu ertragen sind.

Um dies zu lösen, wird die neue Swift-Funktion namens Async Algorithms eingeführt, die sich mit asynchronen Datenimporten befasst. Asynchrone Algorithmen sortieren den Datenstrom in Echtzeit und gruppieren ihn in winzige festgelegte Zeitintervalle, sodass Informationen zu vorhersehbaren Zeiten auf einem Server eintreffen können.

Clock and Debounce ermöglicht es dem System, den Server nur zu wecken, wenn neue Daten ankommen, und die nächste Eingabe für einen ruhigen Datenstrom zu planen.

Asynchrone Algorithmen können auch verwendet werden, um Datenpunkte für noch optimiertere Datenflüsse zu verbinden und zu trennen.

Schnelle Regex

Regex oder reguläre Ausdrücke bündeln die verschiedenen Formen von Ausdrucksstilen in standardisierte Formen. Beispielsweise kann die Anordnung von Monat, Tag und Jahr von Region zu Region unterschiedlich sein. Die Verwendung von Regex hilft Systemen, die korrekten Datumsinformationen über internationale Workflows hinweg zu erhalten.

Die Swift-Standardbibliothek enthält jetzt Regex als einen der Typen.

Neu in Swift 5.7 ist die verbesserte Regex-Engine, die im Wesentlichen eine Suchfunktion ist, die versucht, den genauen Text- oder Datentyp mit Suchanfragen abzugleichen. Dies ist eine Funktion, die nützlich ist, um große Datenbanken auf flexible Weise mit spezifischeren Abfragen nach Daten zu durchsuchen.

Die Möglichkeit, eine Regex-Engine zu integrieren, ist jetzt in Swift integriert. Die Engine analysiert und verarbeitet die Daten und sortiert sie in die Kategorien, die durch den vom Entwickler erstellten Code vorgegeben werden. Dazu gehören Textzeichenfolgen sowie allgemeinere Informationen wie Datum und Uhrzeit. Die Engine erkennt dann genau, was die Daten darstellen, und standardisiert sie, sodass sie nicht von regionsspezifischen Ausdrucksweisen beeinflusst werden, die für Benutzer und Entwickler einer anderen Region verwirrend sein können.

Suchanfragen sind außerdem detaillierter und dynamischer und können auf unterschiedliche Übereinstimmungsstufen eingestellt werden.

.

Author: admin

Leave a Reply

Your email address will not be published.