10 caractéristiques Swift qui ne sont pas en Objective-C

Objectif # 8208-C remonte aux années 1980 - un temps assez long il ya des normes de technologie de l'ordinateur. Dans les décennies depuis sa première version, Objectif # 8208-C influence de sur les technologies du langage de programmation et les meilleures pratiques (avec des changements de matériel et de système d'exploitation) a démontré que l'objectif # conception 8208-C est robuste et flexible. A l'aube d'un nouveau siècle, les ingénieurs d'Apple se sont lancés dans le développement d'un nouveau langage pour le monde de la technologie d'aujourd'hui.

Sommaire

Comme de cette écriture, Objectif # 8208-C et Swift sont à la fois disponibles pour les développeurs. Les deux vous permettent de travailler avec les cadres de cacao et Cocoa Touch. Selon toute vraisemblance, Objectif # 8208-C sera un jour remplacé par Swift, mais cela ne se fera pas rapidement. Même avec la courbe d'apprentissage plus courte de Swift, la transition de l'Objectif n o 8208-C à Swift sera mesuré en années.

Pour l'instant, les développeurs peuvent travailler dans les deux langues. La plupart des cadres sont toujours écrites en Objective-C # 8208, de sorte que même si vous écrivez votre code dans Swift, vous aurez besoin d'interagir avec des cadres Objectif # 8208-C. Heureusement, ce ne est pas difficile.

Cette liste couvre dix caractéristiques Swift qui ne sont pas disponibles en Objective-C # 8208. Comme vous de basculer entre les deux langues, cette liste peut vous aider à distinguer entre les fonctions disponibles dans chaque langue. En général, bien sûr, vous pouvez compter sur Swift de suivre un thème général: Avec Swift, vous écrivez souvent moins de code. Ceci est parce que la langue Swift est conçu pour gérer un certain nombre de situations courantes d'Objective-C # 8208 par lui-même.

Avant d'arriver à Swift caractéristiques qui ne sont pas en Objective-C # 8208, voici trois termes communs aux deux langues qui ont des significations légèrement différentes à Swift:

  • fermeture: Dans Swift, fermeture est une section de code qui peut être exécuté non # 8208-séquentielle. Il a déclaré avec ses propres variables (et les références variables disponibles dans le cadre dans lequel il est créé), et il est exécuté en cas de besoin. Fermetures sont fréquemment utilisés comme gestionnaires d'achèvement des processus asynchrones, donc chaque fois que ce processus se termine (même si la fin est un échec), la fermeture sera exécuté. Swift estime une fonction d'être un cas particulier d'une fermeture. Fermetures à Swift sont similaires aux blocs en Objective-C # 8208.

  • Type: Dans Swift, type peut être une classe, la structure ou l'énumération. Tout ces éléments peuvent contenir des méthodes. fonctions, et les membres.




  • passer par référence / passage par valeur: En passant la variable d'avant en arrière est un problème classique dans la programmation objet # 8208 orientée. Dans Swift, structures et énumérations sont passés avant et en arrière par la valeur (ou par copie - la même chose). Cela signifie que la même valeur peut être transmis à plusieurs endroits, et en chaque lieu, elle peut être utilisée et modifiée sans affecter l'un des autres occurrences.

    Les instances de classes à Swift sont passés par référence de sorte qu'une seule version de l'instance est référencé par tous les clients. Si il ya plusieurs instances d'une classe, chacun de ces cas est passé autour de référence. Objectif # 8208-C traite de ces questions de différentes façons telles que par référence à fort et faible références.

Utilisation des terrains de jeux pour explorer le code et la syntaxe

Aires de jeux sont une nouvelle fonctionnalité de Xcode 6 qui vous permettent de tester facilement le code. Ils peuvent faire de l'écriture de votre code ressemble beaucoup à l'écriture de code pour un langage interprété parce que vous voyez les résultats immédiatement. Vous pouvez faire la même chose avec votre code - vous ne pas avoir à obtenir une compilation propre et construire pour descendre à tester la façon dont une seule ligne de code fonctionne (ou ne fonctionne pas).

