Ir al contenido principal

Paradigma de la Programación a Objetos

Programacion Orientado a Objetos

Conceptos Fundamentales

  • Encapsulacion
Es el proceso de almacenar en una misma seccion los elementos de una abstraccion que constituyen su estructura y su comportamiento; Sirve para separar el interfaz contractual de una abstraccion y su implementacion.
Consiste en organizar datos y metodos de una estructura, conciliando el modo en que el objeto se implementa, es decir, evitando el acceso a datos por cualquier otro medio distinto a los especificos. Por lo tanto la en capsulacion garantiza la integralidad de los datos que contiene un objeto.
Al combinar los atributos y los metodos en una sola entidad, es decir adentro de un objeto, obtenemos la encapsulacion.
  • Herencia
Es una propiedad que permite que los objetos sean creados a partir de otros ya existentes, obtendiendo caracteristicas similares a este. Este mecanismo permite derivar clases a partir de una clase base y nos permite compartir automaticamente metodos entre clases, subclases y objetos.
Permite la creacion de clases abstrayendo los atributos y los metodos comunes.

Superclase: Contiene todos los atributos y comportamientos  que son comunes a las clases que descienden de ella, tambien se le conoce como clase padre o clase base.
La super clase es la clase que hereda todos los atributos y los metodos de otra clase.

Subclase: Es una extesión de la superclase, toma lo de la superclase y adiciona lo propio, tambien se le conoce como clase hija o clase derivada.

La relacion de la herencia generalmente se conoce como es-un
  • Poliformismo
Es la capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en funcion de los parametros utilizados durante su invocacion. Un objeto poliformico es la entidad que puede contener valores de diferentes tipos durante la ejecucion del programa.

Significa muchas formas, es decir que un objeto particular puede tomar diferentes formas en un momento dado.

Objeto
Son los elementos que componen a un sistema

Ejemplo:

Un programa orientado a objetos es basicamente una coleccion de objetos.


Datos del Objeto
Los objetos guardan datos en su interior, estos datos se llaman atributos; El contenido de estos datos en unmomento en particular  es lo que conocemos como el estado del objeto.

Acceso
Podemos indicar el tipo de acceso que tendremos:
  • Publico: El exterior tiene acceso
  • Privado: Solo el mismo objeto puede acceder
  • Protegido: Unicamente dentro de la cadena de herencia se tiene acceso
Al interior del objeto tenemos informacion y acciones que se van a llevar acabo.
El acceso nos va a permitir conocer determinado atributo o que podamos invocar determinado comportamiento.

Comportamiento del objeto
El comportamiento del objeto representa lo que el objeto puede hacer. Es una accion que lleva acabo el objeto cuando recibe un mensaje o cuando cambia su estado interno y todos estos comportamientos se colocan en metodos.

Mensajes
Los objetos se comunican entre si por medio de mensajes, este es el mecanismo de comunicacion, se logra cuando un objeto invoca un metodo de otro.
para que pueda suceder necesitamos conocer:
  • Nombre del metodo
  • Parametros a pasar al metodo
  • Tipo de retorno del metodo

Clases
Es un plano a partir del cual el objeto es construido, en el indicamos que atributos y como funcionan los metodos que tendra el objeto. Muchos objetos pueden ser construidos apartir de la misma clase.
Tambien podemos pensar en la clase como un tipo de datos de alto nivel o definido por el programador.

Sintaxis

Class < nombreclase>
{
< miembros>
}

De este modo se definira una clase de <nombreclase> cuyos miembros son los definidos en <miembros>. Los miembros de una clase son los datos y metodos de los que van a disponer todos los objetos de la misma.


Procedimientos y Funciones

EN C# tenemos 4 tipos:

Procedimientos
La visibilidad de un procedimiento viene determinada por la declaracion private, publica o internal. Por defecto si no se indica nada se entiende que es public. Pueden recibir o no parametros, ejecuta instrucciones pero nunca retornara ningun valor.

Sintaxis

Funciones
Una funcion puede recibir o no parametros, ejecuta ciertas instrucciones y la ejecucion return devuelve un valor de salida de la funcion.

Sintaxis

Procedimientos de Propiedades
Estos procedimientos se llaman encapsuladores debido a que el valor de la propiedad se encapsula. Se utilizaran cuando queramos modificar y/o recuperar un valor (set/get)


