Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

Curso de Java SE Orientado a Objetos

Curso de Java SE Orientado a Objetos

Anahí Salgado Díaz de la Vega

Anahí Salgado Díaz de la Vega

Modularidad

4/38
Recursos

La Modularidad consiste en dividir nuestro programa en diferentes módulos de forma que puedan unirse o separarse sin romperse entre ellos o perder alguna funcionalidad.

La Modularidad en Programación Orientada a Objetos nos ayuda a:

  • Reutilizar código.
  • Evitar colapsos.
  • Que nuestro código sea mantenible.
  • Mejorar la legibilidad.
  • Resolución rápida de problemas.

Aportes 70

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

👇 APUNTES DE LA CLASE 😊

Que bonita es la teoría de tener el código mantenible, para los que queráis aprender realmente a hacer buen código, llevad a rajatabla los consejos de @anncode escribir mucho código, haced que vuestro código se haga un completo infierno (aunque no lo queráis eventualmente pasara).
Y luego recomiendo leer estos 3 libros.
Condigo Limpio (Robert C. Martin)
Arquitectura Limpia (Robert C. Martin)
El limpiador de Código (Robert C. Martin)

Los 2 primeros van de código (java) y el 3 sobre la actitud de un desarrollador profesional.

La modularidad se aplica en diferentes entornos por ejemplo:

  • Backend: POO

  • Frontend: Componentes(Angular, ReacJs, VieJs)

  • Diseño: UI/UX(Atomic-design)
    En fin lo que se busca es la reaulización, facil mantenieminto, optimización de tiempo, etc.

Profesora Anahí, hace falta su curso de programación funcional. El que existe está muy bueno pero hace falta el suyo para continuar con su línea de enseñanza.

Les comparto mis apuntes de esta Clase:

Modularidad

Es un concepto proveniente del diseño industrial y la arquitectura. Consiste en dividir un sistema en varios módulos independientes que unidos conforman todo el sistema completo.

Ventajas de la modularidad:

  • Reutilizar código.
  • Se evitan colapsos.
  • Código más mantenible.
  • Mejor legibilidad en el código
  • Rápida resolución de problemas

Mientras en las programación estructurada se tiene un sólo archivo muy grande en el que esta toda la lógica del sistema y en el que un error puede detener la ejecución de todo el programa, en la programación orientada a objetos las diferentes funciones de un sistema se dividen en módulos independientes, por lo que a la hora de solucionar bugs sólo hay que ubicar el módulo que esta fallando y repararlo sin tener que afectar al resto del código; y si se quieren añadir más funcionalidades al proyecto solo hay que crear nuevos módulos e integrarlos dentro del sistema.

Las Clases dentro de la modularidad

Las Clases juegan un papel fundamental dentro de la modularidad, pues permiten dividir el software en diferentes partes o módulos/Clases y a su vez separar dichas Clases en archivos diferentes.



Principio «Divide y Vencerás»

Modularidad: Reutilizar, Evitar colapsos, Mantenible, Legible, Resolución rápida de problemas. 😃

  • La modularidad en Java se abarca en dos niveles principalmente:
  1. Nivel básico. ( se vera en este curso )
  2. Nivel más avanzado para sistemas muchos más grandes.
  • La modularidad consiste en dividir nuestro programa en diferentes módulos de forma que puedan unirse o separarse sin romperse entre ellos o perder alguna funcionalidadLa
  • Modularidad en Programación Orientada a Objetos nos ayuda a:
  1. Reutilizar código.
  2. Evitar colapsos.
  3. Que nuestro código sea mantenible.
  4. Mejorar la legibilidad.
  5. Resolución rápida de problemas.

Yo por naturaleza en otros lenguajes separaba todo el codigo en diferentes archivos y trataba de ponerlos lo mas generico posible para reutilizarlos. Ahora comprendo que es modularidad y es la mejor forma de evitar repetir codigo y colapsos de las aplicaciones.

