- 24 hours
- The course deals with the concept of refactoring as a way of preventing software rot. The course describes various smells indicating that a code needs refactoring, explains which refactoring types best suit specific situations, and describes the work of refactoring in detail through analyzing concrete real-life cases.
Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure. It is a disciplined way to clean up code that minimizes the chances of introducing bugs. In essence when you refactor you are improving the design of the code after it has been written.
The need for refactoring is provided by the so-called "smells" that may signal problems inside the code. Smells may be found at the level of one class or between classes.
Refactoring principles apply to any object-oriented programming language.
- Target Audience:
- Senior developers
- After completing the course, students will:
- Gain all the necessary information about refactoring principles
- Know how to properly explain the need for refactoring
- Be able to implement refactoring activities in the development process
- Know how to identify code smells
- Be able to make informed decisions on refactoring a problem code
- Have the ability to perform refactoring step-by-step
- Know how to use automated code refactoring tools
- Methods organization
- Shift in responsibilities between objects
- Data organization
- Simplifying conditional expressions
- Making method calls simpler
- Using inheritance
- Recommended Reading:
- Martin Fowler. Refactoring: Improving the Design of Existing Code
- Joshua Kerievsky. Refactoring to Patterns
- Scott W. Ambler Refactoring Databases : Evolutionary Database Design
- Wake, William C.. Refactoring Workbook.
- Feathers, Michael C. Working Effectively with Legacy Code.
Invoices for the course will be issued in local currency. All fees above can change according to training location and delivery mode and are subject to change while scheduling. For individual participants the price is as displayed. For legal entities VAT is added to the displayed price.
Courses you may be interested in:
|Location||Price (plus VAT)|