Diferència entre revisions de la pàgina «M3 - Programació estructurada / Continguts UF2: Disseny modular»

De wikiserver
Dreceres ràpides: navegació, cerca
(Descomposició funcional)
Línia 27: Línia 27:
  
 
==Reutilització de subproblemes resolts==
 
==Reutilització de subproblemes resolts==
 +
 +
:*La descomposició mitjançant disseny descendent permet reaprofitar la solució de subproblemes idèntics, o força semblants.
 +
 +
:*Qualsevol subproblema d’un nivell donat pot ser part de qualsevol subproblema d’un nivell superior. Per remarcar
 +
 +
[[Imatge:m3uf2_disseny_modular_2.png |600px|center| Disseny modular]]
 +
 +
:*En descompondre un problema, s'ha d'intentar fer-ho de manera que es forci l’aparició de subproblemes repetits, i així la seva resolució es pot reaprofitar en diversos llocs.
  
 
==Aplicació correcta del disseny descendent==
 
==Aplicació correcta del disseny descendent==

Revisió del 14:05, 8 març 2018

Descomposició funcional

  • L’objectiu serà resoldre el problema general com a una suma de subproblemes més petits.
  • La solució a cada subproblema s’anomena subrutina o subprograma, i a Java, mètode.
  • Permet la reutilització del codi, facilita la seva lectura i el seu manteniment.
  • Escriure codi més genèric facilita la seva reutilització.

Disseny descendent

  • El mètode del disseny descendent consisteix en descompondre el problema a resoldre en altres més senzills. A aquests se'ls aplica el mateix procediment fins arribar a problemes prou petits que podem resoldre directament.
  • Refinament de l’algorisme (stepwise refinement) és com es coneix aquest procediment de descomposició.
  • Representació en forma d'arbre:
- Cada node és un mòdul, o problema, o solució hipotètica.
- Cada subarbre depenent d'aquest node es fa servir per a la resolució d'aquest subproblema.
- El node del nivell més alt és el problema de partida.
- L’algorisme serà correcte si la solució que es dóna a cada nivell ho és.
- El programa es pot construir de sota a dalt creant primer procediments que resolguin els mòduls de detall que, un cop comprovats seran utilitzats per altres procediments més generals fins a arribar a la creació del programa.
Disseny modular

Reutilització de subproblemes resolts

  • La descomposició mitjançant disseny descendent permet reaprofitar la solució de subproblemes idèntics, o força semblants.
  • Qualsevol subproblema d’un nivell donat pot ser part de qualsevol subproblema d’un nivell superior. Per remarcar
Disseny modular
  • En descompondre un problema, s'ha d'intentar fer-ho de manera que es forci l’aparició de subproblemes repetits, i així la seva resolució es pot reaprofitar en diversos llocs.

Aplicació correcta del disseny descendent

Declaració de mètodes

Canvis en el mètode principal en declarar altres mètodes

Accessibilitat de variables dins una classe

Declaració d'un mètode amb un paràmetre

Declaració de mètodes amb múltiples paràmetres

Notes sobre com declarar i utilitzar els mètodes

Exemples