Pyramid of Refactoring derived from Legacy Code cleaning

Clean code gradually and notice emerging Design Patterns like Interpreter, Fluent Builder, Factory Methods

4.42 (372 reviews)
Udemy
platform
English
language
Software Engineering
category
2,169
students
2 hours
content
Mar 2021
last update
$44.99
regular price

What you will learn

Design Patterns

Clean Code

Refactoring

SOLID Principles

Working with Legacy Code

Description

This is the first module of (planned) series called "Pyramid of Refactoring" dedicated to achieving Clean Code.

We use refactoring techniques and perform all the changes live. The student downloads the source code and performs all the changes together with the trainer - step by step. In this sample we make use of Interpreter Design Pattern as goal of our refactoring journey. The Interpreter Pattern is accompanied by two creational design patterns - Factory Method and Fluent Builder, which are also result of refactoring activities.

SOLID Principles will be explained in practice instead of teaching the sole theory.

The journey allows us practice code transformations like :

  • Replace Loop with Stream

  • Extract Delegate / Class

  • Extract Interface

  • Extract Parameter Object

  • Replace Method with Method Object

  • Extract Method / Variable

  • Move Method

  • Inline Method / Variable

Install IntelliJ IDE, Java and try it out. You will perform all the changes step by step with the trainer and learn refactoring transformations built into IntelliJ. Moreover after registering to this online workshop you will be informed about promotional prices of my other trainings which will allow you to continue with this subject at the lowest possible price.

Join a few hundreds of software developers whole spent these 2 hours and applied refactoring techniques to Clean Code in their daily work.

Content

Introduction

About the course and my teaching style

Refactoring Basics

Business meaning of refactoring
Pyramid of Refactoring - discovery journey
Pyramid of Refactoring - explained

Climbing up the Pyramid of Refactoring

Sources and Business Domain explained
First refactoring along the pyramid
Pyramid of Refactoring - Recap

Emerging Interpreter Design Pattern

Extract Delegate/Class - MaterialSpec
Extract Parameter Object - AndSpec

Completed Interpreter Design Pattern

Replace Method with Method Object - PlacementSpec
Not Spec - Avoid a queried placement
SOLID Principles help to extract Spec implementations
Generic AndSpec

Creational Design Patterns Support

Factory Methods hide direct usage of constructors
Fluent Builder supports AndSpec creation
Tests Refactoring with Fluent Builder support

Clean your code continuously

Make refactoring part of your daily activities
The most important slide to remember
Thank You!

Screenshots

Pyramid of Refactoring derived from Legacy Code cleaning - Screenshot_01Pyramid of Refactoring derived from Legacy Code cleaning - Screenshot_02Pyramid of Refactoring derived from Legacy Code cleaning - Screenshot_03Pyramid of Refactoring derived from Legacy Code cleaning - Screenshot_04

Reviews

Kaeman
November 1, 2023
Allot of good information in the presentation, and it is a great demo in how intellij could help you refactor easier. However, The lesson focuses more on the how to refactor in IntelliJ than it does on the general principle behind why the presenter is making the changes that they are.
Radulescu
October 7, 2023
This is a just glorious !!! Of course it does help if you already know or heard, about Martin Fowler , Mark Seeman, Uncle Bob. In his first book (written for Java - "Refactoring: Improving the Design of Existing Code") Martin Fowler explains the refactoring steps even more granular than here. But here you can see more modern examples of day by day code.
Didier
September 21, 2023
C'est une formation sur l'outil IntelliJ plutôt que sur le Refactoring or je ne dispose pas de cet outil donc décevant
Danilo
February 14, 2023
Sorry if I only gave you 3 stars. I certainly learned a few things, especially about IntelliJ, but I think this shouldn't have been the primary focus of the course. I felt like I was seeing a very fast live coding demo about how great IntelliJ is for refactoring. Too many "do this", "do this shortcut". I would have preferred something that focuses on the idea of ​​refactoring instead of the copy-paste solution. I hope you won't be offended by my comment. It's just my opinion.
Lubna
December 10, 2022
Very well explained with a real world scenario. Explained SOLID principles in a extremely SOLID & efficient way.
Bartosz
September 26, 2022
Great to see that instructor is directly speaking what shortcuts is he using when performing refactoring. Didn't know that there are such refactoring features in IDE. Really helpful to see that in real scenarios.
Saiman
August 28, 2022
Great learning Experience. Had a chance to visualize design patterns in play while you demonstrated things via code, which USP of this course. Really helpful. Cheers.
Rajat
May 8, 2022
Amazing course and journey!! Although you should be really familiar with SOLID and basic OOPs design principle. First follow along and do it yourself multiple times to reinforce this learning.
Sudhir
March 26, 2022
Amazing course, walks through all the steps of refactoring a existing project and also teaches intellij shortcuts :)
System
February 18, 2022
The content was highly well structured and understandable. The idea of refactoring pyramid was interesting, as I found myself stuck on how to apply design patterns when necessary. However, the English accent and pronounciation weren't very good, and it made it harder for me to understand the phrase correctly (which was at an acceptable level, thanks to the subtitle, though).
Rodrigo
January 29, 2022
As a software engineer with over 20 years of experience, I find this resource to be extremely helpful. I was intuitively doing many parts of this framework in order to optimize software architectures and legacy code, and it is really pleasant to welcome the knowledge of somebody who could really see beyond those patterns and find a common denominator among all kinds of refactorings. This framework is the mother of all refactorings. I would highly encourage anyone - especially the young professionals in the IT industry - to practice thoroughly everything that the trainer is proposing here. It will help you to become an amazing developer, that can build 'really modern' software - far beyond and much more than only learning the new syntax sugar from more recent languages.
Eric
November 21, 2021
he is not using dymmy code like Foo anf stuff , this is more real like situations, good for that , but I belive he should describe more precisely why he does what he does in every single step
Joana
August 30, 2021
It's been perfect! Very instructive and easy to follow. All the concepts and tricks are explained and repeated several times, so you assimilate them almost effortlessly. I recommend it!
March 13, 2021
I highly recommend taking this course on applying design patterns performing baby steps. All tests are always in green state and the refactorings are done using intellij. Great course
Pedro
March 5, 2021
Great course, learned about intellij shortcuts to refactor and design patterns, but with simple examples, could have more examples... The teacher explain really well!

Charts

Price

Pyramid of Refactoring derived from Legacy Code cleaning - Price chart

Rating

Pyramid of Refactoring derived from Legacy Code cleaning - Ratings chart

Enrollment distribution

Pyramid of Refactoring derived from Legacy Code cleaning - Distribution chart

Related Topics

2733264
udemy ID
1/2/2020
course created date
9/22/2020
course indexed date
Bot
course submited by