Différence entre Swift et Java
Swift est un nouveau langage de programmation créé par Apple avec quelques paradigmes de programmation intéressants par rapport aux Java. Comme Objective-C, Swift est créé pour iOS, OS X et le développement de watchOS et devrait constituer une alternative plus sûre, plus rapide et plus puissante à Objective-C.
Langage Java
La plupart du code Java suit des styles de codage très standardisés. Cela signifie que lorsque vous débutez, il y a moins de questions sur la manière de mettre en œuvre quelque chose car les styles et les modèles de programmation sont bien établis et cohérents. Ce style cohérent signifie qu’il est souvent plus facile de suivre le code écrit par d’autres développeurs et qu’il est plus susceptible de respecter au moins une certaine norme minimale de qualité. Cette discipline aux normes stylistiques cohérentes devient également utile par la suite, lors de la collaboration sur des projets avec une équipe plus importante.
Exemple du programme « Hello World » dans Java
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, world!"); } }
Langage Swift
Swift est un nouveau langage de programmation créé par Apple avec quelques paradigmes de programmation intéressants par rapport aux grands langages établis. Comme Objective-C, Swift est créé pour iOS, OS X et le développement de watchOS et devrait constituer une alternative plus sûre, plus rapide et plus puissante à Objective-C.
Swift est un langage multi-paradigme qui suit des paradigmes orientés objet (comme Java, C#), fonctionnels (comme Haskell, Standard ML), impératifs (comme C, C++, Objective-C) et des langages de script (comme Python, Scala). Swift offre l’héritage, inférence de type, programmation générique, valeurs de retour multiples, etc.
Exemple du programme «Hello World» dans Swift
print("Hello, world!")
Différence clé entre Swift et Java
Les structures sont passées par valeur: En Java, il n’existe pas de concept de structure. En c ++, la structure et les classes sont identiques, sauf que les variables membres de la structure sont publiques par défaut. Dans swift, les structures sont passées par valeur et non par référence. Cette différence nécessite une annotation séparée pour les structures afin de la différencier.
Pas de classes abstraites: Swift n’a pas de concept de classes abstraites. Une classe abstraite est une classe qui fournit une implémentation partielle. Il n’est pas obligé d’implémenter toutes les méthodes déclarées. Les classes abstraites sont un concept puissant pour placer le code commun au même endroit pour plusieurs classes héritées de la même classe de base.
Fonctions globales: Swift peut avoir des fonctions globales (c’est-à-dire sans portée de classe), ce qui n’est pas possible en Java mais possible en C++.
Conclusion
Swift est fortement utilisé dans le développement de l’iOS et OSX. Il est probable que Swift deviendra plus populaire côté serveur à l’avenir, mais c’est difficile à prédire. Si vous voulez faire du développement mobile ou desktop, Swift est un excellent langage. Vous pouvez l’utiliser pour écrire des applications avec des interfaces utilisateur hautement interactives, des jeux, etc. Apple dispose de nombreuses API de qualité pour les interfaces utilisateur, les animations, les graphiques 3D, les animations 2D, etc. Pour l’instant, la programmation côté serveur est totalement dominée par Java. Si vous souhaitez le faire, découvrez Java. Il est également utilisé sur Android, donc si vous voulez faire du développement Android, Java est un bon choix.