디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 수 있습니다.
이런 걸
배워요!
GoF의 총 23개 디자인 패턴
디자인 패턴 코딩하기
자바와 스프링에 적용된 디자인 패턴
단순 구현을 넘어서
더 좋은 코드를 만들고 싶은 모든 개발자에게
단순한 구현을 벗어나 더 좋은 코드를 만들고 싶다면 디자인 패턴에 대한 이해가 반드시 필요합니다.
모든 개발자에게 필독서로 추천하는 GoF의 저서 《디자인 패턴》과 23가지의 디자인 패턴.
현직 마이크로소프트 개발자가 현업에서 사용하는 코드로 모든 디자인 패턴을 알려드립니다.
📢 알려드립니다
기초 문법은 배웠는데
이제 뭘 해야 하지?
중급 개발자로 성장을
목표로 하고 있는
초급 개발자라면?
더 좋은 개발자가
되고 싶은데…
보다 근본적인 개발
방법론을 공부
해보고 싶다면?
개발 전반 메타 지식을
늘릴 수는 없을까?
어떤 지식을 학습하든
보다 빠르고 효율적인
학습을 원하신다면?
디자인 패턴?
배우고는 싶은데…
디자인 패턴 공부가
어렵고 실무와
멀게만 느껴진다면?
디자인 패턴은 애플리케이션 개발 시에 마주할 다양한 문제와 패턴을 모아놓은 지식의 산물입니다.
실제로 자바 개발자가 많이 사용하는 스프링 프레임워크에도 전략, 프록시, 어댑터 등 여러 다양한 디자인 패턴을 찾아볼 수 있습니다.
이 강의는 여러분께 디자인 패턴이 어렵고 추상적인 이론이 아니라 이미 우리 가까이에 있다는 것을 알게 해줄 것입니다.
스프링이나 리액트, NestJS와 같은 프레임워크에는 고도의 기술과 디자인 패턴이 집약되어있습니다.
프레임워크 학습에 어려움을 느꼈다면 디자인 패턴에 대한 이해가 선행되어야 합니다.
디자인 패턴을 알고 있다면 자바나 스프링뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 더 쉽게 학습할 수 있습니다.
이 강의에서는 23개의 모든 디자인 패턴을 세 분류로 나누어 다루고 있습니다.
각 패턴이 해결하려는 문제, 적용하는 방법, 장단점, 실무에서 어떻게 적용되는지를 함께 살펴봅니다.
디자인 패턴을 보다 쉽게 이해하기 위해 자바 스프링에 적용된 모든 패턴의 예제를 제공합니다.
예제 코드는 Java로 작성되었으며, 본인에게 익숙한 프로그래밍 언어로 바꿔 실습 할 수 있도록 간결하고 직관적으로 작성했습니다.
지금 당장 실무에서 해당 패턴이 어떻게 사용되고 있는지 뿐만 아니라 그와 관련된 다양한 기술도 학습 할 수 있습니다.
이 강의에서 다루는 23개의 패턴 중 세 가지 패턴(싱글톤 패턴, 프록시 패턴, 이터레이터 패턴)은 미리보기로 공개되어있습니다.
수강 전 강의를 미리 들어보신 후 이런 방식의 강의 진행이 본인에게 도움이 될지 판단해 주시기 바랍니다.
디자인 패턴 Design Patterns
아마존 기준 평점 4.7/5
객체 지향 소프트웨어 디자인 분야 1위
모든 개발자에게 권장하는 추천 도서 중 하나
GoF (Gang of Four)
《디자인 패턴》의 저자 4인
에릭 감마(Erich Gamma), 리차드 헬름(Richard Helm), 랄프 존슨(Ralph Johnson), 존 블리시데스(John Vlissides)
📢 참고해주세요
Q. 디자인 패턴은 이론적인 이야기 아닌가요? 실무에서 실제로 쓰이나요?
A. 우리가 사용하는 프레임워크들은 모두 디자인 패턴을 사용하고 있습니다. 예를 들어, 자바 개발자가 많이 쓰고 있는 스프링은 디자인 패턴의 집약체라고 말할 수 있을 정도로 다방면에 수많은 디자인 패턴이 적용되어 있습니다. 디자인 패턴을 잘 알고 있다면, 실무에 쓰이는 기술을 학습하는 데도 도움이 될 뿐 아니라 해당 패턴을 여러분 코드에 적용하는 것도 가능합니다. 이 강의에서 실제로 자바와 스프링에 적용된 디자인 패턴을 살펴보시기 바랍니다.
Q. 소스 코드는 어디서 다운 받을 수 있나요?
A. “강의 소스 코드”라는 수업에 소스 코드를 압축해서 올려두었습니다. 해당 코드를 여러분이 자주 사용하는 IDE, 이클립스 또는 인텔리J로 읽어 들여서 살펴볼 수 있습니다. 각 패턴마다 패턴 적용 이전과 이후를 패키지로 나눠놨으니, 강의를 수강하시고 나서 새로운 패키지를 만들고 직접 연습해 볼 수 있습니다.
Q. 자바 기초만 공부한 상태인데 이 강의를 수강해도 될까요?
A. 네, 자바 기초를 학습했다면 본 강의를 수강할 수 있습니다. 물론, 강의 중에 자바 기초에서는 다루지 않는 자바 기술이나 스프링 프레임워크 기술도 소개하지만 디자인 패턴을 학습하는 데 있어서 반드시 필요한 선수 지식은 아닙니다. 이 강의를 수강하시면 앞으로 자바나 스프링을 더 깊게 공부하는 데 많은 도움이 될 겁니다.
학습 대상은
누구일까요?
중급 개발자로 성장하고 싶은 초급 개발자
좋은 설계 및 코드가 무엇인지 학습하고 싶은 개발자 또는 학생
다양한 디자인 패턴과 그 적용 방법을 학습하고 싶은 개발자 또는 학생
디자인 패턴이 멀게만 느끼지던 개발자 또는 학생
선수 지식,
필요할까요?
자바 기초 지식
객체 지향에 대한 기본적인 이해
네이버와 아마존을 거쳐 현재 Microsoft에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.
아인슈타인은 "교육이란 사실을 가르치는 것이 아니라, 생각할 수 있는 힘을 기르는 것이다."라고 말했습니다. 그리고 저도 그 말에 깊이 공감하며 강의를 만들고 있습니다.
유튜브: '백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식 공유
번역: 스프링 및 하이버네이트 관련 서적 다수 번역
저술: 쉽게 따라하는 자바 웹 개발
전체
98개 ∙ (11시간 37분)
가 제공되는 강의입니다.
추상 팩토리 패턴 1부 - 패턴 소개
03:31
빌더 패턴 1부 - 패턴 소개
07:09
빌더 패턴 2부 - 패턴 적용하기
09:50
빌더 패턴 3부 - 장점과 단점
05:59
프로토타입 패턴 1부 - 패턴 소개
06:28
프로토타입 패턴 3부 - 장점과 단점
02:26
어댑터 패턴 1부 - 패턴 소개
06:49
어댑터 패턴 2부 - 패턴 적용하기
09:21
어댑터 패턴 3부 - 장점과 단점
03:47
브릿지 패턴 1부 - 패턴 소개
06:16
브릿지 패턴 2부 - 패턴 적용하기
10:23
브릿지 패턴 3부 - 장점과 단점
02:26
컴포짓 패턴 1부 - 패턴 소개
07:45
컴포짓 패턴 2부 - 패턴 적용하기
09:37
컴포짓 패턴 3부 - 장점과 단점
04:02
데코레이터 패턴 1부 - 패턴 소개
10:16
데코레이터 패턴 3부 - 장점과 단점
08:29
퍼사드 패턴 1부 - 패턴 소개
05:26
퍼사드 패턴 2부 - 패턴 적용하기
09:33
퍼사드 패턴 3부 - 장점과 단점
04:44
플라이웨이트 패턴 1부 - 패턴 소개
04:06
플라이웨이트 패턴 3부
02:12
프록시 패턴 1부 - 패턴 소개
06:08
프록시 패턴 2부 - 패턴 적용하기
08:44
프록시 패턴 3부 - 장점과 단점
04:05