Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Alumno (A) :: Coranguez Rodriguez Fatima

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 6

ALUMNO (A):

CORANGUEZ RODRIGUEZ
PROGRAMACION ORIENTEDA A
INSTITUTO TECNOLÓGICO
SUPERIOR DE TEZIUTLÁN

FATIMA
Número de Control:
22TE0517*
Licenciatura en:
SISTEMAS COMPUTACIONALES
OBJETOS

DOCENTE:
RICARDO ALBERTO CERRANO HERRERA

Teziutlán, Puebla; (3 DE FEBRERO 2023)

“La Juventud de hoy, Tecnología del Mañana”


¿Qué es un paradigma?
Un paradigma es cualquier modelo, patrón o ejemplo a seguir en una situación particular.

En términos generales, un paradigma es una teoría o un conjunto de teorías que sirven


como modelo para resolver un problema.

Existen diferentes tipos de paradigmas en diferentes campos del conocimiento, como la filosofía, la
educación, la lingüística, la ciencia o la programación.

Paradigma de programación

Un paradigma de programación es la forma en que un programador o grupo de programadores


proporciona una solución a uno o más problemas bien definidos. En otras palabras, es un método o
estilo de programación. Estos paradigmas difieren entre sí en la forma en que se manejan los
elementos involucrados en un problema y los pasos necesarios para llegar a una solución. Cada
ejemplo también está relacionado con un lenguaje de programación. Un ejemplo de un paradigma
de programación es el modelo imperativo, donde el software se basa en comandos directos. Los
lenguajes de programación como FORTRAN, Pascal o C++ operan dentro de este paradigma.

¿Qué es el paradigma orientado a objetos?


Un paradigma de programación es un enfoque o estilo de programación de
software. Hay diferentes formas de desarrollar un lenguaje de programación y diferentes formas de
trabajar para obtener los resultados que necesita un programador. Es un método sistemático para
resolver problemas computacionales que se aplica a todos los niveles de programación.

Un lenguaje de programación acepta uno o más paradigmas según los


tipos de instrucciones que permite ejecutar, por ejemplo, Python o JavaScript pertenecen a
múltiples paradigmas.

Paradigma imperativo

Un programa consiste en una serie de instrucciones o un conjunto de declaraciones, como si el


programador hubiera dado órdenes específicas. Un desarrollador describe en código
paso a paso todas las acciones que realizará su programa. Algunos lenguajes: Pascal, COBOL,
FORTRAN,C,C++, etc.

Otras formas de ajustarse al paradigma de programación imperativa son:

Programación estructurada: la programación estructurada es una forma de programación


imperativa en la que el flujo de control se determina mediante bucles anidados, condicionales
y subrutinas en lugar de GOTO. Programación procedimental: este paradigma de programación se
basa en un número muy pequeño de declaraciones repetidas, encapsulándolas todas en un
procedimiento o función y llamándolo cada vez que necesita ejecutarse.
Programación Modular: Consiste en dividir un programa en módulos o subrutinas para facilitar su
manejo y lectura. Es una evolución de la programación estructurada destinada a resolver
problemas de programación más complejos.

Paradigma declarativo

Este paradigma no requiere definir un algoritmo porque describe un problema en lugar


de buscar una solución. Este paradigma utiliza principios de razonamiento lógico para responder
a la pregunta o tema en discusión. Este paradigma se divide en dos tipos:

Programación Lógica: Prólogo
Programación funcional: Lisp, Scala, Java, Kotlin

Programación orientada a objetos

En este modelo de paradigma, el modelo de objetos se construye para representar los elementos


(objetos) del problema a resolver, los cuales tienen propiedades y funciones. Esto le
permite separar los diversos componentes del programa, lo que simplifica su creación, depuración
y mejora adicional. La programación orientada a objetos reduce los errores y promueve la
reutilización del código. Es un tipo especial de programación que se acerca un poco a
cómo expresamos las cosas en la vida real. Podemos definir un objeto como una estructura
abstracta que describe más fielmente un posible objeto del mundo real y cómo se
relaciona con otras partes del mundo circundante a través de interfaces.

Ejemplos de lenguajes de programación orientados a objetos son Java, Python o


C#. La programación orientada a objetos utiliza varios conceptos tales como:

Abstracción de datos
Encapsulación
Evento
Módulo
Herencia
Polimorfismo

Programación reactiva

Este paradigma se basa en escuchar  eventos generados por cambios de contenido o flujo de
datos, donde los objetos responden a los valores que reciben de esos cambios. Las bibliotecas  más
famosas  son Project Reactor y RxJava. React/Angular usa RxJ para aprovechar la programación
reactiva.
¿Qué es una clase?

Una clase define un grupo o conjunto de datos, en los objetos se denominan atributos que
definen el objeto, y un conjunto de comportamientos, funciones o métodos del objeto que
lo manipulan y relacionan entre sí.

Las propiedades y los métodos son miembros de una clase.

Las clases se utilizan para representar entidades o conceptos. Por ejemplo, usuario,
noticia, categoría, juego, imagen, mensaje, etc. pueden representar casi cualquier
sustantivo, cualquier dispositivo.

