#Design Pattern

12 writings

F# 8: Unwrapping New Features and Nostalgic Connections

F# 8 introduces game-changing features that streamline functional programming syntax, particularly the removal of `fun` in lambdas and improved nested record handling. Discover how these updates modernize the language while echoing patterns from F#'s past libraries.

4 min read 773 words

Shades of F#

This thoughtful post examines F# from multiple angles, contrasting functional programming style with imperative approaches. The author shares personal experiences, recommended learning resources, and insights on how to approach F# development based on your programming background.

6 min read 1,177 words

Functional Command Pattern

This post explores the command pattern through functional programming, comparing traditional C# implementation with F# functional approach. You'll discover how treating functions as first-class citizens makes command pattern code more concise and elegant, with insights into CQRS and Event Sourcing.

1 min read 175 words

Functional Strategy Pattern

The strategy pattern is one of the most widely used patterns in .NET, especially in LINQ. This post explores how to implement it in both C# and F#, demonstrating why functional programming syntax is better suited for passing strategies as functions rather than class-based approaches.

2 min read 359 words

Functional Singleton Pattern

Explore the Singleton Pattern, one of the most commonly used design patterns for ensuring only one instance of a class exists. This post covers practical implementations in C# and F#, real-world use cases like database connections, and discusses its relevance in functional programming and modern development.

2 min read 316 words

Functional Factory Pattern

Explore how the Factory Pattern translates from Object-Oriented C# to functional F# programming. This post demonstrates that functional programming provides simpler, more elegant solutions for abstracting object creation while maintaining the same behavioral results.

2 min read 264 words

Demystifying Design Pattern in a Functional Way

This post demystifies design patterns by examining them through functional programming principles rather than traditional OOP. The author explores the fundamental differences between Turing's (OOP) and Church's (FP) approaches to problem-solving, arguing that functional programming offers superior code readability and expressiveness when resources allow.

3 min read 580 words

Something Never Changed!!! Guiding Principles to Software Development

This article explores enduring software development principles that have remained unchanged since 2007, proving that good coding practices transcend technology trends. The author examines why these timeless guidelines are often overlooked and provides practical insights for applying them in modern .NET development.

8 min read 1,527 words

JavaScript Diary I

JavaScript Diary I explores essential JavaScript concepts for developers learning the language from scratch. This post covers the pitfalls of global variables and introduces self-executing anonymous functions as a solution to keep your code private and organized.

4 min read 683 words

Moving away from OOP

This post explores the journey from basic Object-Oriented Programming to advanced design patterns and software architecture. The author shares personal experiences of how proper OOP implementation and design patterns transformed 14,000 lines of problematic code into 700 lines of elegant, working solutions.

2 min read 290 words

Map your self using ORM

This post explores the evolution from traditional connection and command classes to modern ORM frameworks in .NET development. The author discusses common database connectivity challenges and explains why ORMs like NHibernate are essential for building efficient applications.

6 min read 1,169 words

SOA Service Oriented Architecture Beginning of New Era

Service-Oriented Architecture (SOA) is revolutionizing how applications are built and accessed across multiple devices and platforms. This post explains how SOA separates user interface from business logic and enables true interoperability between different technologies like .NET and Java, making development more efficient.

3 min read 462 words