Cercar en aquest blog

20/5/10

Diseny SOLID, el bon disseny

El dia 13 de Maig d'enguany (2010), es va celebrar a Barcelona el XXV 'Foro' d'arquitectura de Microsoft, promogut per Microsoft Ibérica. Bàsicament es va centrar en les novetats del Framework 4.0 i Visual Studio 2010, extenen-se en demostracions basades el l'aplicatiu desenvolupat com a 'demo' d'una arquitectura orientada al domini. Si entrem a la Web d'arquitectura http://msdn.microsoft.com/es-es/architecture/default.aspx podem accedir als continguts i el codi.

Tot el que és va dir va ser molt interesant, jo no hi vaig assitir però en tinc bons 'inputs' i m'he llegit les presentacions. De totes les lectures, i sense desmereixen cap, he trobat mol interesant la que parla de desacoplament entre capes de la arquitectura, presentada per Hadi Hariri, i els principis del disseny SOLID.

El dissney SOLID diu bàsicament cinc coses a tenir en compte, si volem un resultat en la implementació, sòlid, robust, escalable i flexible.

Single Responsibility Principle: Una classe ha de ser dissenyada i implementada per tenir una sola responsabilitat. Si una classe és la responsable d'autenticar usuaris, només té la responsabilitat d'autenticar usuaris.

Open Closed Principle: Una classe ha d'estar oberta a extensions, però mai a canvis. Per entendre-ho, a una classe li podem afegir nous metodes, podem especificar-la més (herència), però mai canviar la seva signatura pública, propietats, metodes i funcions, inicials.

Liskov Substitution Principle: Si tenim una classe subtipus d'una altre, en l¡ aplicació les classes pare han de poder ser substituides per les classes fill sense cap problema, i alteracions de l'aplicació.

Interface Segregation Principle: Mai s'ha d'obligar als clients a implementar interfaces que no requereixen.

Dependency Inversion Principle: Intentar aplicar desacoplament entre capes diferents de la arquitectura.


En el següent enllaç podeu trobar totes les presentacions en format pdf.