PROGRAMACION ORIENTADA A OBJETO Paradigmas de programación Programación Declarativa Programación Imperativa Son paradigmas donde el programador no define como se hacen las cosas, definen que se hace. MySQL Define un programa como un conjunto de instrucciones que van modificando el estado de la aplicación C, C++,Python,Java Programación Declarativa • En pocas palabras, programación declarativa consiste en decirle a un programa lo que tiene que hacer en lugar de decirle cómo debería hacerlo. Este enfoque significa implica proporcionar un lenguaje específico de dominio (DSL) para expresar lo que el usuario quiere. Programación Imperativa • El programa esta escrito de forma estructurada siguiendo un orden de instrucciones de arriba hacia abajo. • Esta programación causo varios problemas al momento de escalarlos programas ya que al aumentar otra funcionalidad , se tenia que modificar el código o volver a escribir desde un principio. Programación POO • Creada por Alan Kay, es un paradigma que cambio de forma radical de como se hace un programa introduciendo el concepto de abstracción el cual permite trasladar objetos de la vida real a códigos. • Estos objetos pueden ser físicos , intangibles, etc. • Estos objetos tienen características y acciones. • En el código las características toman el nombre de atributos. Mientras que las acciones toman el nombre de métodos. Los atributos • Los podemos identificar como una variable que almacena alguna característica del objeto. Los métodos • Son funciones cuando pertenece a una clase. Clases • Es la estructura donde se construye los diferentes objetos Método constructor • Es un método de la clase que nos permite construir un nuevo objeto y dentro de este constructor es donde recibimos la información o los datos de ese nuevo objeto y estos se asignan a los atributos de la clase. Instancia de objeto • Se llama instancia a todo objeto que derive de algún otro. De esta forma, todos los objetos son instancias de algún otro, menos la clase Object que es la madre de todas. Encapsulamiento • Este sirve para esconder, proteger, resguardar los atributos y los métodos de una clase para que no puedan ser accedido con facilidad sea por otra clase o por otro objeto o algún proceso de nuestro software que solo puedan ser utilizado en un proceso interno de nuestra clase. Método getter • Nos permite obtener el valor del atributo que necesitamos acceder. Método setter • Nos permite asignarle un valor a dicho atributo de esta forma logramos encapsular atributos y a la vez podemos acceder a ellos de una forma no directa mediante métodos designados a realizar esas funciones. Modularización • Esta se encarga de guiarnos a que nuestros códigos estén completamente separados para evitar aquellos problemas que nos daba la programación estructurada haciendo que cada parte de nuestro código sea totalmente independiente y si hay algún error o un problema no afecte a las demás partes de nuestro software esto generalmente esta dividido por paquetes o carpetas que contienen módulos. ¿Qué son los módulos? • Los módulos son archivos independientes donde se coloca el código necesario que queramos separar y independizar de nuestro software. • Programación orientada a objetos la herencia • Este tiene como mecanismos por el cual una clase permite heredar las características métodos y atributos de otra clase. • Programación orientada a objetos polimorfismo • Este se refiere se refiere a la sobreescritura o modificación de métodos heredados Sistema de Matriculación Académico Crear un programa que permita a estudiantes matricularse en el nivel que le corresponda. Por otro lado, el programa deberá permitir a profesores iniciar sesión y seleccionar las materias que desea impartir. Además, el programa deberá mostrar a los estudiantes luego de matricularse el curso elegido con sus respectivas materias y profesores correspondientes y de igual manera mostrar a los profesores, el listado de alumnos del curso que impartirá. PERSONA ESTUDIANTE PROFESOR Nombre Apellido Edad dirección EJEMPLO Paradigmas de programación Programación Declarativa Programación Imperativa Son paradigmas donde el programador no define como se hacen las cosas, definen que se hace. MySQL Define un programa como un conjunto de instrucciones que van modificando el estado de la aplicación C, C++,Python,Java Programación Declarativa • En pocas palabras, programación declarativa consiste en decirle a un programa lo que tiene que hacer en lugar de decirle cómo debería hacerlo. Este enfoque significa implica proporcionar un lenguaje específico de dominio (DSL) para expresar lo que el usuario quiere. Programación Imperativa • El programa esta escrito de forma estructurada siguiendo un orden de instrucciones de arriba hacia abajo. • Esta programación causo varios problemas al momento de escalarlos programas ya que al aumentar otra funcionalidad , se tenia que modificar el código o volver a escribir desde un principio. Programación POO • Creada por Alan Kay, es un paradigma que cambio de forma radical de como se hace un programa introduciendo el concepto de abstracción el cual permite trasladar objetos de la vida real a códigos. • Estos objetos pueden ser físicos , intangibles, etc. • Estos objetos tienen características y acciones. • En el código las características toman el nombre de atributos. Mientras que las acciones toman el nombre de métodos. Los atributos • Los podemos identificar como una variable que almacena alguna característica del objeto. Instancia de objeto • Se llama instancia a todo objeto que derive de algún otro. De esta forma, todos los objetos son instancias de algún otro, menos la clase Object que es la madre de todas. Los métodos • Son funciones cuando pertenece a una clase. Clases • Es la estructura donde se construye los diferentes objetos Método constructor • Es un método de la clase que nos permite construir un nuevo objeto y dentro de este constructor es donde recibimos la información o los datos de ese nuevo objeto y estos se asignan a los atributos de la clase. Instancia de objeto • Se llama instancia a todo objeto que derive de algún otro. De esta forma, todos los objetos son instancias de algún otro, menos la clase Object que es la madre de todas. Ahora crearemos nuestras entidades principales que heredan de personas en este caso estudiantes construimos la clase estudiante y esta hereda de la clase de persona y creamos nuestros metodo constructor por defecto ya aviso el estudio code de autocompletar y nos ayuda a avanzar en el proceso creamos nuestros atributos de clase podemos contar que el atributo curso tiene como valor un objeto crso este lo haremos mas adelante revisamos los respectivos metodos de acceso. • En este caso utilizaremos el polimorfismo re utilizado el metodo str padre y agregando nuevos valores al mismo ya teniendo nuestra clase profesora que es muy parecida a su construccion qiero que noten algo en especifico he creado dos metodos set para cada atributo uno en plural y otro en singular de esta manera agregamos un curso a la lista igualmente lo hacemos con set materias y set materia.