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
Transcripci贸n

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 52

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Modularidad
Lo mejor para tener un codigo muy mantenible y extensible, comprender la modularidad. No solo en java.

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.

馃憞 APUNTES DE LA CLASE 馃槉

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. 馃槂



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.

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

Les comparto una lectura sobre modularidad y componentes

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

La programaci贸n sin la modularidad me la imagino as铆:

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.