Peopleware i Code Complete
Escrit per Aaloy a 31 de August , 2005 a les 10:48 p.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
Programant amb la WEB
Escrit per Aaloy a 27 de August , 2005 a les 10:07 a.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
Oracle? No gràcies, estic servit!
Escrit per Aaloy a 25 de August , 2005 a les 12:30 a.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
Tornant a la feina
Escrit per Aaloy a 17 de August , 2005 a les 11:17 p.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
10 anys ja!
Escrit per Aaloy a 12 de August , 2005 a les 5:34 p.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
AjaxTags 1.0 alliberat
Escrit per Aaloy a 11 de August , 2005 a les 10:47 p.m.
- AjaxTags
- Dynamic HTML and XML: The XMLHttpRequest Object
- How to Develop Web Applications with Ajax, Pt. 1
- DWR - Easy AJAX for Java
- AjaxTags
- AJAX Matters - Asynchronous JavaScript and XML and XMLHTTP development information
- Asynchronous JavaScript Technology and XML (AJAX) With Java 2
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
Dissenyant una comptabilitat
Escrit per Aaloy a 08 de August , 2005 a les 6:59 p.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
Joel on Software
Escrit per Aaloy a 07 de August , 2005 a les 8:06 p.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
El regal de la comunicació
Escrit per Aaloy a 07 de August , 2005 a les 6:46 p.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
Wilt s’ha perdut
Escrit per Aaloy a 05 de August , 2005 a les 9:43 a.m.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
IoC
Escrit per Aaloy a 04 de August , 2005 a les 6:38 p.m.
Aquests dies estat llegint damunt un patró de disseny anomenat Inversió del Control o com l'ha rebatejat Martin Fowler injecció de dependència.
Fowler diu al seu article Inversion of Control Containers and the Dependency Injection pattern que el terme d'inversió de control està mal triat i que la moda dels bastiments de dir que implementen IoC és una obvietat.
Anant d'enllaç a enllat he trobat també altres articles interessants:
- A beginners guide to Dependency Injection
- Definició de IoC que fa Paul Hammant
- Definició de la Wikipèdia
De tot això n'he tret una idea del que és el patró i quan es pot fer servir. No he arribat encara a cap implementació concreta o com integrar-la amb els meus propis desenvolupaments, encara que pel que he estat llegint tant Hivemind com Spring són bons candidats, l'elecció d'un o l'altra dependria de l'arquitectura utilitzada en el projecte i de com es de bona la integració de cada bastiment amb aquesta tecnologia.
Tal com jo ho veig si feim projectes de codi obert trobarem que en molts de casos aquest patró no té massa avantatges damunt un patró Factory, un bon ús de les interfícies i una bona documentació. Té molt de sentit si el que volem és crear una aplicatiu que agafa components de tercers i/o volem crear una aplicació extensible mitjançant pluggins.
Així el concepte de IoC aniria un pas més enllà dels pluggins i de patró Factory, es tracta de que la decisió de com s'implementa una caractarística no la controli directament l'aplicació sinó que es controli en temps d'execució. Això és el que fa, per exemple, Hibernate quan et deixa triar el sistema de caché que vols fer servir tan sols canviant els paràmetres de configuració de l'xml. L'Hivemind o Spring pel que veig segueixen la línea de fer servir arxius de configuració en xml on s'enllacen els serveis i la seva implementació. El PicoContainer fa l'enllaç per codi i per mi perd un poc la gràcia i l'esperit del patró.
Amb les aplicacions que he estat fent darrerament se me n'acud un possible ús d'aqeust patró:
Suposem una aplicació típica on l'usuari s'ha d'autentificar per poden entrar. L'aplicació passa el nom de l'usuari, la clau i el sistema d'autentificació ens diu si l'usuari és vàlid i retorna un conjunt d'informació damunt dit usuari. Aquest sistema d'autentificació és un ferme cantidat a figurar en els arixus de un contenidor d'Injecció de dependència, ja que per exemple podem fer l'autentificació fent servir LDAP, una Base de Dades, consultant a un arxiu de text o bé en les etapes inicial de desenvolupament fent servir un objecte mock per a l'autentificació.
En el tema de l'autentificació existeix el risc que ens n'anodem que hem deixat codificat el sistema d'autentificació incorrecte per l'entorn de producció. Si tenim l'autentificació implementada com a servei bastaria canviar el mapeig del servei i l'aplicatiu estaria ja llest per funcionar.
Traducciones/Translations by apertium
0 comentaris, 0 trackbacks (URL)
