Descripción general del proyecto
Parte de la sección Lógica y Flujo del Journey de Swift de Coddy. Lección 33 de 56.
Vas a crear un pequeño rastreador de hábitos. El estado vive en un único diccionario que asigna un nombre de hábito a su historial de días completados de la semana:
var habits: [String: [Int]] = [
"read": [1, 3, 5], // hecho el lun, mié, vie
"workout": [2, 4] // hecho el mar, jue
]Los días son enteros 1...7 para Lun...Dom. En las próximas cuatro lecciones añadirás funciones de una en una:
- Añadir un hábito y marcarlo como completado
- Calcular las rachas de la semana
- Imprimir una cuadrícula semanal
- Comparar dos semanas
Cada lección es independiente; volverás a declarar el diccionario al principio de cada archivo. El estado tiene la misma estructura, por lo que los métodos que escribas se pueden transferir entre las lecciones.
Desafío
PrincipiantePara comenzar el proyecto, escribe el código de configuración de datos:
- Inicializa un diccionario
habitsvacío ([String: [Int]]) - Imprime la cantidad de hábitos
- Imprime si el diccionario está vacío
La salida esperada es:
0
truePruébalo tú mismo
// TODO: declara un [String: [Int]] vacío, luego imprime count e isEmpty
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Lógica y Flujo
1Strings a fondo
Conteo e índicesMayúsculas, minúsculas y TrimBúsqueda en StringsDividir y unirReemplazo de subcadenasResumen: Validación de usuario4Conjuntos
Crear conjuntosUnión e intersecciónResta y diferencia simétricaSubconjunto y superconjuntoResumen - Filtro de etiquetas7Proyecto - Seguimiento de hábitos
Descripción general del proyectoMarcar como completado10Proyecto - Motor de cuestionarios
Descripción general del proyectoHacer preguntas2Rangos e Intervalos
Cerrados vs. SemiabiertosSaltos (Stride)Métodos de RangosRangos en SwitchResumen - Cuadrícula de calendario5Funciones de orden superior Pt. 1
MapFilterReduceEncadenar map, filter, reduceResumen - Estadísticas de palabrasPractica por tu cuenta: Playground de Swift