Aprende Clean Language

Tutoriales

Aprende Clean Language paso a paso — desde tu primer programa hasta crear aplicaciones reales. Cada tutorial es breve, amigable y te lleva a código funcional rápidamente.

Primeros Pasos
1
beginner3 min

Tu Primer Programa

Escribe y ejecuta tu primer programa en Clean Language en tan solo tres líneas.

bloque startprintsangría
2
beginner5 min

Variables y Tipos

Almacena valores en variables y descubre los cuatro tipos básicos de Clean.

variablesstringintegernumberbooleantoString
3
beginner5 min

Trabajar con Texto

Usa interpolación de strings y las operaciones de texto más comunes.

interpolación de cadenastrimtoUpperCasecontainsreplaceencadenamiento
4
beginner6 min

Tomar Decisiones

Usa if, else if y else para ejecutar código diferente según las condiciones.

ifelseelse ifandornotcondiciones
5
beginner6 min

Bucles: Hacer Cosas Más de una Vez

Usa bucles iterate y while para repetir código, y break o continue para controlar el flujo.

iteratewhilerangobreakcontinue
6
beginner6 min

Listas: Guardar Grupos de Cosas

Crea y trabaja con listas de valores — añade, accede, itera y comprueba.

listaddlengthacceso por índicecontainsiterate
7
beginner6 min

Escribir tus Propias Funciones

Escribe funciones reutilizables con parámetros y valores de retorno.

bloque functionsparámetrosreturnvoid
8
beginner7 min

Clases: Agrupar Datos y Comportamiento

Define clases con campos, constructores y métodos — y luego amplíalas con herencia.

classconstructorcamposmétodosherenciabase
9
beginner5 min

Manejo de Errores

Lanza errores con error() y captúralos elegantemente con onError.

erroronErrorrespaldomanejo de errores
10
beginner6 min

Tu Asistente de Programación con IA

Usa el servidor MCP para obtener asistencia de IA que conoce la especificación exacta de Clean Language.

MCP serverAIrequirecontratoscln mcp-server
Crear una Aplicación Web
11
beginner5 min

Tu Primer Servidor Web

Crea un servidor con endpoints que responden a peticiones HTTP. Tendrás algo funcionando en menos de 5 minutos.

frame.serverendpoints server:http.respond
12
beginner6 min

Devolver Páginas HTML

Sirve páginas HTML completas desde tu servidor. Usa funciones auxiliares para mantener la estructura de tus páginas consistente en cada ruta.

bloque html:functions:interpolación sin procesarestructura de página
13
beginner5 min

Parámetros de Ruta

Lee valores de la ruta URL y úsalos para servir contenido dinámico. Un endpoint gestiona /users/alice, /users/bob y cualquier nombre entre medias.

req.paramsintaxis :paramrutas dinámicas
14
beginner8 min

Leer de una Base de Datos

Conéctate a MySQL y consulta tus datos. Muestra registros de base de datos en una página web usando db.query y json.get.

frame.datadb.queryjson.getparámetros SQL
15
intermediate8 min

Guardar Datos en una Base de Datos

Gestiona peticiones POST y guarda datos de formularios en tu base de datos. Construye el lado de escritura de tu aplicación web.

endpoints POSTreq.bodyINSERTvalidación
16
intermediate5 min

Construir Componentes Reutilizables

Crea funciones que devuelven HTML — el modelo de componentes de Clean Language. Escribe una tarjeta, un botón o una barra de navegación una vez y úsalos en todas partes.

functions:bloque html:componentes reutilizablesinterpolación sin procesar
17
intermediate8 min

Listar Registros de una Base de Datos

Obtén múltiples filas y renderízalas como una lista. Este patrón impulsa cada feed, resultado de búsqueda y panel en tu aplicación.

consulta COUNTiteratejson.get con índicepatrón de listado
18
intermediate6 min

Parámetros de Consulta y Búsqueda

Lee strings de consulta URL para filtrar resultados. Añade búsqueda y filtrado a cualquier página de listado sin cambiar tus rutas.

req.queryfiltradoSQL condicionalbúsqueda
19
intermediate6 min

Endpoints de API JSON

Devuelve JSON en lugar de HTML. Construye endpoints de API que aplicaciones móviles, JavaScript frontend u otros servicios puedan consumir.

application/jsondiseño de APIrespuestas de errorverificación de estado
20
intermediate10 min

Todo Junto

Construye una aplicación completa de marcadores — añade URLs, lístalas, véalas. Todos los patrones de esta pista trabajando juntos en un proyecto real.

app full-stackCRUDcomponentesmúltiples rutas
Lenguaje en Profundidad
21
beginner5 min

Tipos y Conversiones

Entiende los cuatro tipos principales de Clean Language y cómo convertir entre ellos. El sistema de tipos detecta errores antes de que lleguen a producción.

stringintegernumberbooleanconversión de tipos
22
intermediate7 min

Funciones en Profundidad

Escribe funciones que se llaman entre sí, devuelven diferentes tipos para diferentes condiciones y construyen comportamiento complejo a partir de piezas simples.

tipos de retornocomposición de funcionesparámetros tipadosfunciones boolean
23
intermediate6 min

Operaciones con Listas

Todo lo que puedes hacer con una lista — añadir elementos, acceder por índice, comprobar pertenencia, iterar y construir nuevas listas a partir de las existentes.

list.add()acceso por índice.contains().length()iterate
24
intermediate6 min

El Kit de Herramientas de String

Una guía práctica de los métodos de string de Clean Language — los que aparecen en programas reales, con ejemplos que muestran cuándo usar cada uno.

.trim().toUpperCase().contains().replace().split().slice()
25
intermediate7 min

Diseñar Clases

Agrupa datos y comportamiento en una clase. Escribe un constructor, define métodos y crea múltiples instancias independientes a partir de la misma plantilla.

classconstructorpropiedadesmétodosinstancias
26
intermediate7 min

Herencia de Clases

Extiende una clase con is y llama al constructor padre con base(). Reutiliza comportamiento de un padre y añade o sobreescribe lo que el hijo necesita.

isbase()herenciasobreescritura de métodosclase padre
27
intermediate5 min

Contratos con require

Declara las precondiciones de las funciones explícitamente. require es documentación y cumplimiento en una sola línea — el compilador y el runtime garantizan que el contrato se cumple.

requireprecondicionescontratosprogramación defensiva
28
intermediate7 min

Manejo de Errores en Profundidad

Señala errores con error() y gestiónalos en el punto de llamada con onError. Haz que el manejo de errores sea explícito, local y legible.

error()onErrorpropagación de erroresprogramación defensiva
29
intermediate7 min

Patrones de Iteración

Domina todas las formas de iteración — rango, paso, lista, while, break y continue. Conoce qué patrón se adapta a cada problema.

iteratewhilebreakcontinuestepacumulación
30
intermediate10 min

El Lenguaje en Práctica

Ponlo todo junto: construye un contador de frecuencia de palabras usando clases, funciones, listas, strings e iteración. Ve cómo las piezas se conectan en un programa completo.

diseño de programasfuncionesclaseslistasstringsiteración
¡Copiado!