Paradigma de la Programación a Objetos
¿Qué conceptos identificó
usted en esta unidad que lo habilitan para desarrollar aplicativos en C#
teniendo en cuenta los conceptos de Programación Orientada Objetos teniendo en
cuenta la documentación respectiva?
Es un paradigma de programación que
usa objetos y sus interacciones, para diseñar aplicaciones y programas
informáticos. Está basado en varias técnicas, incluyendo herencia, abstracción,
polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década
de los años 1990. En la actualidad, existe variedad de lenguajes de
programación que soportan la orientación a objetos.
Los objetos son entidades que combinan estado (atributo),
comportamiento (método) e identidad
El estado
Está compuesto
de datos, será uno o varios atributos a los que se habrán asignado unos
valores concretos (datos).
El comportamiento
está definido
por los procedimientos o métodos con que puede operar dicho objeto, es decir,
qué operaciones se pueden realizar con él.
La identidad
Es una
propiedad de un objeto que lo diferencia del resto, dicho con otras palabras,
es su identificador (concepto análogo al de identificador de una variable o una
constante). Un objeto contiene toda la información que permite definirlo e
identificarlo frente a otros objetos pertenecientes a otras clases e incluso
frente a objetos de una misma clase, al poder tener valores bien diferenciados
en sus atributos.
La programación orientada a objetos es una forma de programar
que trata de encontrar una solución a estos problemas. Introduce nuevos
conceptos, que superan y amplían conceptos antiguos ya conocidos. Entre ellos
destacan los siguientes:
Clase
Definiciones de
las propiedades y comportamiento de un tipo de objeto concreto. La instanciación
es la lectura de estas definiciones y la creación de un objeto a partir de
ellas.
Herencia
Es la facilidad
mediante la cual la clase D hereda en ella cada uno de los atributos y
operaciones de C, como si esos atributos y operaciones hubiesen sido definidos
por la misma D. Por lo tanto, puede usar los mismos métodos y variables
publicas declaradas en C. Los componentes registrados como "privados"
(prívate) también se heredan, pero como no pertenecen a la clase, se mantienen
escondidos al programador y sólo pueden ser accedidos a través de otros métodos
públicos. Esto es así para mantener hegemónico el ideal de OOP.
Objeto
Entidad
provista de un conjunto de propiedades o atributos (datos) y de comportamiento
o funcionalidad (métodos) los mismos que consecuentemente reaccionan a eventos.
Se corresponde con los objetos reales del mundo que nos rodea, o a objetos
internos del sistema (del programa). Es una instancia a una clase.
Método
Algoritmo
asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena
tras la recepción de un "mensaje". Desde el punto de vista del
comportamiento, es lo que el objeto puede hacer. Un método puede producir un
cambio en las propiedades del objeto, o la generación de un "evento"
con un nuevo mensaje para otro objeto del sistema.
Evento
Es un suceso en
el sistema (tal como una interacción del usuario con la máquina, o un mensaje
enviado por un objeto). El sistema maneja el evento enviando el mensaje
adecuado al objeto pertinente. También se puede definir como evento, a la
reacción que puede desencadenar un objeto, es decir la acción que genera.
Mensaje
Una
comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos
con ciertos parámetros asociados al evento que lo generó.
Propiedad o atributo
Contenedor de
un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los
datos visibles desde fuera del objeto y esto se define como sus características
predeterminadas, y cuyo valor puede ser alterado por la ejecución de algún
método.
Estado interno
Es una variable
que se declara privada, que puede ser únicamente accedida y alterada por un
método del objeto, y que se utiliza para indicar distintas situaciones posibles
para el objeto (o clase de objetos). No es visible al programador que maneja
una instancia de la clase.
Componentes de un objeto
Atributos,
identidad, relaciones y métodos.
Identificación de un objeto
Un objeto se
representa por medio de una tabla o entidad que esté compuesta por sus
atributos y funciones correspondientes.
En comparación
con un lenguaje imperativo, una "variable", no es más que un
contenedor interno del atributo del objeto o de un estado interno, así como la
"función" es un procedimiento interno del método del objeto.
Existe un acuerdo acerca de qué
características contempla la "orientación a objetos", las características
siguientes son las más importantes:
Abstracción
Denota las
características esenciales de un objeto, donde se capturan sus comportamientos.
Cada objeto en el sistema sirve como modelo de un "agente" abstracto
que puede realizar trabajo, informar y cambiar su estado, y
"comunicarse" con otros objetos en el sistema sin revelar cómo se
implementan estas características.
Encapsulamiento
Significa
reunir a todos los elementos que pueden considerarse pertenecientes a una misma
entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de
los componentes del sistema. Algunos autores confunden este concepto con el
principio de ocultación, principalmente porque se suelen emplear conjuntamente.
Principio de ocultación
El aislamiento
protege a las propiedades de un objeto contra su modificación por quien no
tenga derecho a acceder a ellas, solamente los propios métodos internos del
objeto pueden acceder a su estado. Esto asegura que otros objetos no pueden
cambiar el estado interno de un objeto de maneras inesperadas, eliminando
efectos secundarios e interacciones inesperadas.
Polimorfismo
Comportamientos
diferentes, asociados a objetos distintos, pueden compartir el mismo nombre, al
llamarlos por ese nombre se utilizará el comportamiento correspondiente al
objeto que se esté usando.
Herencia
Las clases no
están aisladas, sino que se relacionan entre sí, formando una jerarquía de
clasificación. Los objetos heredan las propiedades y el comportamiento de todas
las clases a las que pertenecen. La herencia organiza y facilita el
polimorfismo y el encapsulamiento permitiendo a los objetos ser definidos y
creados como tipos especializados de objetos preexistentes.
Recolección de basura
La recolección de basura o garbage collector es la técnica por la cual el entorno de objetos se encarga de destruir automáticamente, y por tanto desvincular la memoria asociada, los objetos que hayan quedado sin ninguna referencia a ellos
REGLAS PARA CODIFICACIONEN C#
Fuentes
https://www.danysoft.com/estaticos/free/csharp2.pdf
https://www.ecured.cu/Programaci%C3%B3n_Orientada_a_Objetos

Comentarios
Publicar un comentario