Swift constantes: Struct ou Enum

Je ne suis pas sûr ce qui à la fois sont de mieux définir des constantes. Une structure ou un enum. Une structure sera copié à chaque fois que je l'utilise ou pas? Quand je pense au sujet d'un struct avec static let constantes, il n'a pas de sens qu'il sera copié tous les temps, à mon avis. Mais si elle n'est pas copié puis il n'a pas d'importance ce que je prends?

Quels sont les avantages du choix d'une structure ou enum?

Francisco de dire l'utilisation Struct l'.

Ray Wunderlich dire utiliser l'Enum. Mais je n'ai pas la justification.

  • Une justification est dans l'article lié: "L'avantage de l'utilisation d'un cas moins énumération, c'est qu'il ne peut pas accidentellement être instancié et fonctionne comme un simple espace de noms".
  • OK qui paraît logique. Je dois donc utiliser les énumérations dans 90% de mon cas. Et dès que quelque chose ont besoin d'être instancié ou être variable, j'utilise une struct. - Il Correct?
  • Pourquoi ne pas vous définir dans les classes qui l'utilisent? Pourquoi avez-vous besoin de placer toutes les constantes dans une même structure? Vous pouvez toujours avoir les dans un fichier si vous utilisez des extensions. Si vous décidez entre enum et struct je dis ni de l'architecture, de point de vue.
  • Parce que j'ai besoin d'un cadre que je puisse les intégrer dans une grande partie de mes projets. Je vais avoir besoin d', les mêmes constantes dans tous les d'entre eux. Donc je ne veux pas l'écrire plusieurs fois.
  • Je ne suis pas contre des constantes, mais je vous dis qu'il n'est pas nécessaire de les mettre tous dans une structure commune/enum si elles n'ont rien en commun.
  • Je ne veux pas mettre tous ensemble dans le même cadre, une énumération ou structure. Il est en fait plus intéressé à construire certaines structures. Par exemple, il pourrait être un cadre de stockage de couleurs, ou quelque chose comme ça, d'une société. Et ceux-ci doivent être les mêmes dans toutes les applications.

InformationsquelleAutor Paixsn | 2016-07-26