Benjamin Bischoff

Identifying code smells

Is a boolean parameter a sign of a deeper problem? Learn to spot common code smells before they lead to technical debt.

Identifying code smells
#1about 3 minutes

Defining code smells and their importance in development

A code smell is a surface indication of a deeper problem, and identifying them improves communication, testability, and reduces technical debt.

#2about 6 minutes

Identifying bloaters, code that has grown too large

Bloaters are classes or methods that are too large, such as long methods, large classes, primitive obsession, long parameter lists, and data clumps.

#3about 5 minutes

Recognizing OOP abusers that misuse object-oriented principles

OOP abusers are code smells that incorrectly apply object-oriented concepts, including switch statements, temporary fields, refused bequest, and different interfaces.

#4about 4 minutes

Understanding change preventers that hinder future development

Change preventers are code structures that make modifications difficult, such as divergent change, shotgun surgery, and parallel hierarchies.

#5about 4 minutes

Spotting dispensables, the unnecessary parts of your code

Dispensable code smells are unnecessary elements that can be removed, including lazy classes, data classes, duplicate code, dead code, and speculative generality.

#6about 4 minutes

Analyzing couplers and issues with class relationships

Couplers are code smells related to excessive or improper coupling between classes, such as feature envy, inappropriate intimacy, message chains, and the middle man.

Related jobs
Jobs that call for the skills explored in this talk.

Software Engineer

tree-IT GmbH
Bad Neustadt an der Saale, Germany

Intermediate
Senior

Featured Partners

Related Articles

View all articles
BR
Benjamin Ruschin
What Developers Really Need to Create Great Code Demos
Every developer on earth has, at some point, had another developer to thank for a breakthrough, a success, an aha moment they wouldn’t have had without coming across that blog post, that open-source contribution, that reply on socials or that humble ...
What Developers Really Need to Create Great Code Demos
DC
Daniel Cranney
Dev Digest 195: End of Likes, JavaScript’s a Zoo, and Messing with Bots!
Inside last week’s Dev Digest 195 . 👎 No more external likes 🤗 Needy programs 📉 The worst selling Microsoft product 🟨 JavaScript engines zoo 🍞 No more toasts! 🤖 Messing with bots 👔 Beware of fake job interviews 🗞️ Join over 150,000 developers alread...
Dev Digest 195: End of Likes, JavaScript’s a Zoo, and Messing with Bots!
DC
Daniel Cranney
Dev Digest 188: CfP time, the risks of NPM and IKEA algorithms
Inside last week’s Dev Digest 188 . 🤖 GitHub Copilot CLI is now in public review 💻 Microsoft is bringing ‘vibe working’ to office apps 🎣 Attackers abuse AI tools to generate captchas in fishing attacks ⚠️ When LLMs autonomously attack 🧠 Common cause...
Dev Digest 188: CfP time, the risks of NPM and IKEA algorithms

From learning to earning

Jobs that call for the skills explored in this talk.

Rust and GoLang

Rust and GoLang

NHe4a GmbH
Karlsruhe, Germany

Remote
55-65K
Intermediate
Senior
Go
Rust