DotNetCurry Logo
Yacoub Massad is a software developer that works mainly with Microsoft technologies. Currently, he works at Zeva International where he uses C#, .NET, and other technologies to create eDiscovery solutions. He is interested in learning and writing about software design principles that aim at creating maintainable software. You can view his blog posts at criticalsoftwareblog.com

Yacoub Massad has written 9 articles, which have been read 205959 times.
Abstract: This article discusses problems and solutions related to resource management in complex C# applications. It also discusses automatic resource management that exists in the .NET framework.
Abstract: This article describes how we can use Generics in C# to make our software more resilient to data-related changes, thereby improving its maintainability.
Abstract: This article discusses the treatment of data in large C# software applications. More specifically, it discusses runtime data encapsulation, behavior-only encapsulation, and treatment of state.
Abstract: This article describes how to do unit and integration testing using the Composition Root as the source of Systems Under Test (SUTs).
Abstract: C# examples on how we can use the Text Template Transformation Toolkit (T4) to create aspects.
Abstract: Aspect Oriented Programming (AOP) in C# using SOLID principles. We will discuss challenges posed by context-independence in SOLID code bases, and provide a solution for them.
Abstract: This article demonstrates how Object Composition with SOLID helps an application evolve.
Abstract: Using Pure DI and the single level of abstraction per function rule to create Composition Roots that we can understand and navigate easily
Abstract: This article presents a perspective of Liskov Substitution Principle (LSP) and presents an argument against some interpretation and practices of LSP that some people have/follow.