Cuales serian las clases y modulos que identifican en esta foto? ![](https://static.platzi.com/media/user_upload/image-7d66bc48-8b2d-4704-827a-57e045462e13.jpg)

Les comparto una lectura sobre modularidad y componentes

https://www6.uniovi.es/usr/cesar/Uned/EDA/Apuntes/TAD_apUM_01.pdf

Modularidad
Simplemente basado en la división de bloques como un lego.

La programación sin la modularidad me la imagino así:

muchas gracias x la explicacion

De las mejores ventajas de la POO!

Al modularizar nuestro codigo, estaremos pensando en nuestro yo del futuro, haciendo modularidad y otras tecnicas de programación como: clean code y otros principios solid.

Siguiendo con el ejemplo del sofá modular, si manchamos una parte de un sofá que no es modular hay que retirarlo todo para limpiarlo y nos quedamos sin sofá (sufrimos un colapso), si manchamos una parte de un sofá modular solo tenemos que retirar esa parte manteniendo nuestro sofá (evitando el colapso).

En estas primeros 4 clases me ayudaron mucho mis notas del Curso de Programación Orientada a Objetos. Es un excelente repaso 😄

La modularidad es una de las principales características de la Programación Orientada a Objetos.

DIVIDE Y VENCERÁS

MODULARIDAD

- Subdividir un sistema en varios elementos o componentes
- Nos permite:
    ~ Reutilizar código
    ~ Evitar colapsos (Porque solo deja de funcionar una parte, no toda la aplicación)
    ~ Mantenible
    ~ Legibilidad
    ~ Resolución rápida de problemas

📦 La modularidad permite que tu solución sea escalable y mantenible.

Este ejemplo visual es muy útil

Genial!! Me encantaron estas explicaciones!

ah ok no sabia que se llamaba modularidad eso que ya hacia. gracias anahi

hasta el momento se hablado mucho de la moduralidad esta es ensecial para la poo por todas son excelentes y notables características pero las clases son algo esencial algo que nos daremos cuenta en java solo podemos tener una clase en un archivo dividiremos nuestro codigo por archivos y cada uno en clases sin mas empecemos
Como diria Steve Jobs... Haganlo tan simple que parezca estupido :)
![](https://static.platzi.com/media/user_upload/image-3e432ef1-b6bd-43bf-8220-0cf0aec1878f.jpg)
Hola, comparto mis apuntes de esta clase: ![](https://static.platzi.com/media/user_upload/%E2%98%95%EF%B8%8F%20Curso%20De%20Java%20SE%20orientada%20A%20Objetos-40-09635ceb-2e27-4785-8e6f-1e0edaeb6df6.jpg) ¡Saludos!

La modularidad se aplica en diferentes entornos por ejemplo:

Backend: POO

Frontend: Componentes(Angular, ReacJs, VieJs)

Diseño: UI/UX(Atomic-design)
En fin lo que se busca es la reaulización, facil mantenieminto, optimización de tiempo, etc.

Los beneficios de la modularidad en Java incluyen:

Reutilización de código: Los módulos permiten separar la funcionalidad en unidades cohesivas y reutilizables, lo que facilita la reutilización del código en diferentes proyectos.

Encapsulación y ocultamiento: Los módulos permiten encapsular y ocultar la implementación interna de un componente, exponiendo solo las interfaces y elementos necesarios para su uso. Esto promueve una mejor organización y reduce la dependencia directa entre los módulos.

Mejora de la mantenibilidad: Al dividir un programa en módulos más pequeños y enfocados, se facilita la identificación y solución de problemas o errores, lo que a su vez mejora la mantenibilidad del código.

Gestión de dependencias: Los módulos pueden declarar las dependencias que tienen con otros módulos, lo que ayuda a administrar y controlar las dependencias entre diferentes componentes del programa. Esto permite una mejor gestión de la complejidad y evita problemas de compatibilidad entre versiones.

Modularidad: Subdividir un sistema en varios componentes.

Me encanta ese juego de palabras de Anahí, como rima clase con clase jaja

wow

el viejo y confiable ejemplo de los LEGO

  • Las clases van a ser un elemento clave para manejar modularidad porque en vez de reorganizar el programa o el archivo en muchas clases al final sigue siendo toda la responsabilidad en un mismo archivo. Lo que se va a hacer ahora es delegar la responsabilidad en diferentes archivos y cada archivo vamos a decir que es un módulo y cada módulo o cada archivo será una clase. Y para esto la clase nos va a permitir dividir el programa en diferentes clases o en diferentes módulos o en diferentes partes y lo vamos a estar separando en archivos.
  • Cada clase idealmente en Java va a tener su propio archivo pero en realidad existen otros tipos de clases que se van a ver posteriormente que son clases anidadas que estas también pueden vivir dentro del mismo archivo pero estos en general son excepciones y en realidad no es tan común.
  • La modularidad viene precisamente del diseño modular

Muy buena explicación!

Excelente explicación

Modularidad

Es la posibilidad de subdividir un sistema en varios componentes.

Un módulo puede acoplarse a otros módulos. Funcionan conjuntamente, pero si se descompone uno, no quiere decir que se dañe todo el equipo.

Me recuerda a los muebles de IKEA

muchas gracias…

super genial!

1:49 Me robaron el sofa!!!

<h3>Principios de Modularidad:</h3>

Subdividir un sistema en varios elementos o componentes nos permite:

  • ~ Reutilización de código
  • ~ Escalabilidad
  • ~ Evitar colapsos (Porque solo deja de funcionar una parte, no toda la aplicación)
  • ~ Mantenible
  • ~ Legibilidad
  • ~ Resolución rápida de problemas

Esto nos permite que cuando tengamos un paquete de clases, sean independientes de su paquete para su funcionamiento autónomo, y así mejorar el mantenimiento del código, ya que cada paquete tiene su responsabilidad.

Aquí nos ayudan las Clases:

Las clases serán un elemento clave para crear modularidad, al reorganizar todo el código en clases distintas, al final toda la responsabilidad y clases quedan en un mismo archivo.

En cambio, lo que se recomienda es:

Delegar la responsabilidad por archivo, separando cada clase en un archivo respectivo, y a este conjunto lo llamaremos módulo.

superanimado para aprender y ser un master con la modularidad.

buen ejemplo de explicación de muebles

Mudalaridad es dividir en módulos un sistema grande, esto nos permite reutilizar código, evitar colapsos, mantenibilidad, legibilidad, resolución rápida de problemas.

Un código modular y una estructura de directorios bien gestionada es la mejor práctica.

Excelente explicación

excelente

La modularidad es algo tan esencial en nuestras vidas, algo tan simple como el ejemplo de los sofas.

Tienes razón instructora Anahí, son bastantes los beneficios que nos da la modularidad como para dejar de usar y es que fragmentar el código en varias partes permiten una manipulación más eficiente y con la característica de los IDE de permitir viajar al lugar de una función con control + clic izquierdo se nos facilita todavía más el trabajo.

En el curso de C# Me parece también se habal de esto y vaya que es útil, mi codigo se ve incluso mas bonito desde dicha clase 😄

Excelente clase de la modularidad, esto nos permite que cuando tengamos un paquete de clases, sean independientes de usar paquete para su funcionamiento propio, y así dar una mejora al momento de hacer el mantenimiento del código, ya que cada paquete tiene su responsabilidad

😃 buena clase

Bueno, por lo menos comprendí al fin el concepto de modularidad, aún que ya lo aplicaba en otros lenguajes pero sin conocer como tal el concepto, interesante la verdad.

Modularidad:
1°nivel: Básico
2° nivel: Avanzado para sistemas grandes

Interesante!

Genial, aunque usaba modularidad sin darme cuenta, sin embargo que genial es conceptualizarlo, gracias!

La modularidad es la base de la programación orientada a objetos :0

😃

la modularidad es lo mejor

Modularidad

La Modularidad en Java se divide en dos niveles, en este curso se abarca el primer nivel, el más básico. El segundo nivel es mucho más avanzado para programas más grandes y complejos.

La Modularidad consiste en sub-dividir un sistema en varios elementos o componentes para formar el sistema por completo. La modularidad más avanzada se podría definir como un sistema formado por más sistemas pequeños.


La Modularidad viene del diseño, que se usa en el diseño industrial, arquitectura, etc.

Este es uno de los ejemplos más claros de Modularidad:

Ya que es un sillón al que se le pueden añadir más asientos, se le pueden añadir más módulos para que se adapte a las necesidades del usuario.

La modularidad nos va a permitir:

  • Reutilizar: Permite reutilizar código.
  • Evitar colapsos: Si algo deja de funcionar solo deja de funcionar el modulo donde sucedió el error.
  • Mantenible: Se pueden añadir o quitar módulos sin necesidad de rehacer todo el sistema
  • Legibilidad: Al estar separado en módulos es mucho más fácil de entender el código.
  • Resolución rápida de problemas

Las clases van a ser un elemento clave para manejar Modularidad:

  • Modularidad
  • Divide el programa en diferentes partes o módulos/clases
  • Separar las clases en archivos

La modularidad es muy indispensable en nuestros programas.

Excelente analogía para poder explicar la modularidad.