Course Outline
Day 1
Introduction
Adopting standardized and meaningful naming conventions
-Names for packages, files, classes, variables, and functions must reflect their purpose clearly.
-Names should be easy to read.
-Names should be easily searchable.
-Consider the generated namespace: does it make logical sense?
Classes, objects, and data structures
-Understand the distinction between objects that perform actions and structures that merely hold data.
-Determine when to use data structures and why.
-Determine when to use objects and why.
-Explore Object-Oriented Design (OOD) and abstraction principles.
-Understand the purpose and usage of getters and setters.
-Prefer many small classes, each containing small methods and functions.
Writing effective comments
-Distinguish between helpful and unnecessary comments.
-Learn how to write valuable comments and eliminate redundant ones.
Day 2
Functions
-Each function should do one thing.
-Keep functions small.
-Evaluate arguments: identify good and bad practices.
-Avoid unintended side effects.
Error handling
-Determine when to handle errors locally versus allowing them to bubble up.
-If an exception is caught, understand how and why it is handled.
-Implement custom error handling classes.
Code formatting: Improving the visual structure of code
Test-Driven Development (TDD): Open discussion on Uncle Bob’s perspective that programs should be developed using TDD methodologies.
Requirements
No specific prerequisites are required to attend this course.
Testimonials (2)
The teacher addressed many relevant topics for clean coding with practical examples.
Ben van Oeveren - Movella
Course - Clean Code
I really liked that there were a lot of practical exercises in which you could put the learned immediately into action.