I really want to implement this theory into my project and make it my own.
5.0
박주원
100% enrolled
I am a student majoring in computer engineering. It was great to learn the basic framework of clean code for the first time. If I apply it little by little and practice it and study it as I go, I think I can become a better developer!
It is difficult to refer to the table of contents when I look at it again, so I think it would be good if you made the table of contents a little more detailed and easy to refer to again!
5.0
Boram Kim
83% enrolled
I am currently working as a front-end engineer :)
When I first joined the company, there were many parts where it was difficult to ask questions or get advice because there was no mentor. However, after listening to this lecture, I was able to write good-looking code and clearly understand why it should be done that way. As mentioned in the introduction, it is not a lecture that cannot be understood even if you do not know the Java language, and it was easy to read and understand because it easily explained the core contents covered in the Clean Code book.
I highly recommend it to those who are about to join the company or want to write good-looking code!
What you will gain after the course
Refactoring Tip
Tips for writing clean code for collaboration
Other development-related tips that job seekers, aspiring developers, and junior developers must know.
📝 Course Introduction
Just by looking at a single GitHub page, it is decided whether people want to work with you.
Do you think that's an exaggeration? It's not. That's because you can clearly determine whether the author's coding style is good or bad just by looking at a single GitHub page. In particular, code written by someone who has no idea what clean, collaborative code looks like stands out at a glance.
First impressions tend to leave the strongest impact. Since good and bad can be identified at once with just a single GitHub page, you must learn how to write clean code in advance.
Why you need to learn how to write clean code
“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”
These are the words of Martin Fowler, the author of [Refactoring]. It means that good code should be easy for others to read and understand.
As job seekers or aspiring/junior developers, you likely have little to no experience maintaining code written by others. This is because most of your experience probably comes from preparing for coding tests or working on team projects for competitions and job portfolios. In such projects, the primary goal is usually just to implement service features, so it was likely enough as long as the program worked.
“However, the professional world is different.”
In practice, it is extremely common to have to understand and modify code written by others. There are also many cases where you must communicate based on a colleague's code. It is hard enough to recognize code you wrote yourself after a few months; will it be easy to collaborate while trying to figure out code written by someone else? Absolutely not.
It's already difficult enough, but what if the code is a mess?Your fellow developers will be deeply confused. I believe that writing clean code is just as important as problem-solving skills and fundamental knowledge of computer science.
✏️ What you will learn in this course
You will learn how to write clean code that is great for collaboration, as well as various anti-patterns to avoid when writing code.
I have prepared this lecture so that you can watch it easily without any burden of learning, so please feel free to read it as a reference whenever it comes to mind.
👨💻 Instructor Introduction
Hello. I am a junior developer currently working at a major corporation. I have always been deeply interested in and thoughtful about topics such as object-oriented programming, software engineering, clean code, and refactoring. I would like to share my thoughts and the knowledge I've gained from my experience in the field with aspiring and new developers who are walking the same path I once did.
📖 Course Features
We have included all the carefully selected clean code writing methods that will make you a developer everyone wants to work with.
This course is a text-based lecture that provides reading materials. The lecture materials can be read directly on the Inflearn lecture screen. (No separate videos are provided other than the lecture text. Please make sure to check this before enrolling.)
🙋🏻♂️ Frequently Asked Questions (Q&A)
“Is there a specific programming language I need to know beforehand to take this course?” • Although Java is used as an example in some parts of the lecture, you can take this course regardless of the language you use. Of course, it is better if you use object-oriented languages such as Java, Python, Go, or Kotlin.
“I don't know anything about the [Object-Oriented Paradigm] or [Design Patterns]; can I still take this course?” • Yes, you can. This course does not cover any difficult content. Although this course was created assuming the target audience has at least a very basic understanding of object-oriented theory or design patterns, you can still take it without any issues even if you don't.
“I have already read [Clean Code] and [Refactoring]. Do I still need to take this course?” • The students I recommend most are those who plan to read [Clean Code] and [Refactoring]. Taking this course before reading them will greatly help you understand the content of those books. On the other hand, since this course covers many topics found in those books, those who have already read them may find less new information to gain. However, I have also included various other detailed tips not covered in those books, so anyone who wishes to take the course is always welcome.
“Are there any unique features of this lecture?” • There is a term called 'The curse of knowledge.' It refers to a problem that occurs when conveying information to others, based on the illusion that the other person has enough background knowledge to fully understand what you are trying to say. As a junior developer who understands the minds of job seekers and prospective/new developers better than anyone, I have included content in this lecture that might make one think, "Do I really need to include even this in the lecture?"
“Can I write good code immediately after taking this course?” • I believe there will be a clear difference before and after taking this course. However, to internalize the theory, it is best to combine it with practice. I strongly recommend that you refactor the code you have already written based on the various tips provided in this course.
📣 Additional Information • I will respond to course-related questions as quickly as possible every weekday evening. • This course is a written (text-based reading material) course, and no separate videos are provided. Please be sure to check this before enrolling, as refunds are difficult once the refund policy period has been exceeded.
Recommended for these people
Who is this course right for?
Aspiring developer
Prospective/Entry-level Developer
Those who are afraid of code reviews
Those who are curious about how to write code that is good for collaboration
Developers who have not yet read [Clean Code] or [Refactoring]
Aspiring or junior developers who have read [Clean Code] and [Refactoring] but are curious about more diverse and detailed tips.
Need to know before starting?
Someone who has learned object-oriented languages such as Java, Python, Go, and Kotlin
Some experience in learning object-oriented programming and design patterns
I am a clean coder working as a backend developer at Kakao.
I have always been deeply interested in and thoughtful about topics such as Object-Oriented Programming, Software Engineering, Clean Code, and Refactoring. I would like to share my reflections and the practical knowledge I've gained through real-world development with job seekers and aspiring or junior developers who are walking the same path I once did.
I hope my knowledge can be of even a small help to you. :D
Thank you so much for the great review Hyunho
I'm honored that it was helpful
Hyunho's review seems to be a great help
Have a nice holiday and have a great day and a great tomorrow :)
I support you, Gungkwon :)
Write code based on the lecture content while being conscious of it.
It may be slow and you may feel impatient at first,
but if you keep applying it, you will complete a clean and easy-to-understand code that anyone can see.
If you are not familiar with it yet, don't try to write it perfectly from the beginning, but it is also good to write and modify the code step by step. (There is no perfect code anyway. When you look at it next time, you will wonder why I wrote it like this.)
If you are going to modify the source code of an existing project,
First, change the variable names to meaningful ones (This is especially recommended when the code is so messy that you can't even tell where to start and how to change it.)
If you changed the variable names, remove meaningless value assignments or (useless) temporary variables.
If you take these small modification steps that seem meaningless at the moment, you will find yourself adding more parts to modify one by one.
If you are not satisfied with the project code even after modifying it step by step and it is different from what is explained in the lecture, and you no longer have a sense of what to do, it may be due to the limitations of the design.
In this case, since there are limitations to modifying the code level, you need to modify it in larger units at the component level.
Here is a tip:
Do not start without thinking,
(The more complex the source code is), divide the entire source code into several large steps (don't worry about the details) and start. You can also draw a picture.
Thank you for the good review :):)
I am currently working as a front-end engineer :)
When I first joined the company, there were many parts where it was difficult to ask questions or get advice because there was no mentor. However, after listening to this lecture, I was able to write good-looking code and clearly understand why it should be done that way. As mentioned in the introduction, it is not a lecture that cannot be understood even if you do not know the Java language, and it was easy to read and understand because it easily explained the core contents covered in the Clean Code book.
I highly recommend it to those who are about to join the company or want to write good-looking code!
I am a student majoring in computer engineering. It was great to learn the basic framework of clean code for the first time. If I apply it little by little and practice it and study it as I go, I think I can become a better developer!
It is difficult to refer to the table of contents when I look at it again, so I think it would be good if you made the table of contents a little more detailed and easy to refer to again!
Thank you for the review.
I'm so glad it helped you :)
I'll think about how to change the table of contents.
I'll try to change it in October.
Have a nice Chuseok holiday ;)
As a junior developer, I was wondering what clean code is, and after watching this lecture, I got a little bit of an outline. And there were some things that were completely opposite to what I thought, so I think I made a good decision to take the course. Thank you for the great lecture :)
Minjeong, thank you so much for your kind words.
(You're the one who reported the typo earlier, right?)
You must already be an excellent developer, so I'm honored that I could be of some help.
I'm rooting for you as a fellow junior developer :)
Be careful of Corona, have a good holiday, and I hope you have a rewarding and wonderful day every day.
Thank you so much for your kind review.