Course description

Length : 2 hours of video + estimated 2 hours of self practice

This is the second module of series called "Pyramid of Refactoring" dedicated to achieving Clean Code.

The goal of the course is to disentangle the codebase from a set of deeply nested conditional if/else statements. It is a very common case - and if it is left for a long time - then it leads to a very complex legacy code after subsequent code extensions.

We use refactoring techniques and perform all the changes live. The partititants download the source code and performs all the changes together with the trainer - step by step. In this sample we make use of Chain of Responsibility Design Pattern as goal of our refactoring journey.

The course ends up with Homework, where the participants can experience the difference between implementing additional requirements within Clean Code and within Legacy Code. This is the difference between skipping and applying Preparatory Refactoring.

The journey into Chain of Responsibility allows the attendees to practice code transformations like :

- Merge If Statements
- Merge Nested-If Statements
- Extract Methods
- Replace Temp with Query
- Move Methods
- Inline Methods
- Extract Class / Extract Delegate
- Extract Interface
- Rename Methods & Variables

Curriculum

15 lessons 2 h 0 m

1. Why this couse?

5 m

2. Refactoring facilitates earning money

5 m

4. Business domain explained

6 m

5. Java sources explained

11 m

7. First methods made cohesive

10 m

8. Third method extracted and made cohesive

11 m

9. Fourth of the core methods extracted

13 m

10. Fourth method made generic and reusable

10 m

11. Composed Methods

6 m

12. Single Responsibility Principle Classes

10 m

15. Homework

2 m
Promotion
Pyramid of Refactoring (Java) - Clean Code into Chain of Responsibility
49PLN 39PLN
Buy now
In price:
  • 15 lessons
  • 2 h 0 m contents on request
  • Unlimited access
  • Mobile access

We use cookies for proper site working and statistics. You can set your cookies policy in your web browser settings. Please read our Privacy policy to find out more.