Category Archives: Design

Concurrent Unit Tests with Service Locator

My talk at Microsoft Summit created a nice discussion with some of the participants about writing isolated unit tests when using the Service Locator. It started from the part where I was showing how the AppBoot helps in dependencies management by … Continue reading

Posted in .NET, Design, Technical, Unit Testing | Tagged , , , , | Leave a comment

Crosscutting Concerns

The Crosscutting Concerns are the areas in which high-impact mistakes are most often made when designing an application. There are common causes that lead to this and there are common practices that can help to avoid such mistakes. In this post I … Continue reading

Posted in Design, Technical | Tagged , , , , | Leave a comment

DRY vs Coupling

While reviewing my previous post another great discussion, which may arise from paying attention to your references, came to my mind: Don’t Repeat Yourself (DRY) vs Coupling. Each time you add a new reference it means that you want to … Continue reading

Posted in .NET, Design, Technical | Tagged , , , , , , , | Leave a comment

Using ReSharper for Assembly References Diagrams

A few posts back I talked about how we can use the assembly references to enforce consistency and separation of concerns (here and here are the old posts). I argue there that if we derive from the architecture the assemblies of … Continue reading

Posted in .NET, Design, Technical | Tagged , , , , , , , | Leave a comment

Localization Concern

Localization (also known as internationalization) is one of the concerns that is most of the times overlooked when we design an application. We almost never find it through the requirements, and if we do or if we ask about it, … Continue reading

Posted in .NET, Design, Technical | Tagged , , , , , | Leave a comment

Dependency Inversion and Assemblies References

In my last posts I have talked about using assembly references to preserve critical design aspects. In Enforce Consistency with Assemblies References I talk about how we can use references to outline the allowed dependencies in code and how to … Continue reading

Posted in .NET, Design, Training | Tagged , , , , , | Leave a comment

Enforce Consistency with Assembly References

In this post I’ll describe some key aspects that I consider when designing the assemblies that build a system. When we structure our code into assemblies (generally named binaries, libraries or packages in other platforms than .NET) we are reasoning about three main … Continue reading

Posted in .NET, Design, Technical, Training | Tagged , , , | Leave a comment

Repository Implementations

In my previous post I have presented a way to separate your data access from the business logic, when a relational database is used. I have shown another implementation of the well-known Repository pattern. Since Martin Fowler described it in … Continue reading

Posted in .NET, Design, Technical | Tagged , , , , , , , , | Leave a comment

Separating Data Access Concern

In our days most of the applications that have a relational database as storage, use an ORM to access the data. The ORM (Entity Framework, Hibernate, etc.) does most of the data access implementation. Many of them have a modern … Continue reading

Posted in .NET, Design, Technical | Tagged , , , , , , , , , , | Leave a comment

Disposable Instances Series

In the past few weeks I have published a set of four posts that deal with disposable instances. These posts describe in detail a working implementation that automatically disposes all the instances that are no longer needed, in a deterministic … Continue reading

Posted in .NET, Design, Technical | Tagged , , , , | Leave a comment