Introducción a la programación orientada a objetos
programación procedual
es un tipo de programacion que se centra en realizar varios procedimientos para realizar tareas especificas
fue la primera forma de programar con lenguajes de programacion de alto nivel, que
supondrian una ventaja muy grande ya que permitian al programador realizar procesos sin
necesidad de conocer las caracteristicas de la maquina
sin embargo, este tipo de programacion era muy desorganizado, dificil de comprender, era muy
tedioso probar los programas y ademas limitaba mucho la abstraccion de un evento de la vida
real a la computadora
programación estructurada
es un tipo de programacion en el cual se utilizan procedimientos pero
ademas de esto vienen distintas estructuras, las cuales supondrian
una gran ventaja sobre la programacion procedual
ademas de las estructuras, la programacion estructurada ofrece unas
herramientas, las cuales llevarian a que los programas fueran mas
faciles de desarrollar organizar, probar y que fueran mas confiables
modulos
funciones
son bloques de procedimientos, estructuras y datos que
ayudan a simplificar los programas, realizar tareas
especificas y poderlas reciclar fácilmente
la modulacion es una tecnica de programacion
que consiste en separar un programa
completo en pequeñas sub-tareas que
estaban relacionadas
esta tecnica permitia que las funciones se organizaran mejor y que
ademas se pudiera encapsular la informacion y los procesos
sin embargo esta tecnica era limitada ya que por ejemplo para editarse un programa, si se cambiaba
un dato en una funcion este tambien se debia cambiar las funciones donde el dato se usara o
apareciera
tipos de estructuras
secuenciales
son estructuras que comprenden una serie de procedimientos
que se realizan de manera ordenada, mas específicamente por
orden de escritura de los mismos
seleccion
son aquellas estructuras en donde se
desarrollan ciertos procedimientos si se
cumplen ciertas condiciones
if/else
son estructuras las cuales
entran a ejecutar los
procedimientos si se
cumplen o no se cumplen
ciertas condiciones
switch
son estructuras que pueden ejecutar
distintos procedimientos dependiendo de
varias condiciones
ciclicas
son aquellas estructuras donde se desarrolan
procedimientos si se cumplen unas condiciones
pero ademas de ello se repiten dependiendo de
las mismas
while/ do while
son estructuras que se iran repitiendo a
medida que la condicion a la cual esta en
juicio se siga cumpliendo
for
estas estructuras tendran
un valor de inicio y este
valor ira cambiando a
medida que se repite la
serie de procedimientos y
esto hasta que la
condicion que cambia de
valor llegue a uno definido
la programacion estructurada es muy util, pero muy limitada
ya que presenta cierta dificultad trabajar con ella y ademas
imposibilita la abstraccion de muchas cosas de la vida real,
lo que tambien hace que sea dificil automatizar ciertas
tareas
abstraccion
en la programacion este terminoes muy importante ya que la
abstraccion consiste en coger un objeto, analizar sus propiedades
relevantes y sus caracteristicas importantes, extraerlas y llevarlas a la
programacion donde el computador entendera estos
comportampientos
paradigma
se refiere a un modelo de algo o un concepto el cual se
puede seguir, en la programacion es un termino escencial
ya que esta misma posee diferentes modelos o
metodologias las cuales son diversas y de las cuales se
pueden tomar como modelo
programacion orientada a
objetos
la programacion orientada a objetos es una
herramienta muy poderosa en la programacion, ya
que esta se acerca mucho mas a lo que es la realidad.
lo que permite que la abstraccion de objetos reales se
lleven a la programacion de manera mas facil y logica
los objetos en la programacion son una
abstraccion de algo lo cual tiene unas
caracteristicas abstractas llamadas clases
las clases son tipos abstractos de dato los cuales
contienen atributos y metodos los cuales se les puede
asignar a infinidad de objetos y a otras clases gracias a la
herencia
podriamos suponer que tenemos una clase llamada motor, la cual contiene llantas, chasis,
motor, exhosto, etc. podriamos asignarle un valor de motor a un carro o a una moto, ya
que tienen similares caracteristicas aunque por ejemplo, el carro tiene 4 llantas y la moto 2,
el motor del carro es mas grande y el exhosto probablemente sea mas pequeño, este
ejemplo puede ilustrar a lo que se refiere el paradigma orientado a objetos
propiedades importantes
abstraccion
encapsulamiento
modularidad
jerarquia
polimorfismo
una caracteristica muy importante de la
programacion orientada a objetos es la
reutilizacion de codigo para realizar otros
programas
lenguajes de programación
orientados a objetos
tipos de lenguajes
basado en objetos
es un lenguaje que permite en su sintaxis, el uso de objetos
algunos de estos lenguajes son: Ada-83, Actor y Clipper 5.x
basado en clases
es un lenguaje que ademas de soportar objetos, en su sintaxis
permite el uso de clases
Uno de ellos es Clu
orientado a objetos
es el que ademas de objetos y clases,
permite la herencia entre clases
algunos de ellos son: C++, Eiffel, Simula, Smalltalk, Turbo Borland Pascal,
Delphi, Visual Object, Object COBOL, Ada-95
encapsulamiento
es la capacidad de poderse ocultar la
informacion al exterior de un modulo y
permitir que solo sea el modulo mismo el que
pueda manipular la informacion
jerarquia
es el orden que llevan ciertos tipos de
datos abstractos dependiendo de varios
factores
polimorfismo
es la capacidad de varias instancias de distintas clases
realizar las mismas acciones pero de diferentes maneras
factores importantes de un software
eficiencia
portabilidad
verificabilidad
integridad
facilidad
correccion
robustez
extensibilidad
reutilizacion
compatibilidad
Ciclo de vida de un software
Herencia
La herencia es uno de los mecanismos de los lenguajes de
programación orientada a objetos basados en clases, por medio del
cual una clase se deriva de otra de manera que extiende su
funcionalidad.
Karen Milena Romero Romero 20161005065
Miguel Felipe Guarin Ramos 20161005071