Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

디자인 패턴 22종류를 공부하고, 예시 코드를 작성하고, 토론하기 위한 스터디입니다.

License

Notifications You must be signed in to change notification settings

minsson/design-patterns-in-swift

Repository files navigation

🎨 디자인 패턴 스터디



🔥 스터디 요약


🔥 스터디 주제

1주차 2주차 3주차 4주차
Singleton Prototype Adapter Abstract Factory
Builder Factory Method Bridge Template Method

🔥 스터디 인원


🔥 학습 교재

REFACTORING GURU - Design Patterns의 디자인 패턴 22종류


🔥 스터디 사이클

0) 스터디 시작 전 (1회)

1) 매주 수요일 스터디 이후 (+첫 주)

  • 매주 랜덤으로 4인1팀으로 두 팀을 편성하며, A팀과 B팀으로 나눕니다.
  • A팀과 B팀은 각기 다른 디자인 패턴을 할당 받습니다.

2) 다음 스터디 시간까지

  • 자신의 조에 배정된 디자인 패턴을 학습합니다.
    • 교재의 개념과 코드를 보고, 필요하다면 다른 자료도 찾아보시면 좋습니다.
  • 이 주제를 처음 접하는 사람에게 설명할 수 있을 정도로 준비합니다.
    • 개념 설명에 필요한 자료를 준비하면 좋습니다.
    • 마크다운 형식으로 작성하면 좋습니다.
  • 교재, 또는 블로그 등을 참고하지 않고, 자신만의 예제 코드를 작성합니다.
    • 개념을 더 명확히 이해하고, 다른 곳에 활용하기 위함입니다.
    • 예제를 위한 미니 앱을 만들면 좋지만, 콘솔앱으로도 대체 가능합니다.
  • 깃허브 스터디 레포지토리, 해당 주제의 폴더에 들어가 자신의 폴더를 만들고 커밋 규칙에 맞추어 커밋 및 PR 합니다. PR은 main 브랜치로 보냅니다.
    • 레포지토리의 폴더는 두 종류로 정리하려고 합니다.
      • 주제별 폴더에 커밋: 1. Singleton과 같은 자신이 맡은 주제별 폴더 내에 Singleton-Minsson 형식으로 프로젝트를 만들고, 코드 작성 후 커밋합니다. 개념 설명을 위한 자료도 이 프로젝트 폴더 안에 넣어주시면 됩니다. 디자인 패턴과 닉네임 모두 영어로 작성합니다. 닉네임의 경우 필요하다면 실명을 사용해도 됩니다.
      • 개인별 폴더에 커밋: 처음 커밋할 경우, 개인별 프로젝트를 DesignPatterns-Minsson의 형식으로 만듭니다. 닉네임은 위의 주제별 폴더에서 사용한 것과 통일합니다. 본인이 지금까지 작성한 개념과 코드를 이 프로젝트 폴더 내에 차곡차곡 쌓아나갑니다.
    • 스터디 전까지 이 과정을 완료 후 PR 보냅니다. 필요하다면 스터디 이후에도 수정할 수 있습니다.
  • 위의 모든 과정에서 질문이 있다면 디스코드의 디자인 스터디 방에서 질문합니다.

3) 스터디 (19시 - 20시 30분)

  • 각 팀은 디스코드 채널에 모여, 한 주 동안 공부한 개념과 코드를 공유하고, 토의하는 시간을 갖습니다.
  • 이 시간은 상대 팀의 팀원에게 개념과 코드를 설명하기 전, 같은 주제를 공부한 팀원들에게 검증 받는 시간입니다. 질의응답을 통해 모자랐던 개념과, 코드의 오류를 수정하는 시간이기도 합니다.
  • 다른 주제를 공부했던 상대 팀의 팀원에게 1:1로 설명할 수 있도록 다 함께 대화를 나누고, 개념을 정리하고, 설명에 필요한 자료도 보완합니다.

4) 스터디 (20시 30분 - 21시 30분)

  • 상대팀의 누군가와 랜덤 매칭 되어, 둘만의 대화방으로 이동합니다.
  • 각자 공부한 디자인패턴의 개념 및 예제 코드를 자세히 설명해줍니다.

5) 스터디 (21시 30분 - 22시)

  • 10명이 모두 모여 질의응답 및 토의 시간을 갖습니다.
  • 다음 주에 공부할 주제를 선정합니다.
  • 스터디 진행 방향 개선이 필요한 경우 논의합니다.

🔥 커밋 규칙

1) Commit Header, Body

  • Header: [디자인 패턴 이름] 활용 컨셉
  • Body: 설명

2) 커밋 예시

  • 터미널 사용 시
git commit -m "[Mediator Pattern] 체크박스와 텍스트필드" -m "설명"
  • Fork 사용 시


🔥 개념 기록을 위한 개인별 마크다운 파일 작성법

# 디자인 패턴 이름
## 간단한 개념 설명
## 자신이 작성한 코드에 대한 설명

About

디자인 패턴 22종류를 공부하고, 예시 코드를 작성하고, 토론하기 위한 스터디입니다.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 7

Languages

AltStyle によって変換されたページ (->オリジナル) /