Procedimientos de Operadores
Permite la redefinicion de un operador estandar del lenguaje para utilizarlo en tipo personalizado (clase o estructura)

Sintaxis



Documentacion de Programmas 
Nos permite darle claridad y compresncion a cada una de las lineas de codigo que tendra el programa que estemos realizando.

Estandares de codificacion para la correcta utilizacion de la POO

Organizacion de los ficheros
  • Ficheros de codigo fuente
  • Estructura de directorios
Indentacion
  • Espacios en blancoAjuste en lineaComentarios
  • Comentarios de bloque
  • Comentarios de linea
  • Comentarios de documentacion
Declaraciones
  • Declaraciones de variables locales
  • Declaraciones de miembros de clase e interfaces
  • Inicializaciones
Sentencias
  • Sentencias simples
  • Sentencias de retorno
  • sentencias if, if.else, if else-if-else
  • sentencias for/for each
  • sentencias while/ do while
  • sentencias switch
  • sentencias try catch
Espaciado
  • Linea en blanco
  • Espacios entre terminos
  • Formato de tabla
Convenios de nombres
  • Mayusculas/minusculas
  • Nombres de clases
  • Nombres de interfases
  • Nombres de enumeraciones
  • Nombres de campos estaticos, readonly y constantes
  • Nombres de parametros y campos no constantes
  • Nombres de variables
  • Nombres de metodos
  • Nombres de propiedades
  • Nombres de eventos
Practicas de Programacion
  • Visibilidad
  • No utilizar numeros mágicos

Comentarios

Entradas populares de este blog

Presentación Desarrollo Humano

BIENVENIDOS AL BLOG-DESARROLLO HUMANO Este módulo es una asignatura que estoy cursando actualmente en la universidad pascual bravo y estaré publicando mi evidencia de aprendizaje a medida que vaya avanzando en el estudio del mismo. Por esta razón les pido encarecidamente que lean cada una de mis entradas que iré publicando con el fin de que me ayuden a crecer en el ámbito del conocimiento y el aprendizaje con cada uno de sus valiosos aportes que me puedan brindar. Dichos aportes son los que ayudaran al mejoramiento y a la búsqueda incansable de la excelencia para servir a la sociedad. El desarrollo humano es la base fundamental de la sociedad porque con ella se evidencia el constante crecimiento y la evolución de la persona, en los valores y en la ética. Los cuales lo van ayudar a ser un profesional integro el cual contribuya al crecimiento de un país mejor. Muchas gracias por su atención,  Daniel Yesid Duque Giraldo.

Empleado, empresario o ambos

¿Cuáles son las ventajas de ser empleado? La ventaja que tiene ser empleado es que podemos contar con un trabajo constante, remunerado y con todas las prestaciones sociales sin tener que preocuparnos por nada sino solo ser rendidores en los deberes que los jefes nos ponen. ¿Cuáles son las desventajas de ser empleado? La mayor desventaja que podemos tener es que en cualquier momento podemos ser despedidos y no tener otras opciones de ingreso de dinero. Por otro lado es que no contamos con la remuneración adecuada al tipo de trabajo que se hace. Otra desventaja es que no disponemos del tiempo y por lo tanto no podemos  hacer otras actividades en las cuales estemos involucrados con nuestra familia. ¿Cuáles son las ventajas de ser empresario? La mayor ventaja que se tiene al ser empresario es que se dispone del tiempo para dedicarle a la familia y hacer cosas que te gusten como viajar y conocer distintos lugares. Se dispone de mayores ingresos económicos los cuales los p

Presentación Matemáticas Discretas

BIENVENIDOS AL BLOG-MATEMÁTICAS DISCRETAS Este módulo es una asignatura que estoy cursando actualmente en la universidad pascual bravo y estaré publicando mi evidencia de aprendizaje a medida que vaya avanzando en el estudio del mismo. Por esta razón les pido encarecidamente que lean cada una de mis entradas que iré publicando con el fin de que me ayuden a crecer en el ámbito del conocimiento y el aprendizaje con cada uno de sus valiosos aportes que me puedan brindar. Dichos aportes son los que ayudaran a mi mejoramiento y a la búsqueda incansable de la excelencia para servir a la sociedad. Las matemáticas discretas son una base fundamental para la computación, debido  a que el lenguaje y las herramientas que utiliza son habituales en gran parte de la materia, como por ejemplo el algoritmo. Muchas gracias por su atención, Daniel Yesid Duque Giraldo.