SmartEnum
software-design-patterns
SmartEnum | software-design-patterns | |
---|---|---|
7 | 1 | |
2,055 | 95 | |
- | - | |
8.1 | 0.0 | |
5 days ago | about 2 years ago | |
C# | C# | |
MIT License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
SmartEnum
- Java or C# for backed
-
Is there a "right" way to consolidate constants in C#/.NET?
I agree SmartEnum is my go-to for this
-
best practice to create a method with params of limited values
If we knew more about these methods and what kinds of parameters they take we could maybe make some suggestions. There are some patterns like smart enum that are sometimes just the thing.
-
Smart Enums In C# Like Java
In C# I am not able to add constructors, properties, and methods. although there is a library to do this https://github.com/Ardalis/SmartEnum but wouldn't be nice if we have this feature built-in to C#.
- What is it about C# that you do NOT like compared to other languages?
-
Displaying Enums with custom value
You can use the SmartEnum library.
- C# records can be used to emulate Java's fancy enums.
software-design-patterns
-
The Mediator Pattern
I will not discuss the whole process of setting up the project to use these libraries because the source code is for this example is available. For the purpose of this article we will only discuss the Mediator pattern implementation.
What are some alternatives?
Enums.NET - Enums.NET is a high-performance type-safe .NET enum utility library
MediatR - Simple, unambitious mediator implementation in .NET
SmartAnnotations - A library for .NET that uses source generators to automatically generate data annotations for your models.
Result - A result abstraction that can be mapped to HTTP response codes if needed.
csharplang - The official repo for the design of the C# programming language
DesignPatternsLibrary - A comprehensive design patterns library implemented in C#, which covers various design patterns from the most commonly used ones to the lesser-known ones. Get familiar with and learn design patterns through moderately realistic examples.
awesome-dotnet-tips - Curated list of awesome tips and tricks, resources, videos and articles in .net, software architecture, microservice and cloud-native
NodaTime - A better date and time API for .NET
AutoMapper - A convention-based object-object mapper in .NET.
UnitsNet - Makes life working with units of measurement just a little bit better.
ApiEndpoints - A project for supporting API Endpoints in ASP.NET Core web applications.