Course info
Oct 8, 2020

Design Patterns are like individual tools you can add to your toolkit as a software developer.

In this course, C# Design Patterns: Rules Pattern, you’ll learn to build and use a simple rules engine.

First, you’ll explore examples of problems and code smells that may benefit from applying rules.
Next, you’ll discover how to build a simple rules engine.
Finally, you’ll learn how to apply the engine in real application code and extend the application with new functionality.

When you’re finished with this course, you’ll have the skills and knowledge of the rules engine pattern needed to apply it in your own applications.

Course FAQ
Course FAQ
Who uses C#?

C# is often used by Windows Desktop app creators or game creators.

What are some of the benefits of the rules engine design pattern?

Benefits include: declarative programming, logic and data separation, speed and scalability, centralization of knowledge, and tool integration.

What are java rules engines?

Java's Rule Engines are used to externalize the business or application logic. A rule engine is commonly viewed as a sophisticated interpreter of it-then statements.

What prerequisites are needed?

Prerequisites for this course are a basic understanding of C#

What is C# used for?

C# can be used to build and create almost anything, but C# is particularly strong when building Windows desktop applications and games.

About the author
About the author

Steve Smith (@ardalis) is an entrepreneur and software developer with a passion for building quality software as effectively as possible.

More from the author
Kanban: Getting Started
2h 16m
Jan 22, 2021
C# Design Patterns: Memento
Sep 2, 2020
More courses by Steve Smith
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi, everyone. My name is Steve Smith, aka ardalis, and welcome to my course, C# Design Patterns: Rules Engine. I am an experienced .NET developer, architect, and trainer. My private team workshops and Pluralsight courses have helped thousands of developers and teams write better code faster. You'll find me online as ardalis on Twitter, GitHub, YouTube, and more. I love design patterns. They're like individual tools you can add to your tool kit is a software developer. They don't take long to introduce, but they can take a lot of practice to master. In this course, we are going to explore the Rules Engine design pattern, a great pattern for breaking up complex, conditional logic into better partitioned and more maintainable code. Some of the major topics that we're going to cover include what kinds of problems do rules engines solve, what software design principles should apply to this pattern, how can you apply the Rules Engine pattern to a specific real‑world application, and what other design patterns are similar to this one? By the end of this course, you'll be able to recognize situations where adding a simple Rules Engine makes sense and be able to apply it with confidence. I hope you'll join me in learning about the Rules Engine design pattern for C#, and I hope you'll continue exploring other design patterns as well here, on Pluralsight.