Cada clase tiene un conjunto de variables y funciones, o mejor dicho, atributos y


métodos, métodos que operan sobre los atributos de la clase.Ejemplo:

Principios /características de la programación orientada a objetos.

La programación orientada a objetos, OOP, es un paradigma de programación que tiene como


objetivo simular el mundo real utilizando objetos. Este paradigma permite a los programadores
construir aplicaciones basadas en abstracciones de alto nivel (llamadas objetos) que están cerca de
la realidad humana. Este tipo de lenguaje proporciona funciones importantes que pueden mejorar
la calidad del software, como herencia, polimorfismo, encapsulación, cohesión y abstracción.

Abstracción:

Representa las propiedades esenciales de un objeto que capturan su comportamiento. Cada objeto
en el sistema actúa como un modelo para 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 funciones. Los procesos, funciones o métodos también se pueden abstraer y,
cuando se abstraen, se necesitan varias técnicas para ampliar la abstracción. El proceso de
abstracción le permite seleccionar características relevantes juntas e identificar comportamientos
comunes para definir nuevos tipos de entidades en el mundo real. La abstracción es clave en el
proceso de análisis y diseño orientado a objetos porque nos permite crear un conjunto de clases
que nos permiten modelar la realidad o el problema que queremos resolver.

Encapsulación:

Significa combinar todos los elementos que pueden considerarse pertenecientes a la misma entidad
en el mismo nivel de abstracción. Esto permite una mayor coherencia entre los componentes del
sistema. Algunos autores confunden este concepto con el principio de ocultamiento, principalmente
porque a menudo se usan juntos.

Modularidad:

La modularidad es una característica que permite dividir una aplicación en partes más pequeñas
(llamadas módulos), cada parte debe ser lo más independiente posible de la aplicación en sí y de
otras partes. Estos módulos se pueden compilar de forma independiente, pero tienen enlaces a
otros módulos. Al igual que la encapsulación, los lenguajes admiten la modularidad de varias
formas.

Principio oculto:

Cada objeto está aislado del mundo exterior y es un módulo natural. Cada tipo de objeto expone
una interfaz a otros objetos que especifica cómo interactúan con los objetos de la clase. El
aislamiento protege las propiedades de un objeto para que no puedan ser modificadas por personas
que no tienen acceso a ellas; solo los métodos internos del propio objeto pueden acceder a su
estado. Esto garantiza que otros objetos no puedan cambiar accidentalmente el estado interno del
objeto, evitando efectos secundarios e interacciones no deseadas. Algunos lenguajes relajan esto al
permitir el acceso directo a los datos internos de un objeto de manera controlada y limitando el
nivel de abstracción. Toda la aplicación se reduce a una colección de objetos o un rompecabezas.

Polimorfismo:

Diferentes comportamientos asociados con diferentes objetos pueden ser iguales; cuando se llama
por este nombre, se usa el comportamiento apropiado para el objeto que se está usando. En otras
palabras, las referencias y las colecciones de objetos pueden contener diferentes tipos de objetos, y
la operación que llama a la referencia producirá el comportamiento correcto para el tipo real del
objeto al que se hace referencia. Si esto sucede en tiempo de ejecución, la última función se
denomina asignación diferida o asignación dinámica. Algunos lenguajes proporcionan funciones
de polimorfismo más estáticas ("tiempo de compilación"), como plantillas de C++ y sobrecarga de
operadores.
Herencia:

Las clases no están aisladas sino que están relacionadas entre sí y forman una jerarquía
taxonómica. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que
pertenecen. La herencia organiza y facilita el polimorfismo y la encapsulación para que los objetos
puedan definirse y crearse como objetos preexistentes de un tipo particular. Pueden compartir (y
expandir) su comportamiento sin repetirlo. Esto normalmente se hace agrupando objetos en clases
y agrupando esos objetos en árboles o cuadrículas que representan comportamientos comunes. Si
un objeto hereda de más de una clase, se dice que tiene herencia múltiple.

Garbage Collection:

La recolección de basura o recolector de basura es una técnica mediante la cual el entorno de los
objetos se encarga de destruir automáticamente y desasignar así la memoria asociada que queda
sin ninguna referencia. Esto significa que los programadores no tienen que preocuparse por
asignar o liberar memoria, porque el entorno la asignará cuando se cree un nuevo objeto y la
desasignará cuando nadie la esté usando. En la mayoría de los lenguajes híbridos que se han
ampliado para soportar el paradigma de la programación orientada a objetos, como C++ u Object
Pascal, esta función no existe y la memoria debe liberarse explícitamente.

CONCLUSION

Se puede decir que los lenguajes de programación orientados a objetos tratan los programas como
colecciones de objetos que se ayudan mutuamente a realizar operaciones, comprender las
entidades que contienen datos como objetos y hacer que los programas sean más fáciles de
escribir, mantener y reutilizar. .

Por otro lado, la POO (Programación Orientada a Objetos) es un gran avance en el campo de la
programación, una de sus principales ventajas es un aumento significativo en la productividad del
programador y robustez del programa, personalmente los lenguajes orientados a objetos.

También podría gustarte