Quick C# Basics Refresher- Design Guidelines
- Conventions
- Class Design guidelines
- Exception Design guidelines
- Common Design Patterns
Robust Classes- Properties
- Functions
- Delegates
- Events
- .Net Core and C# 9+ features
Generics- Generic Classes
- Generic Functions
- Survey of Generics in the .Net Library
Lambda Expressions & LINQ- Using lambdas to generate a delegate
- Introduction to Language Integrated Query (LINQ)
Reflection & Metadata- Reflections basics
- Attributes
Resources & Globalization- Basics of Threading
- Creating Threads
- Coordinating threads
- Overview of the task parallel library
Basics of Entity Framework- DbContext
- Code first vs Db first
- Entities
- Mapping
, 1. Overview of New Features
¢ Apply modern C# enhancements to streamline code development and maintainability.
¢ Type specifiers
¢ Raw Literals
¢ Top-level statements
¢ Records
¢ Global Usings
¢ Tuples
¢ Deconstruction
2. Design Guidelines
¢ Develop code that adheres to industry-standard design guidelines for clarity, sustainability, and effectiveness.
¢ Conventions
¢ Class Design guidelines
¢ Exception Design guidelines
¢ Common Design Patterns
3. Robust Classes
¢ Construct robust classes with advanced property and function implementations for more dynamic and responsive code.
¢ Properties
¢ Functions
¢ Delegates
¢ Events
4. Unit Testing with XUnit
¢ Implement test-driven development with XUnit to ensure the creation of reliable, bug-resistant applications.
¢ Utilizing Test Driven Development (TDD)
¢ Survey of Unit test frameworks
¢ Using XUnit
¢ Mocking with Moq
5. Exceptions
¢ Master sophisticated exception handling techniques for more robust error management in applications.
¢ Syntax
¢ Exceptions vs Return code
¢ Testing for exceptions
6. Generics
¢ Utilize generics to create flexible, reusable, and type-safe code structures, reducing redundancy.
¢ Generic Classes
¢ Generic Functions
¢ Understanding invariance
¢ Survey of Generics in the .Net Library
7. Delegates
¢ Leverage delegates to design more versatile and modular code with methods as first-class objects.
¢ Methods as objects
¢ Generics and Delegates
¢ Delegates in the library
8. Events
¢ Efficiently manage and respond to application events through proper event definition and handling.
¢ Defining
¢ Register/Deregister
9. Lambda Expressions
¢ Streamline event handling and delegate instantiation using concise lambda expressions.
¢ Using lambdas to generate a delegate
10. Inheritance
¢ Implement inheritance and polymorphism to create extensible and maintainable object-oriented designs.
¢ Syntax
¢ Override/Virtual
¢ Abstract
¢ Polymorphism
11. SOLID Principles & Design Patterns
¢ Apply SOLID principles and design patterns to diagnose and refactor code smells for improved software architecture.
¢ Design Smells
¢ Single Responsibility
¢ Open/Close
¢ Liskov's Substitution Principle
¢ Using SOLID to correct design smells
12. Interfaces
¢ Design and utilize interfaces effectively to decouple code and enhance modularity and testability.
¢ Interface motivations and SOLID
¢ Interface Segregation
¢ Dependency Inversion
¢ Default interface methods
13. LInQ
¢ Manipulate collections efficiently using LINQ queries and extension methods for more expressive data operations.
¢ Extension Methods
¢ Linq API
¢ Linq Query
14. Attributes, Reflection & Metadata
¢ Employ reflection and attributes to manipulate metadata and enhance the functionality of code at runtime.
¢ Reflections basics
¢ Attributes
15. Resources & Globalization
¢ Manage application resources and adapt to different cultures and languages for global software compatibility.
¢ Resource Bundles
¢ Specifying Language/Region
16. Threads, Tasks, Async/Await
¢ Develop efficient, responsive, and scalable applications using advanced concurrency and asynchronous programming techniques.
¢ Creating Threads
¢ Coordinating threads
¢ Tasks
¢ Async/Await
17. Basics of Entity Framework
¢ Leverage Entity Framework for streamlined data access and manipulation, utilizing code-first or database-first approaches effectively.
¢ DbContext
¢ Code first vs Db first
¢ Entities
¢ Mapping
18. Survey of GUI Applications
¢ Explore and understand the latest trends in GUI application development to create intuitive and modern user experiences.
¢ MAUI
¢ Blazor
¢ Asp.Net