OE2.1. Comprender y comparar los elementos que componen una solución bajo el paradigma de programación orientada a objetos y bajo el paradigma de programación estructurada.
OE2.2. Aplicar los conceptos de encapsulamiento y abstracción en el modelado e implementación de soluciones bajo el paradigma de programación orientada a objetos.
OE2.3. Diseñar, modelar y codificar el estado de un objeto, por medio de atributos que contienen estructuras contenedoras lineales de tamaño fijo, tipos de datos primitivos y tipos de datos referenciados; y su comportamiento, por medio de métodos con y sin parámetros, con y sin tipos de retorno.
OE2.4. Integrar las clases de la interfaz de usuario con las clases del modelo de la solución, siguiendo una arquitectura de software adecuada, repartiendo pertinentemente las responsabilidades y comprendiendo la importancia de mantener separados estos dos dominios.
OE2.5. Implementar soluciones a problemas bajo el paradigma de programación orientada a objetos, a partir de la interpretación de la documentación desarrollada en las etapas de análisis y diseño (requerimientos, diagramas de clases y contratos) y la validación de la propuesta con las necesidades del usuario.
OE2.6. Utilizar las herramientas del lenguaje tales como las instrucciones de construcción de instancias, visibilidad de los elementos de una clase y enumeraciones en la construcción de una solución bajo el paradigma de la programación orientada a objetos.
OE2.7. Utilizar la línea de comandos para compilar, generar la documentación y ejecutar una aplicación estructurada siguiendo la arquitectura modelo-vista.