Study a catalog of industry wisdom about designs that are hard to modify and prone to defects.
Learn safe alternatives and develop your skills for identifying and building better code.
No other eLearning system on the planet matches our discussion forums, woven throughout every album.
Ask questions, get expert replies, read and weigh in on fascinating discussion threads from a global audience.
Watch our experts efficiently explain models, demonstrate tools and solve exercises.
Like a good pop song, every video we make holds your attention and gets you into a better development rhythm.
|You Are Here||3|
|Welcome to Code Smells||4|
|Connoisseurs of Code ← Click to Preview||5|
|How Sensitive Is Your Nose?||6|
|What Are Code Smells?||7|
|A Short History of Code Smells||8|
|Credit Card Debt||11|
|Is Your Code in Debt?||12|
|What Does Technical Debt Look Like? 🎦 ← Click to Preview||13|
|Decreasing Customer Responsiveness||14|
|Technical Debt at Two Organizations||15|
|Managing Technical Debt, A Short Quiz||16|
|Big Picture Cost of Technical Debt||17|
|Lost Intent Example||20|
|Losing Your Intention Quiz||22|
|Optimizing Program(mer) Performance 🎦||25|
|The Goal: Reveal Intention ← Click to Preview||26|
|Perfect: Simple, Consistent, Accurate||27|
|Typing Is Not the Bottleneck||28|
|Fixing Inefficient Names||29|
|This or That Quiz||30|
|Don’t Repeat Yourself||35|
|Duplicated Code Quiz||36|
|When is it Okay to Copy Code?||37|
|Deodorant Comment ← Click to Preview||39|
|A Comment Judgment Call||42|
|Long Method Example||46|
|Long Method Makeover||47|
|What About Performance?||48|
|Why Do People Write Long Methods?||49|
|Long Method Quiz||50|
|Large Class Quiz||53|
|Removing Dead Code||56|
|Dead Code Example||57|
|Dead Code Quiz ← Click to Preview||58|
|Lazy Class Quiz||63|
|Refactoring Common Smells||65|
|Oddball Solution Example||68|
|Majority Or Minority Oddball?||69|
|Oddball Solution Quiz||70|
|Primitive Obsession Survey||75|
|Switch Statement Example||78|
|Replacing Switch Statements With Polymorphism||79|
|A False Case of a Switch Statement Smell||80|
|Maps Instead of Switch Statements||81|
|Switch Statement Quiz||82|
|Speculative Generality Example||85|
|Speculative Generality Quiz||86|
|Refactoring More Common Smells||88|
|Long Parameter List ← Click to Preview||90|
|Default Values & Better Alternatives||91|
|Conditional Complexity Example||94|
|Conditional Complexity Solution||95|
|Conditional Complexity Sprawl||96|
|Conditional Complexity Quiz||97|
|A Combinatorial Explosion of Methods||100|
|A Combinatorial Explosion of Classes||101|
|Combinatorial Explosion Quiz||102|
|Alternative Classes With Different Interfaces ← Click to Preview||104|
|An Example of Alternative Classes with Different Interfaces||105|
|Adapting a Class with a Different Interface||106|
|Inappropriate Intimacy Example 1||109|
|Inappropriate Intimacy Example 2||110|
|Inappropriate Intimacy Quiz||111|
|Indecent Exposure Quiz||114|
|Refused Bequest Example||117|
|Refused Bequest Quiz||118|
|Black Sheep Method Example||121|
|When Are Data Classes Good?||124|
|Evolving Away From A Data Class||125|
|Solution Sprawl Example 🎦||128|
|A Solution Sprawl Solution||129|
|Solution Sprawl Quiz||130|
|Feature Envy Example ← Click to Preview||133|
|Feature Envy Quiz||134|
|Temporary Field Example||137|
|Temporary Field Quiz||138|
|When Are Side Effects Ok?||141|
|Side Effect Example||142|
|Refactoring More Uncommon Smells Quiz||144|
|Follow The Masters - PEP8||147|
|Dull Formatting and Lousy Names Quiz||150|
|Scavenger Hunt Introduction||152|
|The Smells Scavenger Hunt||153|
|Conclusion - What’s Next?||155|
You can use whatever developments tools you prefer. If you do use an IDE (Integrated Development Environment), many (though not all) of our labs come with projects pre-configured for Eclipse, IntelliJ and Visual Studio.
Speakers or headphones are required for our videos.
Flash is required to view charts or watch videos — download for free.
In today's competitive environment, Industrial Logic aims to meet the needs of business customers not only by delivering world-class eLearning but also by providing a high degree of flexibility. Whether your organization is a startup, small- or medium-size business, or a large global enterprise, you benefit as a corporate customer from significant discounts.
Industrial Logic will tailor our volume licensing agreement to meet the needs of your specific organization, whether you consolidate your organization's purchases into one comprehensive transaction or spread your purchases out over a scheduled period of time. The more you order, the greater your savings.
To speak to a dedicated Account Manager today, please contact us.