Enroll Course: https://www.coursera.org/learn/design-patterns
최근에 Coursera에서 제공하는 ‘디자인 패턴’ 과정을 수강하게 되었습니다. 이 과정은 객체 지향 분석 및 설계를 확장하여 디자인 패턴을 활용하여 상호작용 애플리케이션을 만드는 방법을 학습하는데 중점을 두고 있습니다. 수업을 듣고 나서 느낀 점과 추천 이유를 공유해볼까 합니다.
과정 개요
이 과정은 다양한 디자인 패턴을 살펴보면서 더 복잡한 소프트웨어 애플리케이션을 위한 기초를 제공합니다. 특히, 나쁜 소프트웨어 디자인을 식별하는 방법을 배울 수 있어 매우 유익합니다.
syllabus 분석
1. **디자인 패턴 소개: 생성 및 구조 패턴** – 객체 지향 소프트웨어의 일반적인 설계 문제를 해결하기 위한 디자인 패턴의 개념을 배우며 UML로 설계 표현 연습과 Java로 패턴 코딩을 통해 이해를 깊게 합니다.
2. **행위 디자인 패턴** – 행동 디자인 패턴에 대해 더 배우고 이를 UML로 나타내며 Java에서 코딩하는 방법을 익힙니다.
3. **디자인 패턴 및 안티패턴 작업** – 사용자 인터페이스에 유용한 디자인 패턴인 모델-뷰-컨트롤러(MVC)를 배우고, 재사용 가능하고 유지보수하기 어려운 나쁜 디자인의 증상인 코드 냄새를 식별하는 법을 학습합니다.
4. **캡스톤 도전 과제** – 여러 디자인 패턴을 적용한 예제 안드로이드 코드 베이스에서 특정 코드 냄새를 식별하고 수정하는 과제를 수행하게 됩니다. 이 과제를 통해 최종 시험을 준비하는 데 필요한 실습을 하게 됩니다.
이 과정은 소프트웨어 설계 능력을 한층 더 끌어올려 줍니다. 디자인 패턴의 구현을 통해 이해도와 실용성을 높이며, 특히 캡스톤 프로젝트는 직접 실습할 수 있는 기회를 제공하여 학습 효과를 극대화해 줍니다.
추천 이유
– 디자인 패턴의 중요성을 체감할 수 있었습니다.
– 여러 사례를 통해 학습하여 이해도를 높였습니다.
– 실전 문제 해결 능력을 배양할 수 있었습니다.
소프트웨어 공학과 디자인 패턴에 대한 기초를 쌓고 싶은 분들에게 이 과정을 강력히 추천합니다. 현실을 반영한 실습이 매우 유익하며, 과정이 끝난 후에는 웹 개발 및 애플리케이션 디자인에 큰 도움이 될 것입니다!
Enroll Course: https://www.coursera.org/learn/design-patterns