Course description
Is your source code difficult to read? Do you spend a lot of time trying to understand what the developer wanted to do with a particular code fragment?
If you find yourself in these types of situations, this training will be useful for you. You’ll learn about code smells, why and where they appear, and what techniques are used to remove them. We will start from simple problems in a single function and end with problems of communication between classes. We will also discuss what should and what should not be done to make your code easy to read.
Upcoming start dates
Who should attend?
Prerequisites
- General basic knowledge of programming
- Basic knowledge of script languages
- Understanding code logic flows
Training content
1. Refactoring: Introduction. The notion of refactoring, the purpose of refactoring. Test-driven development [2h theory, 0h practice]
2. Code smells. Overview. Definition of code smell. Good design principles. Code smells in tests, and smells in databases (overview). Smells in architecture, smells in personnel management [2.5h theory, 1.5h practice]
3. Common problems in code. Organizing data. Fields. Data arrays. References and values. Code fields. Simplifying conditional expression. Simplifying method calls. Dealing with generalization. Composing methods. [2.5h theory, 1.5h practice]
4. Smells inside class. Easily discovered problems. Names. Excessive complexity. Duplication. Conditional logic [2.5h theory, 1.5h practice]
5. Moving feature between objects. Single responsibility principle. Cohesion. The Law of Demeter. Moving methods/fields. Extract class. Inline class. Hiding delegates. Remove the middle man [2.5h theory, 1.5h practice]
6. Problems in communication between classes. Data. Inheritance. Responsibility. Adopting changes. Library classes [2.5h theory, 1.5h practice]
7. Refactoring to modern C++ [2h theory, 0h practice]
Certification / Credits
Objectives
- Understand code smells
- Discover best practices for improving existing code readability
- Identify problems in C++ program code
- Improve readability of C++ source code
Quick stats about Luxoft Training Center?
More than 200 training courses
Conducted over 1,500 training sessions
Customized training solutions for business
Contact this provider
Luxoft Training Center
Luxoft Training Center — an essential part of the global technology leader, Luxoft, a DXC Technology Company. We play a pivotal role in propelling B2B businesses forward by delivering customized training solutions. Emphasizing the significance of learning and employee development,...