Good development practices in C#
Poziom:
Intermediate
Kategoria:
C#
SOLID
Opis szkolenia
The “Good Development Practices in C#” training is designed to give you a deep understanding, not just a superficial understanding of the principles of good programming.
The purpose of the training is not only to present the rules, but also to explain their meaning, origin and problems solved.
Participants will be guided through the process of understanding the fundamental principles of good programming in C#, starting from SOLID principles, through the proper use of design patterns, to lesser-known application architectures such as Onion Architecture, Railway Orientated Programming and Dataflow. Training emphasizes critical thinking and understanding why certain practices are important.
Key Issues:
- SOLID principles: In-depth understanding of SOLID principles and their application in practice.
- Design Patterns: Discussion of design patterns, their proper use, and potential pitfalls.
- Lesser Known Application Architectures: Introduction to lesser-known but effective application architectures.
- Critical Thinking in Programming: Learning an analytical approach to the application of principles and patterns in programming.
- Practical Exercises and Examples: Exercises and case studies to help participants understand and apply the science in practice.
Program szkolenia
Start, welcome etc (15 min)
SOLID (380 mins)
Much is said about SOLID, but hardly anyone explains why or how. As a result, we often see blindly following completely understandable rules. We spend a lot of time on this topic. Because it is the absolute basis for further good coding practices. Not to apply religiously, but to understand and apply accordingly.
Topics covered:
- discussion of S, O I and D
- refactor of an existing application
Design Patterns (585 min)
It is with the adoption of patterns that you first ignore them, then use them everywhere, and then only where there is a need. Our goal is to move quickly through the first and second phases and stop at the third. We will show you what each of the patterns is for. How to achieve it using the simple SOLID rules and when it works and when it may not necessarily.
Topics covered:
- Factory and Abstract factory
- Decorator
- Rule engine
- Object Pool
- Chain of responsibility
- Object Builder
- Observable
- State Machine
- Singleton
Lesser known application architectures (180 min)
This module focuses on less common but equally important application architectures that offer unique approaches to software design and structuring. We will pay special attention to two architectures: Hexagonal and Railway Oriented Programming.
The participants of the module will gain knowledge about these architectures, their advantages, applications and ways of implementation in programming practice.
Main Issues:
Hexagonal architecture:
- Understand the basic concept and benefits of Hexagonal Architecture.
- Analysis of ways to separate business logic from input/output mechanisms.
- Practical examples of the application of Hexagonal Architecture in software design.
Railway Oriented Programming:
- Introduction to Railway Oriented Programming as a method of managing errors and logic flow in applications.
- Learning to construct “tracks” to handle successes and errors in functional programming.
- Examples and best practices of applying Railway Oriented Programming to real-world projects.
Conclusion, survey, etc (15 min)
Opinie
In general, training very cool, while walking I thought it would be one of those boring ones in which I do the same thing for the hundredth time, but nevertheless I was wrong.
Kompetencja, zaangażowanie, dobry dobór i przygotowanie ćwiczeń praktycznych.
Professionally conducted training, showing not only how to do but why/how not to do.
Znakomity poziom wiedzy z danego obszaru, oparty na praktyce. Przykłady z życia pokazują, że trener stosował w projektach to o czym naucza.
I have never met a more enthusiastic coach and anyone in our industry before. Keep it up:)
I wonder, that's what I expected. A little dry theory, a lot of practical exercises is an excellent idea.
- Odbiorcy:Senior Developer, Developer, Junior Developer
- Poziom:Intermediate
- Kategoria:
C#
SOLID
- Forma:10% knowledge, 90% practical workshop
- Czas trwania:2.5 days
- Miejsce szkolenia: