Refactoring : The basics and more
What you'll learn
- What is refactoring?
- When you should refactor your code?
- Refactoring techniques used to write more maintainable code
- Refactoring to make the code more understandable
- What is technical debt and how to fix it?
- No prior programming experience needed
Even the most well-planned code can develop anti-patterns over the years. These make the codebase difficult to maintain. Small changes can break major features.
Here are the outcomes that an attendee can take from the course:
1. What is refactoring?
2. What is technical debt?
3. What is and how can we write clean code?
4. How to refactor your code?
5. Groups of techniques used when refactoring.
In our day to day delivery of software, there is often a tension between delivering features as fast as possible, and applying ideal principles of clean code. Redesigning our code and making it look perfect is not something we can do everyday.
This course teaches us how we can apply principles of clean code pragmatically without affecting delivery. It helps us learn how to iteratively make our code easier to understand, maintain, and extend.
Everybody knows that they should refactor their code to make sure that it is as easy as possible to maintain and understand.
Refactoring by editing text introduces errors, and there can be long times when the code won't even compile, because a refactoring is part way through. Using automated refactoring tools means that your code will compile all the time, allowing tests to be run after every change.
Attention! This course does not have actual code implementations in it, but theoretical knowledge on how you can refactor your code with techniques that work in any programming language.
Who this course is for:
- Developers wanting to explore and understand the refactoring process
Hi, I am Alex! I am an experienced software engineer, with a bachelor's degree in computer science, that currently makes a living developing software. My passion for writing code pushed me to work with companies from multiple countries as an employee. I also have some freelance experience, being fluent in various programming languages.