Code Refactoring for C++ | | Software Development
Code Refactoring for C++
Duration
24 hours
Location
Online
Language
English
Code
DEV-006_C++
€ 550 *
Training for 7-8 or more people? Customize trainings for your specific needs
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.

After completing the course, a certificate
is issued on the Luxoft Training form
is issued on the Luxoft Training form
Objectives
- Understand code smells
- Discover best practices for improving existing code readability
- Identify problems in C++ program code
- Improve readability of C++ source code
Target Audience
- C++ developers with 1 to 2 years of experience
Prerequisites
- General basic knowledge of programming
- Basic knowledge of script languages
- Understanding code logic flows
Roadmap
-
Refactoring
- Introduction
- Notion of refactoring
- Purpose of refactoring
- Test-driven development
-
Code smells
- Overview
- Definition of code smell
- Good design principles
- Code smells in tests
- Smells in databases
- Smells in architecture
- Smells in personnel management
-
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
-
Smells inside class
- Easily discovered problems
- Names
- Excessive complexity
- Duplication
- Conditional logic
-
Moving feature between objects
- Single responsibility principle
- Cohesion
- The Law of Demeter
- Moving methods/fields
- Extract class
- Inline class
- Hiding delegates
- Remove middle man
-
Problems in communication between classes
- Data
- Inheritance
- Responsibility
- Adopting changes
- Library classes
Schedule and prices
View:
Register for the next course
Registering in advance ensures you have priority. We will notify you when we schedule the next course on this topic
Courses you may be interested in
Programming with C++
C++ is particularly challenging because it is a multi-paradigm, general purpose language, which strives to be efficient, not easy to learn. But our training will help you learn how to develop software with this flexible and popular programming language.
Design Patterns for Java (GoF)
Our course covers 23 basic patterns that are generally considered to be the foundation for all other patterns. During the course participants will have the opportunity to practice these patterns with the help of case studies and exercises.
Online:
17.07.2023 - 21.07.2023
Python® Basics
This Python® training course leads the students from the basics of writing and running Python® scripts to more advanced features such as file operations, regular expressions, error handling, system and network programming and the use of the extensive functionality of Python® modules.