This repository contains C# scripts.
- Object Oriented Programming
- Inheritance, Interfaces, Aggregation, Composition
- Encapsulation, Cohesion, Coupling
- Collections, Data Types, Memory Allocation, Generics, Structs, Enums, Records, Tuples
- Value Objects, ValueOf
- Data Structures, Algorithms, Problems, Recursion, Deconstruction
- Delegates, Action, Func, Predicate
- Covariance, Contravariance
- Anonymous Types, Anonymous Methods
- Lambda Expressions, Regular Expressions, Method Changing
- Currying, Closures, Monades, Boxing and Unboxing, Dynamics
- Copy Constructor, Static Constructor, Object Initializers
- Explicit Operator Conversion, Implicit Operator Conversion, Operator Overload
- Exceptions, GC, MemoryCache, Redis, Memoization
- Extension Methods, Expression Bodied Members
- Functional Programming, Reactive Programming, LINQ, PLINQ
- OneOf, LanguageExt, CSharpFunctionalExtensions, FluentResults, ErrorOr
- Get rid of primitive obsession, Make nulls explicit with the Maybe type
- Design Patterns
- SOLID Principles
- DB, Repository, Unit of Work, Transactions, CQRS
- Entity Framework Core, Entity Framework Core Plus, Dapper, Nhibernate
- SqlServer, Sqlite, MongoDB
- Test, MSTest, xUnit, NUnit, FluentAssertions, Moq, NSubstitute, InMemoryDatabase, Bogus, Autofixture, AutoMocker
- Dependency Injection, IoC, Simple Injector, Ninject
- Logging, NLong, Serilog
- Configuration, Options
- Mapping, DTO, AutoMapper, Mapster
- FluentValidation, Humanizer, GuardClauses, Throw, CommunityToolkit
- Polly, Ben.Demystifier, MediatR, SmartEnum
- Web Scrapping, ScrapySharp, PuppeteerSharp
- HtmlAgilityPack, Flurl.Http
- Web Service, SOAP, REST, GraphQL, RestSharp
- Twilio
- Telegram, Telegram.Bot
- Python, IronPython
- Encryption, Hashids
- Files, protobuf-net
- Threads, Parallel Programming, Asynchronous Calls
- Reflection, Fasterflect
- Refactoring, Performance
- MVVM
- Email, SMTP, POP3, IMAP, System.Net.Mail, OpenPop.NET, MailKit, FluentEmail
- XML, LINQ to XML, XmlDocument, XmlReader, XPath
- JSON, System.Text.Json, Newtonsoft.Json
- Excel, ExcelDataReader, SpreadsheetLight
- CSV, CsvHelper
- PDF, QR, itext7, iTextSharp, QRCoder
- Zip, System.IO.Compression, SharpZipLib
- USB, System.Management
- CliWrap
- Dump, ObjectDumper, YamlDotNet
- New in C# 7, 8, 9, 10 and 11
- Attributes, Data Anotations
- Parameters, in, out, ref, params
- Culture, Globalization, Localization
- State Machine
- Stopwatch, MethodTimer
- Other
The MIT License (MIT). Please see License for more information.