working in progress: SharePoint 2010, Visual Studio 2010, ASP.NET, WPF, Scrum, Patterns, TDD, Refactorin To Pattern

Model View Presenter

Secondo Wikipedia questo pattern nasce nei primi anni ‘90, da una joint venture fra Apple, IBM e HP. Altre fonti identificano Mike Potel come ideatore di questo pattern. L’idea alla base era quella di dividere ulteriormente i layer, creando delle m


Model View Controller le origini

C’è un pò (tanta) confusione intorno ai pattern di separation of concerns. Con i seguenti post provo a chiarire e spero di non aprire dei dibattiti infiniti. Il primo pattern che andrò a spulciare è quello che potremmo definire: classic MVC C


Duplicated Code: Form template method

Continuiamo con lo smell: Duplicated CodeProblema:Abbiamo 2 o più metodi che eseguono lo stesso codice anche se con una sequenza logica diversa.Un esempio di logica errata:  Code Snippet...


Long Method: Replace Conditional Dispatcher with Command

Continuiamo con lo smell: Long Method    Problema:Logiche condizionali vengono usate per le richieste di dispaccio e per eseguire azioni.Un esempio di logica errata:Code Snippet...


Primitive Obsession: Replace State-Altering Conditionals with State

Continuiamo con lo smell: Primitive Obsession  Problema:Gestire le condizioni dello stato di un oggetto è complicato e complesso.Un esempio di logica errata:while (command != 'e...


Conditional Complexity: Move Embellishment to Decorator

Continuiamo con lo smell: Conditional ComplexityProblema:Collegandoci al post precedente: Conditional Complexity: Replace Conditional Logic with Strategy continuiamo con un’altra possibile soluzioneUn esempio di ...


Conditional Complexity: Replace Conditional Logic with Strategy

Continuiamo con lo smell: Conditional ComplexityProblema:Esiste un metodo di controllo con una logica condizionale composta da diverse varianti i quali valori si conosceranno solamente a runtime. La stessa logica di control...


Indecent Conditional Logic: Replace Conditional Logic with Stategy and Nullable Object

Continuiamo con lo smell: Indecent Conditional Logic Questo smell l’ho creato io questa mattina. Nel senso che ho trovato del codice che non mi piaceva e ho voluto trovare una soluzione.Problema:Il clie...


Duplicated Code: Introduce Polymorphic Creation with Factory Method

Continuiamo con lo smell: Duplicated Code Problema:Due o più classi, gerarchicamente implementate (ovvero avendo la stessa classe base), contengono lo stesso metodo.Solitamente questo smell nasce dal copi...


Indecent Exposure: Encapsulate Classes with Factory

Continuiamo con lo smell: Indecent Exposure Problema:Il client istanzia direttamente un oggetto che risiede in una libreria. Motivazione:Durante la realizzazione di una libreria, si potrebbe cader...


 1 di 2   1  »  Last »