Temario
Primer año - Programador Web .Net
Materia: Programación Orientada a Objetos en C#
• Introducción General a la Programación
• Visual Studio (instalación y manejo)
• Lenguaje C#
• Variables, Tipos de datos, Constantes
• Sentencias de selección y de iteración - Operadores – Expresiones
• Diseño de Clases (Modelo Conceptual) – Lenguaje UML
• POO – definiciones básicas (clase, objeto, estado, comportamiento)
• Atributos, Constructores, Operaciones, Modificadores
• POO – Herencia, Asociación, Polimorfismo, Navegabilidad
• Colecciones estáticas, dinámicas y Generic
• Manejo de excepciones
• Caso de Estudio final integrador
Materia: Diseño e Implementación de Base de Datos
• Introducción a Bases de Datos relacionales
• DBMS – Sql Server
• Modelo Entidad-Relación - Diagrama Entidad Relación – RNE
• Conceptos Básicos: tabla, registro, atributo, claves, cardinalidad, relación, totalidad, roles, agregación especialización
• Pasaje a Modelo Relacional
• Introducción al Lenguajes Sql
• Sentencias DDL - Creación de Bases de datos y su esquema
• Sentencias DML - Mantenimiento de datos
• Sentencias DML - Consultas de datos: básicas, subconsultas, funciones agregadas, JOIN’s, operadores
• Funciones SQL Server: matemáticas, caracteres y fechas
• Transacciones
• Procedimientos Almacenados: variables (locales y de entorno), parámetros, retornos, sentencias selección
Materia: Aplicaciones Web en C#
• Introducción desarrollo Web: términos importantes
• Visual Studio – proyectos bibliotecas, aplicaciones MVC – manejo del entorno
• ASP MVC: Modelo Vista controlador
• Razor – Html – CSS
• Plantillas automáticas para Vistas: acciones, modelo base
• ADO .Net: introducción – clases – forma conectada - mapeo de entidades
• Programación en Capas: que es la arquitectura – separación de responsabilidades
• Aplicación MVC: uso del modelo, acceso a capas, lógica en controladores.
• Diferenciación de Frontend y Backend
• Caso de Estudio final integrador
Proyecto Final de Primer Año
El proyecto se plantea durante el mes de diciembre y el alumno lo desarrolla durante el verano, debiendo concurrir a clases de seguimiento periódicas previamente fijadas por el Instituto. La entrega se hará justo antes de comenzar el próximo año curricular y constará de una defensa del mismo, con el tutor asignado al seguimiento del proyecto
Título Intermedio BIOS
El título a otorgar al finalizar y aprobar todas las materias del primer año incluyendo el Proyecto Final de Primer Año, es el de: PROGRAMADOR WEB .NET
Segundo Año Analista Programador Web.Net
Materia: Administración de Base de Datos
• Repaso de Modelo Relacional, Sql Server y Lenguaje Sql.
• Modificadores a nivel tabla
• Solicitud de datos de prueba a IA
• Seguridad: roles, permisos y usuarios - Planes de seguridad
• Vistas: utilidad – combinación con seguridad
• Introducción a Sql Agent. Job’s y su planificación
• Índices
• Trigger’s DDL y DML
• Extended Events
• Respaldo de base de datos (Modelos, tipos de respaldos y recuperación) – planificación
• Exportación e importación de datos
• Practico Final Integrador: generar una base de datos completa, aplicando todos los nuevos conocimientos.
Materia: Diseño de Aplicaciones
• Repaso MVC y lenguaje C#
• MVC: Anotaciones, validaciones automáticas, Layout, manejo de autenticación y autorización.
• Pruebas Unitarias con Visual Studio
• ASP .Net (formularios, controles, eventos, ciclo de vida, paginas maestras)
• Manejo de baja lógica y transacciones Lógicas
• LinQ - estructura, uso, ejecución, objetos anónimos, tipo var. Métodos LinQ
• Publicación de sitios Web - IIS
• ORM (arquitectura, modelos, clases, tipos de carga, etc) - Entity Framework DataBase First)
• Web API: implementación arquitectura orientada a servicios (verbos de acción, controladores y modelo, JSon). Generación de BackEnd con capas, programación tradicional o ORM. Publicación
• Aplicaciones Web: introducción, Consumo de web API
• Caso de Estudio Final Integrador
Materia: Desarrollo con IA
• GitHub: creación de usuario – Uso (repositorio privado – cambios – actualización – combinar cambios y fusión – tableros y tareas - errores)
• Visual Studio: activación y manejo básico del complemento de Copilot
• Buenas prácticas y uso responsable
• Ayuda en línea con el código - Auto documentación
• Pruebas Unitarias automatizadas (entidades y acciones)
• Creación de Modelos a partir de diagramas (DER – Modelo Conceptual) incluyendo código, anotaciones
• Generación automática de código para aplicaciones, capas, UI, etc.
• Generación de un Modelo EF CodeFirst completo mediante Copilot
Proyecto Final de Segundo Año
El alumno debe diseñar, desarrollar, testear e instalar una aplicación distribuida en la Plataforma .NET que acceda a bases de datos utilizando las tecnologías y formas de distribución estudiadas a lo largo del año.
Título Intermedio BIOS
El título a otorgar al finalizar y aprobar todas las materias del Segundo Año incluyendo el Proyecto Final de Segundo Año, es el de: ANALISTA PROGRAMADOR WEB .NET
Tercer Año Analista de Sistemas
Materia: Aplicaciones Web en Spring
• Transición de C# a Java básico: Paridad de conceptos, sintaxis diferencial, colecciones, java.time).
• Java moderno: expresiones Lambda, Streams (el linq de java), tipo Optional
• Entorno de Trabajo: Visual Code: configuración, extension pack’s necesarios para la materia
• DBMS MySql.
• Srping Core: Maven, Arquitectura en Capas (Controller -> Service -> Repository)
• Spring Data JPA: Mapeo de Entidades, Relaciones y Clases. JPQL. El problema de rendimiento N+1
• Backend - Arquitectura API REST con Spring Boot: Controladores REST, anotaciones, respuestas, validación y errores, manejo global de excepciones
• Frontend: Cliente-Servidor modelo SPA, maquetación, interfaces dinámicas, HTML5 y CSS3, JavaScript Asincrónico, consumo de datos, manipulación del DOM
• Spring Security + JWT: Stateless, CORS, cifrado de Credenciales. Autenticación. Autorización. Integración Full Stack del Token
• Despliegue y Orquestación con Docker: Contenedores, Docker vs. Máquinas Virtuales. Docker Compose
Materia: Ingeniería de Software
• Gestión de Proyectos: Definiciones, Tipos de Ciclos de vida.
• Metodologías Agiles - SCRUM: Definiciones. Manifiesto Ágil. Componentes. Roles, Eventos, Sprint
• Métricas de Productividad: Gráficos: Burndown, Burnup, Velocity y Cumulative Flow. Workflows. Jira
• Requerimientos y Análisis: Requerimientos Funcionales, No Funcionales. Casos de Uso. Story Points / Planning Poker. Modelo Conceptual (restricciones del negocio). DSS. Contratos
• Evolución Arquitectónica (Comparativa): Arquitectura Monolítica, Tradicional, Hexagonal, Clean Architecture
• Patrones de Diseño de Software: Factory, Singleton, Observer, Inyección Dependencias, Adpater, Strategy, State, Proxy.
• Testing(QA): Filosofía, Principios, Conceptos básicos, Ciclo de vida. Caja Negra, Caja Blanca, Pruebas Funcionales y No Funcionales, etc. Particiones de Equivalencia, Análisis de Valores Límite, Tablas de Decisión, Diagramas de Transición de Estados, Diseños de escenarios eficientes.
• Automatización de Pruebas y DevOps: Pirámide de Automatización. Pruebas Unitarias, Integración, de Interfaz, de Carga, Stress y Rendimiento. JUnit 5 / Mockito. Selenium. JMeter
• Contenedores y Orquestación (DevOps): Docker vs. VM. Imágenes multi-stage. Arquitectura multi-contenedor: Docker Compose (Front, Back,DBMS)
• Documentación Formal: motivación, organización, armado.
Materia: Aplicaciones Móviles
• Lenguaje Dart: Variables, colecciones, modificadores de flujo. Event Loop, Futures, Streams, async/await.
• Flutter: Arquitectura, configuración del entorno, anatomía de un proyecto móvil.
• Arquitectura - Ciclo de Vida UI: árbol de Widgets, árbol de Elementos y árbol de Renderizado. StatelessWidget, StatefulWidget, State, initState, didChangeDependencies, dispose. Maquetación de Interfaces: Scaffold, AppBar, Column, Row, Stack, ListView, GridView). Rutas, argumentos entre pantallas, Tabs, Drawers, modales.
• UI Avanzada - UX: Diseño Adaptativo y Responsivo. MediaQuery, LayoutBuilder y OrientationBuilder. ThemeData, Form, TextFormField, SnackBar, AlertDialog, ModalBottomSheet, GestureDetector, InkWell.
• Clean Architecture - Gestión de Estados: capa de Presentación, Dominio, Datos. BLoC.
• Integración con APIs REST y JWT: Consumo de APIs preexistentes. Cliente HTTP, mapeo JSON, códigos de estado. Seguridad y Criptografía en el Dispositivo: Flutter Secure Storage, Keystore/Keychain, inyección JWT.
• Persistencia Local (Offline): Shared Preferences, Bases de Datos Locales Móviles (NoSQL rápidas). Sincronización.
Proyecto de Fin de Carrera
La Carrera culmina con el desarrollo de un sistema de software de mediano porte. El alumno debe presentar un proyecto propio, ya sea para una empresa o como un emprendimiento personal. Será apoyado por un tutor con experiencia en el desarrollo de software.
Luego de aprobar todas las asignaturas de la carrera, y luego de haber aprobado/defendido el proyecto final, se le otorgará al alumno el título final de Analista de Sistema
Título Intermedio BIOS
El título a otorgar luego de aprobar todas las materias de la Carrera incluyendo el Proyecto de Fin de Carrera, es el de: ANALISTA DE SISTEMAS
Materias Curriculares Electivas
El alumno deberá optar por al menos UNA materia curricular electiva online para aprobar cada año de la carrera de Analista de Sistemas.
• Introducción a la Ciencia de Datos
• Python 1
• Python 2
• Genexus Analista Junior
• Swagger (DevOps básico)
• Angular
• Cloud Computing - (DevOps Avanzado)