Clean Code with Java examples
- Description
- Curriculum
- FAQ
- Reviews
This is a course about useful clean code principles.
My aim is to teach you concepts that you can use every time you write code.
The course has Java examples and I sometimes mention things like Spring and Lombok.
The same clean code principles apply also to PHP, C# and Python.
What can this course do for you?
It can save your company and yourself a lot of development time and therefore a lot of money.
How?
Bad code practices can make development very slow on your medium and big projects.
This means a lot of money wasted on development time.
This type of projects are also remarkably unpleasant to work on.
This course helps you avoid this by using clean code principles.
The course is structured in 4 parts:
1. Introduction – where we discuss what is clean code and why it’s important
2. Small Functions – I gave small functions an entire section because I think its one of the most important principles of clean code, together with small classes, Single Responsibility Principle and Not crossing Different Levels of Abstraction.
3. Clean code: Fundamental Principles – I discuss here about fundamental things like method and variables names, parameters, comments and exceptions
4. Clean code: Advanced Principles – Here I talk about more abstract topics like the difference between an OOP Object and a Data Structure Object, Composition over Inheritance, Symptoms of Bad Code, State, Low Coupling – High Cohesion, Command and Query Separation, Tell Don’t Ask, The Law of Demeter and more.
The course also contains some memes because you can’t spell clean code without fun.
I tried to focus on things you can use every day when programming and stay away from barren theory.
There’s no point wasting our time with useless knowledge that would just seem like it’s helping you as a programmer, but that you will forget in 2 weeks.
If that would have been the point, this would be a 10 hours course about programming patterns.
But it isn’t.
I tried to make the course full of useful information but not too long.
If you invest as little as two hours of your life in this course, about the time you would spend watching a movie, you will become a much better developer.
-
1Why this courseVideo lesson
-
2Clean code: From Art to ScienceVideo lesson
In this video I explain what clean code is and how I started to be interested in it.
-
3What people sayVideo lesson
In episode 2 of the Clean Code course I talk about what people say related to clean code.
-
4Sample codeVideo lesson
In this video I take a look at samples of code: some bad code and some good/clean code.
-
5EmpathyVideo lesson
In this episode I talk about why empathy is important for clean code.
I also recommend to check out what Robert C. Martin (Uncle Bob) has in the area of clean code.
-
6Small functions are easy to understandVideo lesson
In this episode I start talking about the advantages of small functions with the first one: they are easy to understand.
It's a bit of a longer episode because i go through more code than usual. -
7More advantages of small functionsVideo lesson
In this episode I talk about the other advantages of small functions.
Besides being easy to understand they are easy to:
Maintain
Debug
Reuse
Test
Keep bug free
They help you avoid code repetition
They beautify code
They separate concepts into their levels of abstraction -
8How many lines should a small function haveVideo lesson
In this episode I talk about what size a function and a class should have.
What does small mean.
What does one thing mean.
What to do when your function is too big.
-
9Single responsibility principleVideo lesson
In this clean code video I talk about Single Responsibility Principle and how it relates to Small Functions.
-
10Levels of Abstraction - An MVC discussionVideo lesson
In this video I talk about:
- why you shouldn't cross different levels of abstraction
- what levels of abstraction are
- how they are important in MVC frameworks
- what MVC frameworks are
- how small methods shaped how we use MVC
- how new projects make old mistakes
-
11High Level First - writing code using method calls firstVideo lesson
In this video I talk about a programming technique called High level first.
-
12Names - for methods, classes and variablesVideo lesson
In this episode I talk about variable and function names.
What parts of speech to use, how long or short they should be, why naming is important and what not to do.
-
13ParametersVideo lesson
In this episode I talk about parameters. How many parameters you should use. Why same type parameters are trickier. Why parameters that change state inside your functions are bad. Boolean and null parameters.
-
14Programming line lengthVideo lesson
In this episode I talk about how far to the right should a line of code go.
The importance of having the code always start from the same place on the monitor.
C# starting brackets vs java starting brackets. -
15Beautify predicatesVideo lesson
In this lecture I talk about beautify predicates - making the content of an if statement prettier with a function name.
-
16CommentsVideo lesson
In this episode I talk about comments.
Why they are bad and should be avoided except for a few cases. -
17Should I use exceptions?Video lesson
In this video I talk about exceptions.
You should use unchecked, runtime exceptions.
You should use your own exceptions not the java ones.
External Links May Contain Affiliate Links read more