Structural Design Pattern: Decorator

Reading Time: 4 minutes In the field of software engineering, having codebases that are flexible and easily expandable is crucial. As software becomes more complex, the difficulty of incorporating new features and functionalities increases, all without making the code overly complex or disrupting its existing architecture. This article delves into the Decorator Design Pattern, a robust technique for improving …

Structural Design Pattern: Composite

Reading Time: 4 minutes In software design, developers frequently encounter challenges when working with hierarchical structures or collections of objects that adhere to a common interface. Handling such structures efficiently and uniformly can be daunting. This is where the Composite pattern steps in, providing a solution that simplifies the management of complex object structures. The Need for the Composite …

Revolutionize Angular Apps with Signals: guide with Practical Examples

Reading Time: 7 minutes If you are familiar with Angular development, then you are likely aware of the latest addition to the framework known as Signals. Signals are a new reactive primitive that allows Angular to track changes to its model. In comparison to RxJS, signals offer a simpler and more performant solution that promises to bring several benefits. …

azure-authentication-cloud-function

Authenticate Azure Function to Azure Storage Account using Managed Identity or application service principal

Reading Time: 7 minutes Azure Functions and Azure Storage Account are two of the most popular services offered by Microsoft Azure. Azure Functions is a serverless computing service that allows you to run event-driven code without having to manage any infrastructure. On the other hand, Azure Storage Account is a cloud-based storage solution that offers a wide range of …

XUnit testing

Strongly typed xUnit theory test data with TheoryData

Reading Time: 5 minutes TheoryData class In xUnit, test methods can be decorated with attributes like [Fact] or [Theory]. When a test method is decorated with the [Theory] attribute, it means that the method is not testing a single case but instead testing a general rule that should hold true for multiple sets of data. TheoryData is a class …

scrum master

How I prepared for the Professional Scrum Master Certification

Reading Time: 3 minutes The PSM I (Professional Scrum Master I) exam is a certification offered by Scrum.org to individuals who wish to demonstrate their understanding and knowledge of the Scrum framework and its principles. The exam is designed for individuals who are responsible for facilitating and coaching teams in the use of Scrum, including Scrum Masters, project managers, …

Comparing Hot and Cold observables

Reading Time: 5 minutes An observable is a pattern in programming that allows us to subscribe to a stream of data, such as a stream of mouse clicks or a stream of API responses. There are two main types of observables: hot observables and cold observables. Difference between hot and cold observables A hot observable is an observable that …

Control the RuleSet executions with FluentValidation in .NET6

Reading Time: 9 minutes FluentValidation is an open-source library for .NET that provides a fluent API for building validation rules for objects. It allows developers to express the rules for validating an object in a clear and readable way, making it easy to understand and maintain. In this article, we will explore FluentValidation and how it can be used …

Build a command line application in .NET 6 with System.CommandLine

Reading Time: 6 minutes Purpose of Command Line programs Command-line applications, or CLIs, can be a convenient and powerful way to perform simple tasks quickly and efficiently. Some reasons why it might be interesting to develop a command-line application include: CLIs can be faster to use than graphical user interface (GUI) applications, as the user does not need to …