07. API Conceptual Design
Fase: 04 — Modelado del Sistema
Entregable: 07
Proyecto: NoteVault (PC, Mac, Android, iPhone)
1. Diseño Conceptual de la Capa de Servicios
En NoteVault, la API no se expone sobre HTTP/REST hacia la red externa, sino como un bus de servicios IPC en Desktop y llamadas directas en Dart Services en Móvil:
| Servicio de Dominio | Métodos Conceptuales | Entrada / Parámetros | Salida / Entidad Retornada |
|---|---|---|---|
| VaultService | open, scan, migrate |
Ruta del sistema de archivos | Metadatos de la bóveda |
| NotesService | read, write, search, move |
Ruta relativa y cuerpo Markdown | Entidad Nota y Backlinks |
| HabitService | getConfig, getDayLog, saveDayLog |
Fecha YYYY-MM-DD y checks |
Porcentaje diario y racha |
| ExerciseService | getRoutine, logSets, saveConfig |
Día de la semana y series | Registro de entrenamiento |
| TaskService | list, get, save, delete |
Filtros de estado / Objeto tarea | Tarea persistida en .md |
| StudyService | getQueue, recordAttempt |
ID de tarjeta y calificación | Tarjeta con nuevo intervalo |
| MentorService | getPlan, buildPlan, changeRoute |
Mes YYYY-MM y precondiciones |
Plan mensual estructurado |
2. Marco Conceptual: Contrato Conceptual de API
1. **Entidad principal e independiente.**
2. **Es la entidad líder del conjunto de datos:** posee un identificador global único que modela la interfaz de operaciones del dominio (`api_contract_id`: `API-CONCEPTUAL-CORE`) consultado por los controladores.
3. **Existe por sí misma en el diseño arquitectónico sin depender del protocolo de transporte (IPC o llamada interna)**, y es la única responsable de fijar los parámetros obligatorios y el tipo de respuesta esperado.
4. **Punto de entrada y límite de consistencia:** Desacopla la lógica de negocio de la presentación gráfica.