# Fundamentos de programación con Devkron
Modalidad: Virtual Objetivo: El participante conocerá los fundamentos del lenguaje Devkron, al conculuir será capaz de escribir programas útiles que incorporen los conceptos aprendidos desarrollando como proyecto final integrador una aplicación Web con acceso a bases de datos. Dirigido a: Interesados en aprender a programar con Devkron que cuenten con alguna formación previa en programación. Duración: 22 horas efectivas ## Contenido El lenguaje Devkron, o simplemente DKL [DevKron Language] es completamente traducible a XML; capaz de definir datos u otros dialectos; con interpretación imperativa y procedural para la generación dinámica de sí mismo y la realización de procesos. **Sesión 1 (2hrs)** ### Primeros pasos * Configurar el entorno de desarrollo * Ejecutar el primer programa "Hola mundo" ### Lenguaje imperativo - Variables y tipos de datos - Expresiones y operadores - Sentencias de control de flujo (if/switch/break/#include/include/return/do/) - Ciclos (for/while/repeat) - Registros de datos (new/using y operadores morsa :=) **Sesión 2 (2hrs)** - Funciones definidas por el usuario - Funciones - Funciones abiertas - Referencias a funciones - Organización y estructura de programas (namespaces, funciones y alias) **Sesión 3 (2hrs)** ### Bibliotecas de funciones incluídas - Funciones incorporadas - functions.dkh - serialize.dkh - webcl.dkh **Sesión 4 (2hrs)** ### Acceso a bases de datos - Configurar conexiones - Funciones básicas (dbr.dkh) - Conectarse a una base de datos - Obtener datos (consultas) - Insertar y actualizar - Ejecutar SQL con parámetros - Manejar transacciones **Sesión 5 (2hrs)** ### Desarrollo Web - La pila de Devkron Applications Server - El flujo de una solicitud HTTP - Sintaxis declarativa, imperativa y la conmutación de contextos **Sesión 6 (2hrs)** - Configurar como servidor de aplicaciones - Responder XML y HTML - Responder texto y JSON - Responder un archivo **Sesión 7 (2hrs)** - Enrutamientos **Sesiones 8,9,10 y 11 (2hrs cada una = 8horas)** ### Proyecto integrador Considerando una empresa que requiere implementar un buzón de quejas y sugerencias, surge la necesidad de: - Crear un sitio Web con un formulario para recibir las quejas o sugerencias - Crear una aplicación (backoffice) que permita administrar usuarios, consultar las quejas o sugerencias recibidas y marcarlas como atendidas incluyendo un mensaje de respuesta Se considerarán dos tablas: mensajes - nombre varchar(100) - correo varchar(80) - telefono varchar(15) - empresa varchar(100) - mensaje text - respuesta text - atendio string(32) - queja bool usuarios - id varchar(32) - pwd varchar(32) - nombre varchar(100) Actividades: 1. Diseñar la base de datos 2. Configurar los sitios (admin.localhost, buzon.localhost) 3. Estructurar buzon.localhost - Maquetar formulario de quejas y sugerencias 4. Estructurar admin.localhost - Programar UsuarioModel - Programar UsuarioController - Maquetar lista de usuarios - Maquetar formulario de usuarios - Programar MensajeModel - Programar MensajeController - Maquetar lista de mensajes - Maquetar formulario para atender los mensajes - Maquetar login 5. Maquetar página de inicio 6. Programar index.dkl