inflearn logo
inflearn logo

Simple Design Introduction Lecture 2: Handling Duplicate Code

This course is the second lecture in the Simple Design series. Simple Design proposes the following two methods for creating good code: 1. Remove duplicate code. 2. While doing so, find ways to reduce components. This lecture focuses on the first of these two methods.

(4.9) 18 reviews

313 learners

Level Basic

Course period Unlimited

Refactoring
Refactoring
Refactoring
Refactoring

Reviews from Early Learners

Reviews from Early Learners

4.9

5.0

든든한꼬마

100% enrolled

I learned why duplicate code is problematic, what mindset to use when identifying duplicate code, and which duplicate code should be removed versus which can be left as is.

5.0

티벳로보

100% enrolled

I'm satisfied with the supplementary explanations in Lecture 1 of the Introduction.

5.0

Groot

100% enrolled

Thank you~!

What you will gain after the course

  • You can understand why duplicate code is bad and what specific negative impacts it has.

  • You can learn about different types of duplicate code and how to resolve them.

Simple Design Roadmap

This lecture is the second lecture in the Simple Design series. You can view the Simple Design series at the following link: https://inf.run/VvwxD

It would be good to watch the first lecture (free lecture) first. https://inf.run/rpGb7


Course Syllabus

This lecture is the second in the Simple Design introduction series that covers methods for improving code quality. In the first lecture, we provided an overview of why Simple Design is proposed as a standard for code quality and what Simple Design is. The methods for achieving Simple Design can be summarized in the following two ways.

  1. Remove duplicates from the code.

  2. While reducing components to the minimum.

And this lecture focuses intensively on the first method of creating Simple Design: how to eliminate duplication in code. Specifically, it will cover the following content.

  • Why is duplicate code bad, and how bad is it?

  • Duplicate code is also a symptom of other design problems.


  • Conditional Statement Duplication and Polymorphism

  • Handling Slightly Different Duplicate Code

  • Finding Hard-to-Detect Duplicates

  • The problem of duplication between documentation and code

  • Duplicate Code That's Okay to Leave Alone - Metric Tools, AI, etc.



We'll explore these concepts through the process of directly refactoring various example codes. The example code utilizes a mix of three languages: JavaScript, Python, and Java. Open source examples are also included.


These days, while AI has made development more convenient for coding, it's also causing many side effects, right? There are many cases where maintenance becomes more difficult due to the low-quality code that AI produces. However, AI can actually help create high-quality code. This course also covers how to utilize AI in beneficial ways.


You might think that code quality isn't important when you don't directly look at the code, like with vibe coding, but since AI also reads and writes code just like humans do, if the original code quality is poor, AI will also create bad code and generate many bugs. It also consumes much more tokens when writing code. In fact, code quality might become even more important in the AI era. So through this course, I hope you can reduce duplicate code and elevate your code quality to the next level.


Recommended for
these people

Who is this course right for?

  • Those who want to know whether the code they wrote is good code or not

  • Someone who wants to know what to do when their team's development speed is gradually slowing down

  • Someone who has difficulty reaching agreements with colleagues due to different perspectives on code quality

Hello
This is youngrok

2,212

Learners

71

Reviews

1

Answers

4.8

Rating

4

Courses

I am a developer with the most extensive range of experience in South Korea. I have experienced companies of all sizes, from startups I founded myself and small-scale startups to major corporations like Naver, Kakao, and NCSOFT. My technical expertise spans from HTML and CSS to frontend, backend, system programming, hardware control, and DevOps, covering diverse business domains such as e-commerce, tax accounting, the advertising industry, productivity tools, and public projects.

Additionally, I have served as CTO at numerous companies, earning strong support from my team members. I am also frequently sought after as a "troubleshooter" due to my track record of taking over and reviving projects that had previously failed multiple times.

More

Reviews

All

18 reviews

4.9

18 reviews

  • grootcodes님의 프로필 이미지
    grootcodes

    Reviews 2

    Average Rating 5.0

    Edited

    5

    100% enrolled

    Thank you~!

    • vps32님의 프로필 이미지
      vps32

      Reviews 3

      Average Rating 5.0

      5

      100% enrolled

      • calculator님의 프로필 이미지
        calculator

        Reviews 129

        Average Rating 4.9

        5

        100% enrolled

        I learned why duplicate code is problematic, what mindset to use when identifying duplicate code, and which duplicate code should be removed versus which can be left as is.

        • kamser님의 프로필 이미지
          kamser

          Reviews 38

          Average Rating 5.0

          5

          100% enrolled

          I'm satisfied with the supplementary explanations in Lecture 1 of the Introduction.

          • seungilbang7185님의 프로필 이미지
            seungilbang7185

            Reviews 9

            Average Rating 5.0

            5

            100% enrolled

            This lecture made me deeply contemplate and think about duplicate code when developing!

            $8.80