Clean Code and Refactoring

The importance of clean code and demonstrating good coding style, advanced OO design and refactoring techniques

Main Speaker

Learning Tracks

Course ID

42576

Date

27/11/2024

Time

Daily seminar
9:00-16:30

Location

Daniel Hotel, 60 Ramat Yam st. Herzliya

Overview

Clean code is code that is correct and robust, and easy to maintain. As developers struggle to modify good code due to new requirements, the aging software can lead to unreadable names, code duplication, and even ugly code which is difficult and costly to maintain. To reduce maintenance cost, code must be clean – easy to modify and enhance. To be easy to maintain code must be easy to understand, easy to test, and easy to change, flexible and stable. Part of the solution is refactoring: changing and improving the code structure and design without affecting its functionality. Refactoring is the way to clean the code. This seminar will explain the concepts of clean code and refactoring and show many specific techniques for improving the correctness and maintainability of code. Code examples will mainly be given in Java.

Who Should Attend

Software developers with experience in an object-oriented programming language.

Prerequisites

Experience in an object-oriented programming language such as Java / C# / C++ / Python / Typescript Examples will be given in Java, so familiarity with Java is a plus

Course Contents

Introduction
  • What is Clean and Beautiful Code
  • Refactoring
  • Relying on Abstractions
  • Dependency Injection
  • Unit Testing
Layout the principles for good and advanced object oriented design Good Object Oriented Design Guidelines
  • Object Oriented Refresher
  • Encapsulation / Information Hiding
  • Low Coupling and High Cohesion
  • Layered Architecture
  • SOLID principles (SRP, OCP, etc. )
  • Simple Design, KISS, YAGNI
  • Removing Duplication, Patterns for removing duplication
  • Law of Demeter
Clean Code
  • Readability, Names
  • Functions, Classes, Exceptions
  • Comments and Formatting
  • Code Duplication
  • Code Reviews
Refactoring
  • Refactoring to get clean
  • Refactoring steps
  • Using the IDE to refactor
  • Common Refactoring Techniques

The conference starts in

Days
Hours
Minutes
Seconds