Knowing design patterns will make it easier to learn not only Spring but also many other technologies and programming languages. It will also help you develop more flexible and reusable object-oriented software.
Thank you for organizing design patterns so neatly, the biggest gateway to transitioning from beginner to intermediate!
PS Kiseon, this may be a burdensome question, but would it be okay if I reorganize it in another language and upload it to my blog?
5.0
roach
24% enrolled
I can tell that this is a good lecture even after listening to just a few.
I've been putting off design patterns, but I think I should finish it this time.
5.0
Rep
100% enrolled
I liked how you easily conveyed the concept of the basic pattern itself and how you structured the lecture from a problem-solving perspective through examples.
What you will gain after the course
A total of 23 design patterns in GoF
Coding design patterns
Design patterns applied to Java and Spring
Beyond simple implementation For all developers who want to create better code
A must-read for every developer GoF's design patterns
If you want to go beyond simple implementations and create better code, understanding design patterns is essential. GoF's book "Design Patterns" and its 23 design patterns are recommended as must-reads for all developers. We teach you all the design patterns using code used in the field by current Microsoft developers .
📢 Please be informed
To successfully complete the course, you need to have an understanding of programming languages and object orientation .
While this course introduces and provides design patterns applied to Java and Spring , it's not language-specific . Developers in other languages can easily understand the content, and the code provided in the course is written concisely and intuitively to facilitate this.
Learning design patterns Who needs it?
I learned basic grammar What should I do now?
Grow into an intermediate developer Aiming for What if you are a beginner developer?
A better developer I want to be…
More fundamental development Study the methodology Want to try it?
Meta knowledge of overall development Can't it be increased?
Whatever knowledge you learn Faster and more efficient If you want to learn?
Design pattern? I want to learn, but…
Studying design patterns Difficult and practical What if it feels far away?
We design patterns Why you should learn
Design patterns are a collection of knowledge that covers various problems and patterns encountered during application development. In fact, you can find many different design patterns, such as strategies, proxies, and adapters, in the Spring Framework, which is widely used by Java developers. This lecture will show you that design patterns are not difficult, abstract theories, but are already within our reach.
In learning the framework If you are having difficulties
Frameworks like Spring, React, and NestJS are packed with advanced technologies and design patterns. If you find it difficult to learn the framework, you should first understand design patterns. Knowing design patterns makes learning Java, Spring, and many other technologies and programming languages easier.
Learning through coding GoF's design patterns
This lecture covers all 23 design patterns, divided into three categories. We'll explore the problems each pattern aims to solve, how to apply it, its pros and cons, and how it's applied in practice.
#1. Patterns related to object creation
Singleton pattern
Factory Method Pattern
Abstract Factory Pattern
Builder pattern
Prototype pattern
#2. Structural related patterns
Adapter pattern
Bridge pattern
Composite pattern
Decorator pattern
Facade pattern
Flyweight pattern
Proxy pattern
#3. Behavioral patterns
Chain of Responsibility Pattern
Command pattern
Interpreter pattern
Iterator pattern
Mediator pattern
Memento pattern
Observer pattern
State pattern
Strategy Patterns
Template Method Pattern
Visitor patterns
What a current MS developer tells you Design patterns used in practice
To make it easier to understand design patterns, we provide examples of all patterns applied to Java Spring. The example code is written in Java, but is written concisely and intuitively so that you can practice in a programming language you are familiar with. You can learn not only how the pattern is being used in practice right now, but also various related technologies.
Will the lecture suit me well? Are you curious?
Of the 23 patterns covered in this lecture, three patterns (Singleton Pattern, Proxy Pattern, and Iterator Pattern) are available as previews. Please listen to the lecture in advance before taking the course and decide whether this style of lecture will be helpful to you.
GoF (Gang of Four) The four authors of "Design Patterns" Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides
📢 Please note
This course covers 23 design patterns introduced in the GoF 's book "Design Patterns ." While we recommend reading "Design Patterns" to further your development as a developer, you don't need to purchase the book to take this course.
Expected Questions Q&A
Q. Aren't design patterns just theoretical? Are they actually used in practice?
A. All the frameworks we use utilize design patterns. For example, Spring, widely used by Java developers, can be said to be a culmination of design patterns, with numerous design patterns applied across various fields. Being familiar with design patterns not only helps you learn practical techniques, but also allows you to apply these patterns to your own code. In this lecture, we'll explore design patterns actually applied in Java and Spring.
Q. Where can I download the source code?
A. I've compressed and uploaded the source code for the course, "Lecture Source Code." You can open and review the code using your favorite IDE, Eclipse or IntelliJ. Each pattern is divided into packages with before and after patterns applied, so after taking the course, you can create a new package and practice using it yourself.
Q. I have only studied the basics of Java. Can I still take this course?
A. Yes, if you've studied Java fundamentals, you can take this course. While the course will introduce Java technologies and the Spring Framework that aren't covered in Java Fundamentals, they aren't prerequisite knowledge for learning design patterns. Taking this course will be a great help in your future, deeper study of Java and Spring.
Recommended for these people
Who is this course right for?
Beginner developer who wants to grow into an intermediate developer
Developers or students who want to learn what good design and code is.
Developers or students who want to learn various design patterns and how to apply them.
Developers or students who feel that design patterns are far away
Having worked at Naver and Amazon, I am currently working as a Senior Software Engineer at Microsoft.
Einstein once said, "Education is not the learning of facts, but the training of the mind to think." I create my lectures with deep resonance for those words.
Thank you for organizing design patterns so neatly, the biggest gateway to transitioning from beginner to intermediate!
PS Kiseon, this may be a burdensome question, but would it be okay if I reorganize it in another language and upload it to my blog?
I can tell that this is a good lecture even after listening to just a few.
I've been putting off design patterns, but I think I should finish it this time.
I liked how you easily conveyed the concept of the basic pattern itself and how you structured the lecture from a problem-solving perspective through examples.