Refactoring to Clean Code
With samples in C# and Java



Clean code and refactoring have emerged as an essential guideline and technique for modern software development. Clean code, as the name implies, gives programmers a comprehensive set of guidelines on to how to write a code that is easy to understand, test, and maintain. Refactoring describes a catalogue of techniques and mechanisms that enable programmers to transform existing ugly codebases to a cleaner state. Both clean code and refactoring emerged in agile environment, and are considered the primary tools that allow agile teams to be more responsive to change while producing high quality products. Yet, both can be used outside an agile environment to enhance the quality and maintainability of software products.

This 3 day course is structured as an intense set of lectures and workshops that enable attendees to immediately apply the topics covered. Attendees will watch their mentors live as they transform ugly codebases into clean code using both; the refactoring techniques and the clean code guidelines. Attendees will then get their chance in applying what they have seen in similar situations.

This is a BYOD (Bring Your Own Device) course. Each attendee is expected to bring along a portable computer with a suitable Java or C# IDE installed and operational. The mentors will contact the attendees before the start of the course to ensure proper installation and operation of the environment.

Topics to be covered

Target Audience

The main audience are programmers of all seniority levels. Juniors and seasoned programmer, team leaders, and architects will be able to find clear value in this course as long as they are not familiar with clean code and refactoring.


3 Days

Attendees must be comfortable with C# or Java, with the ability to write relatively complex programming assignments in one of these languages. Knowledge of modern object-oriented programming constructs and how to read, write, test, and debug code is essential. Comfort in using the selected IDE and installing plugins or components is also expected. No knowledge of specific GUI, database, or infrastructure component is necessary.
For more information about training courses, please send an email with the name of the required training to
One of our representatives will respond to your inquiry via email within three working days.