Posts

Showing posts from June, 2005

Legge di Demeter

Ecco uno degli aspetti della OOP che ancora mi mancano. Ho provato a dare una letta ad un articolo, poi ne ho discusso sul gruppo di extremeprogramming-it , in cui mi hanno dato un altro articolo da leggere. Il problema è l'applicazione di questi aspetti al Metamapper in PAFlow. Il Metamapper è il nostro modo per rendere esplicite le dipendenze che derivano dall'Acquisition di PAFlow. In pratica, il Metamapper esporta tutti i metodi necessari a raggiungere tutti i tool (come odio questo termine!) di cui è fatto PAFlow. E' quindi molto naturale in PAFlow vedere del codice del tipo: charge = self.getMembershipManager().getLoggedCharge() dove getMembershipManager() mi ritorna appunto il tool MembershipManager. Ora mi leggo anche il nuovo articolo, e poi vedo cosa fare.

Automazione della creazione dei Mock

Finalmente sono riuscito a mettere la creazione di buona parte dei Mock di PAFlow direttamente all'interno del nostro TestCase base, invece di dover esplicitamente importare i metodi e crearli. In pratica, prima si doveva fare: from Mock import manage_addMockCounter class MyTest(ZopeTestCase.ZopeTestCase): def testOne(self): manage_addMockCounter(self.app) ... ora invece: class MyTest(AbstractLocalizedTestCase): def testOne(self): self._addMockCounter() Il passo successivo è fare in modo che nessun test debba più dipendere da Mock, in modo che poi posso spostare AbstractLocalizedTestCase direttamente dentro Mock.

Una a zero per il Vaticano

Ecco una visione dell'ultimo referendum svoltosi in Italia, visto dall'altra parte della Manica.

Nuova struttura delle notifiche

Finalmente sono riuscito a fare il commit delle notifiche, dopo averci lavorato, di qui e di lì, più di una settimana. Non sono sicuro di non aver introdotto qualche bug, anche se tutti i test di unità girano... tuttavia, continuare a tenermelo in pancia era il modo migliore per evitare che questi bug uscissero fuori. Ora, se avessi anche il tempo di scrivere come sono strutturate le nuove cose...