Introducción a la Programación Orientada a Objetos utilizando Microsoft Visual Studio y Visual C#
Duración: 36
horas
Versión de
Visual Studio: 2008
Acerca del
curso
Este curso permitirá a los
participantes empezar a diseñar y desarrollar aplicaciones orientadas a objetos
utilizando Visual Studio. Los participantes aprenderán los conceptos de
programación orientada a objetos incluyendo clases, métodos, propiedades,
herencia e interfaces. Los participantes además aprenderán a identificar
oportunidades para utilizar estos conceptos durante el diseño y como implementar
estos conceptos de programación orientada a objetos utilizando Visual Studio.
Audiencia
Este curso está dirigido a
estudiantes o egresados de carreras del área de informática o a personas con
conocimientos de algún lenguaje de programación procedural o algún lenguaje
orientado a objetos.
Objetivos
Al finalizar el curso, los
participantes podrán:
þ
Describir los principios fundamentales de la programación orientada a objetos.
þ
Describir lo que es una
Clase y su importancia en la estructura básica de una aplicación
orientada a objetos.
þ
Agregar
Propiedades y
Métodos para implementar la funcionalidad interna de una
Clase.
þ
Implementar herencia, abstracción y polimorfismo para reducir la duplicidad de
código.
þ
Crear estructuras de datos que demuestren la reutilización de código.
þ
Implementar
Interfaces para establecer
relaciones entre
Clases y reducir dependencias de
código.
þ
Crear el diseño de una estructura de datos orientada a objetos a partir de un
problema real de negocios.
þ
Crear estructuras de datos orientadas a objetos basadas en sus conocimientos de
Clases,
Propiedades,
Métodos,
Herencia e
Interfaces.
þ
Crear y utilizar
delegados,
eventos y
excepciones para
establecer comunicación entre las clases.
þ
Diseñar interacción entre clases basadas en un conjunto de requerimientos de
negocio.
þ
Diseñar interacción entre clases utilizando
Métodos, Eventos,
Delegados y
Excepciones.
þ
Crear unidades de software actualizables mediante componentes y bibliotecas de
clases.
Contenido
Módulo 1: Introducción a la Programación Orientada a Objetos
Este módulo proporciona los
conocimientos fundamentales que son requeridos antes de iniciar el aprendizaje
de la programación orientada a objetos. Se describen también las características
de Visual Studio.
1.1.
Fundamentos de la programación
1.2.
Introducción a la programación Orientada a Objetos
1.3.
Creando proyectos en Visual Studio
1.4.
Codificando en Visual Studio
1.5.
Características de productividad en Visual Studio
1.6.
Depuración de aplicaciones en Visual Studio
Módulo 2: Implementando Clases, Propiedades y Métodos
Este módulo explica la importancia de
las
Clases en la estructura básica de
una aplicación orientada a objetos. Se agregan también
Métodos y
Propiedades para implementar la
funcionalidad interna de una
Clase.
2.1.
Creando clases
2.2.
Implementando Propiedades dentro de una clase
2.3.
Implementando Métodos dentro de una Clase
2.4.
Utilizando Clases, Propiedades y Métodos
Módulo 3: Clases en
C# - Miembros y modificadores de acceso
Este módulo explica como diseñar e implementar clases en C# utilizando sus
distintos tipos de miembros y modificadores de acceso.
3.1.
Miembros de una clase
3.2.
Modificadores de acceso
3.3.
Tipos anidados
3.4.
Campos (Fields)
3.5.
Constructores de instancia y Constructores estáticos
3.6.
Constantes y Campos de solo lectura
3.7.
Propiedades automáticas
3.8.
Indexadores (Indexers)
3.9.
Sintaxis para inicializar un objeto
3.10.
Métodos estáticos
3.11.
Clases estáticas
3.12.
Métodos de extensión
3.13.
Tipos parciales y métodos parciales
3.14. El
operador New
3.15.
Modificadores de los parámetros
3.16.
Lista de parámetros variables
3.17.
Punto de entrada de una aplicación C#
3.18.
Destructores
Módulo 4: Implementando Herencia, Abstracción y Polimorfismo
Este módulo explica como implementar
Herencia,
Abstracción y Polimorfismo
para reducir la duplicidad de código. Se describe además, la forma de crear
estructuras para permitir la reutilización
de código.
4.1.
Introducción a la Herencia y
Abstracción
4.2.
Implementando Herencia y
Abstracción
4.3.
Introducción al Polimorfismo
4.4.
Implementando una estructura polimórfica
Módulo 5: Implementando Interfaces
Este módulo explica como implementar
interfaces para establecer relaciones comunes entre
Clases, reducir dependencias de código y facilitar la estandarización de
código.
5.1.
Introducción a las
Interfaces
5.2.
Declaración de una Interface
5.3.
Implementando una Interface
5.4.
Implementación explicita de una Interface
Módulo 6: Diseño de estructuras orientadas a objetos
Este módulo explica el proceso para
crear un diseño de estructuras de datos orientadas a objetos para un problema de
negocios. Se describe además como crear estructuras de datos orientadas a
objetos, basadas en el conocimiento que se tiene de
Clases, Propiedades,
Métodos, Herencia e
Interfaces.
6.1.
Diseñando
Clases a partir de los
requerimientos de un problema de negocios
6.2.
Agregando Herencia al diseño
6.3.
Agregando Interfaces al diseño
6.4.
Afinando el diseño creado
Módulo 7: Implementando Delegados, Eventos y Excepciones
Este módulo explica cómo crear y
utilizar delegados, eventos y excepciones para establecer comunicación entre
clases.
7.1.
Introducción a los delegados
7.2.
Implementando delegados
7.3.
Delegados Multi-cast
7.4.
Métodos anónimos
7.5.
Funciones Lambda
7.6.
Introducción a los eventos
7.7.
Implementando eventos
7.8.
Patrones de diseño de eventos
7.9.
Introducción a las excepciones
7.10.
Implementando excepciones
Módulo 8: Diseñando colaboración entre objetos
Este módulo explica como diseñar
colaboración entre clases utilizando métodos, eventos, excepciones y delegados.
Además, en este módulo se introducen los diagramas de secuencias como una forma
de documentar y planificar las interacciones entre clases.
8.1.
Introducción a las interacciones entre clases
8.2.
Agregando interacciones al diseño
8.3.
Evaluando el diseño
8.4.
Introducción a los Patrones
Módulo 9: Distribuyendo Componentes y Bibliotecas de clases
Este módulo explica cómo crear y dar
mantenimiento a unidades actualizables de software mediante la distribución de
Componentes y Bibliotecas de clases. Se describe también como dar mantenimiento
a una aplicación sin tener que redistribuir la aplicación completa.
9.1.
Introducción a los Componentes y Biblioteca de clases
9.2.
Distribución de un Componente/Biblioteca de clases
9.3.
Mejores prácticas para distribuir un Componente/Biblioteca de clases