Utilisation tuples

Tuples vous permettent de valeurs individuelles groupe en une seule unité. En Objective-C # 8208, cela se fait souvent avec des dictionnaires qui organisent plusieurs valeurs. Lorsque les valeurs multiples ont un principe d'organisation logique, envisager d'utiliser tuples pour le code plus propre et plus facile à comprendre.

Au moyen de fourchettes pour enregistrer le code

Comme tuples, plages vous permettent de créer des constructions réutilisables qui peuvent être utilisés dans la création et l'utilisation des fonctions. Ils remplacent généralement de petites sections de code. En nommant et de les réutiliser, vous pouvez éviter les erreurs typographiques souvent introduites par retaper le même code à plusieurs reprises.

Profitant de typage strict et le type de sécurité

Contrairement à d'autres langues, dont l'Objectif # 8208-C, Swift fait vous gérez conversion de type et de coulée explicitement. Entre autres choses, cela se débarrasse des erreurs embêtants qui surviennent lorsque le compilateur et système d'exploitation de convertir une valeur d'un type à l'autre (et vous pensiez que la conversion ne serait pas lieu ou serait un type de conversion différent).

Maintenant, vous êtes responsable des conversions, et le compilateur système d'exploitation et faites votre appel d'offres au lieu de parfois vous surprendre.

Initialisation vos variables et constantes

Bien que vous ne pouvez pas toujours réaliser, Swift exige que chaque propriété être initialisé soit avec une valeur explicite et une annotation de type explicite, ou avec un type inféré basé sur une valeur explicite.

Comprendre les types facultatifs

Swift exige que vous tapez propriétés explicitement ou en fournissant une valeur dont le type Swift peut déduire. Swift vous donne un certain nombre d'outils qui peuvent taper une propriété en option. Types en option permettent de Swift savoir que vous avez pensé à un type, mais vous ne sont pas encore parvenus à une conclusion définitive à ce sujet. Avec un type en option, vous fournir suffisamment d'informations pour Swift de continuer.

En regardant les cadres de votre propre code

Lorsque le développement d'applications, vous aurez constamment utiliser des cadres de cacao et Cocoa Touch. Les cadres utilisés ont tendance à être très grand - UIKit est un exemple - mais avec Swift, Apple fournit un exemple de code qui tire parti d'un certain nombre de cadres de très petites personnalisés.

En combinant l'architecture du cadre et de la simplicité de Swift, vous avez un moyen pratique pour construire vos propres applications et de réutilisation de code. Lorsque vous commencez à explorer Swift, assurez-cadres l'un de vos premiers arrêts.

Y compris les annotations et les attributs dans les déclarations

Le format des déclarations a changé de manière significative à Swift. Le format original de déclarations composait de deux parties:

lt;type>variableName

Remonte aux premiers jours de FORTRAN Ce style. Au fil des ans, les ajouts et les décorateurs ont été ajoutés. Maintenant, avec Swift, cette syntaxe de base a été remplacé par des annotations et des attributs qui sont plus souples.

Les variables Deinitializing si nécessaire

Swift gère la mémoire, et vous pouvez compter sur elle pour nettoyer au besoin lorsque vous (ou le système) Libère une instance. Vous pouvez écrire un deinitializer (nommé deinit) D'autre à faire que de simple souvenir libérant rien. Parmi les tâches d'un deinitializer pourrait faire sont fermeture d'un fichier et de placer une structure de données dans un état connu pour sa prochaine utilisation, parmi les tâches similaires.

Utiliser des modèles pour simplifier votre code

Vous pouvez spécifier l'intérieur d'un cas interrupteur déclaration qui se composent de modèles. Cela peut se débarrasser d'une bonne partie de code, car en plus de la commutation sur les valeurs, vous pouvez basculer sur des plages de données ainsi que les conditions et les caractéristiques des données qui vont au-delà des valeurs individuelles.


» » » » 10 caractéristiques Swift qui ne sont pas en Objective-C