Creación de Structs en Swift para Gestión de Materias

Clase 16 de 25Curso de Swift para Apps iOS

Contenido del curso

Fundamentos de programación iOS

POO en iOS

Resumen

¿Cómo implementar clases en Swift?

La programación en Swift nos introduce a la creación de clases de manera eficiente, permitiendo la definición de tipos de datos personalizados. Dentro de Swift, podemos elegir entre Struct y Class para tal propósito. Vamos a explorar la implementación de clases usando Struct primero, y posteriormente examinaremos Class, entendiendo sus diferencias y usos particulares.

¿Cómo crear un nuevo proyecto en Xcode?

Iniciamos creando un nuevo proyecto en Xcode para mantener un entorno de trabajo limpio y organizado. Sigue estos pasos:

  1. Abre Xcode y crea un nuevo proyecto seleccionando el tipo "Emty".
  2. Nombra el proyecto (por ejemplo, "System Student Students Manager") y elige la ubicación donde lo guardarás.
  3. Cierra cualquier pestaña innecesaria para simplificar el entorno.
  4. Crea un nuevo archivo usando Plantillas y un Playground para su uso específico en clases.
  5. Asegúrate de guardar y gestionar el proyecto organizado en carpetas, como sources.

¿Cómo usar Struct para crear una clase?

Para crear una clase usando Struct, define tus propiedades y funciones dentro de él. Aquí un ejemplo de cómo crear una clase Subject para una materia:

public struct Subject { var name: String var teacherName: String let minimumScore: Double public init(name: String, teacherName: String, minimumScore: Double) { self.name = name self.teacherName = teacherName self.minimumScore = minimumScore } public func isPassed(score: Double) -> Bool { return score >= minimumScore } public func subjectDescription() -> String { return """ ---------------- Materia: \(name) Profesor: \(teacherName) Puntaje Mínimo: \(minimumScore) """ } }

¿Cómo crear una instancia de Struct en Playground?

Después de definir el Struct, vamos a instanciarlo en el Playground:

let mathSubject = Subject(name: "Math", teacherName: "Mr. Smith", minimumScore: 70) // Llamando a las funciones de la estructura let mathDescription = mathSubject.subjectDescription() print(mathDescription)

¿Por qué se necesita un inicializador público en Swift?

Swift requiere inicializadores públicos para permitir el acceso a las propiedades de las estructuras desde distintos módulos o archivos en el proyecto. Esto es esencial cuando trabajas en un entorno compartido, como Playground y sources, para un flujo sin interrupciones en el análisis y manipulación de datos.

¿Cómo crear funciones dentro de Structs?

Definir funciones dentro de tus structs mejora la modularidad y reutilización del código. La función isPassed devuelve un booleano indicando si se aprobó la materia, y subjectDescription proporciona una forma formateada de presentar información. Siempre define funciones públicas si la información debe ser accesible fuera del struct.

¿Cómo verificar errores y solucionar problemas en Xcode?

Xcode proporciona mensajes de error muy específicos que ayudan a detectar y rectificar problemas comunes, como:

  • Visibilidad de estructuras: Asegúrate de declarar estructuras y funciones como public.
  • Errores de caché: A veces, Xcode puede mostrar errores de caché temporales que desaparecen al correr el código completo.
  • Inicializadores: Declara inicializadores de manera explícita para asegurar que todos los parámetros necesarios están incluidos.

Así es cómo comenzamos a estructurar y trabajar con clases en Swift utilizando Struct. A medida que avancemos, analizaremos también el uso de Class y las diferencias principales entre ambos.