Parte 0 â El mĂ©todo: quĂ© es un framework y cĂłmo se compara#
Antes de escribir una lĂnea: quĂ© hace un framework que una biblioteca no hace, y cĂłmo se compara sin caer en la guerra de religiones.
Clases 1 a 10 · 10 en total · 10 construidas · 16 tecnologĂas en juego.
đ§ De quĂ© va esta parte#
Esta parte no enseña ningĂșn framework. Enseña a compararlos, que es una habilidad distinta y mĂĄs duradera: los frameworks de dentro de diez años no existen todavĂa, y el criterio para elegirlos sĂ se puede aprender hoy.
Diez clases para responder tres preguntas que casi nadie se hace antes de elegir. QuĂ© es exactamente un framework ây por quĂ© la respuesta no tiene nada que ver con el tamañoâ. QuĂ© hace comparable una comparaciĂłn ây por quĂ© un «hola mundo» no compara nadaâ. Y quĂ© cuesta un framework mĂĄs allĂĄ de las lĂneas que se escriben el primer dĂa.
Es la parte mĂĄs corta en cĂłdigo y la que mĂĄs decide sobre el resto. Todo lo que viene despuĂ©s â149 clases con el mismo contrato en varios ecosistemasâ es la aplicaciĂłn repetida del mĂ©todo que se fija aquĂ.
đ QuĂ© da por sabido#
- Haber escrito y ejecutado algĂșn programa, en cualquier lenguaje.
- Saber abrir una terminal y ejecutar un comando (estĂĄ en conocimientos previos).
- Tener Node.js instalado; el resto de cadenas se pueden añadir después (
empezar/).
đŻ QuĂ© sabrĂĄs hacer al terminarla#
- Señalar en un archivo concreto la lĂnea donde se invierte el control, y explicar por quĂ© eso convierte a una biblioteca en un framework.
- Escribir un contrato ejecutable antes de mirar ninguna implementación, y defender por qué no se adapta a ninguna.
- Clasificar una tecnologĂa antes de compararla, para no comparar una biblioteca de interfaz con un metaframework.
- Leer una comparativa de rendimiento y decir qué le falta para poder creérsela.
- Poner nĂșmero a las cuatro dimensiones del coste de un framework: aprenderlo, mantenerlo, contratar quien lo sepa y salir de Ă©l.
𧔠Por qué en este orden#
Las tres primeras clases construyen la definiciĂłn y la herramienta: quĂ© es un framework (001), cĂłmo se demuestra con un nĂșmero (002) y quĂ© hace que dos implementaciones sean comparables (003).
Las tres siguientes enseñan a no engañarse: clasificar antes de comparar (004), distinguir código idiomåtico de código traducido (005) y contar lo que no se ve en el editor (006).
Y las cuatro Ășltimas son de mĂ©todo: leer una mediciĂłn sin creĂ©rsela (007), ir a la fuente primaria en vez de al tutorial (008), aceptar que no todos resuelven todo (009) y saber leer una clase de este programa (010).
đ Las clases#
| # | Clase | Qué resuelve | Nivel | Estado |
|---|---|---|---|---|
| 001 | QuĂ© hace un framework que una biblioteca no hace | Distinguir biblioteca de framework por quiĂ©n llama a quiĂ©n. | đą introductorio | â Construida |
| 002 | InversiĂłn de control, en concreto | Ver la inversiĂłn de control en el cĂłdigo, no en el diagrama. | đą introductorio | â Construida |
| 003 | El contrato como unidad de comparaciĂłn | Entender por quĂ© comparar frameworks exige fijar antes el comportamiento. | đą introductorio | â Construida |
| 004 | TaxonomĂa: quĂ© compite de verdad con quĂ© | Clasificar antes de comparar, para no comparar cosas de categorĂas distintas. | đą introductorio | â Construida |
| 005 | IdiomĂĄtico frente a traducido | Reconocer cuĂĄndo un cĂłdigo es el de otro framework disfrazado. | đą introductorio | â Construida |
| 006 | Coste total: aprender, mantener, contratar, salir | Poner nĂșmero a lo que un framework cuesta mĂĄs allĂĄ del cĂłdigo. | đą introductorio | â Construida |
| 007 | CĂłmo se mide (y cĂłmo se miente) el rendimiento | Leer una comparativa de rendimiento sin creĂ©rsela. | đĄ intermedio | â Construida |
| 008 | Leer la documentaciĂłn oficial y el cĂłdigo fuente | Encontrar la respuesta en la fuente primaria antes que en un tutorial. | đą introductorio | â Construida |
| 009 | El elenco: por quĂ© no todos resuelven todo | Aceptar que los frameworks no son intercambiables como los lenguajes. | đą introductorio | â Construida |
| 010 | El mĂ©todo de esta obra | Saber leer una clase: contrato, implementaciones, comparaciĂłn y decisiĂłn. | đą introductorio | â Construida |
đŹ Las tecnologĂas que aparecen#
Entre parĂ©ntesis, en cuĂĄntas clases de esta parte interviene cada una. Estar aquĂ no es una recomendaciĂłn: es que el problema de esa clase existe de verdad para esa tecnologĂa.
| Ecosistema | TecnologĂas |
|---|---|
| JavaScript/TypeScript | Prisma ORM (2), React (2), Next.js (1) |
| Node.js | Express (10), Fastify (1) |
| Python | FastAPI (5), Flask (1) |
| JVM | Spring Boot (5) |
| .NET | ASP.NET Core (2) |
| Node.js/TypeScript | NestJS (2) |
| Rust | axum (1) |
| Dart | Flutter (1) |
| Go | Gin (1) |
| PHP | Laravel (1) |
| JavaScript | Node.js (1) |
| Ruby | Ruby on Rails (1) |
đ Las palabras que esta parte define#
Framework · Biblioteca · MĂ©todo plantilla · Runtime · Manifiesto · Dependencia · InversiĂłn de control · Contrato · Metaframework · TaxonomĂa · CategorĂa de catĂĄlogo · Alternativa real · ConvenciĂłn · IdiomĂĄtico · Coste total · Percentil · Elenco · Verde honesto
Todas, con su definiciĂłn, en el glosario.
â CĂłmo se ejecuta una clase de esta parte#
node scripts/run-class.mjs 001El verificador arranca cada implementaciĂłn, la somete a su contrato.json y declara cuĂĄles omitiĂł por no encontrar su cadena de herramientas. Si te faltan cadenas, node scripts/doctor.mjs dice cuĂĄles y cĂłmo se instalan.
âĄïž Y despuĂ©s#
La parte 1 baja al suelo: un proceso que escucha en un puerto y responde. A partir de ahĂ, cada clase aplica el mĂ©todo de esta parte a un problema concreto.