Skip to content

Lesson Material

Kaisinel edited this page Jul 4, 2019 · 10 revisions

Lesson Material

Lesson 1: Easy to Read and Understand Code

What is clean code? What is easy to read and understand code and how to write it? Tips and tricks to make code more readable, conventions.

Slides

VOD

Lesson 2: Functions

What is a simple function? How to make them short, how to split them? How to reduce amount of parameters needed for a function. What does it mean for a function to do one thing?

Slides

VOD

Lesson 3: OOP

Common misconceptions about OOP. What is OOP really? OOP is POO. The four pillars. What to prefer and what to avoid.

Slides

VOD

Lesson 4: SOLID

Analysis of each letter of SOLID. Why do we need SOLID?

Slides

VOD

Lesson 5: Objects and Data Structures

What is DTO? What is POCO? Access modifiers in detail. Law of Demeter. Data validation.

Slides

[VOD]

Lesson 6: Design Rules

What are common general rules for having a clean code and clean design? What are boundaries and how do we build them? How to use code which you don't yet have. How to treat and expose your own code? How to make code flexible, yet simple? Testability as measure for good code. Common design patterns and the things they have in common. Remembering the best practices.

Slides

VOD

Lesson 7: Code Smells

What indicates that our code has some "rotten" or "rotting" places? What is a code smell? 22 code smells: symptoms and their treatment. Anaemic vs Rich domain models.

Slides P1 Slides P2

VOD P1.1 VOD P1.2

Lesson 8: Testing

Why do we need to test our code? How does it help? What types of testing are there? How to automate testing. Unit tests, integration tests, functional tests, UI tests. Black box and White box testing. What should and shouldn't be tested.

Slides

VOD