디자인 패턴

October 21, 2023 (1y ago)

Behavioral Patterns

1. State

이 디자인패턴 방법은 상태(State)에 집중한 방법이다. 객체의 내부 상태가 변경될 때 마다 개체의 동작을 변경할 수 있도록 하는 행동 설계 패턴이다.

하지만 이러한 상태에 집중하여 패턴을 디자인하게 되면 문제가 생기는 부분이 있다. NumBaseBallGame이라는 클래스를 예시로 생각해보자. 이 클래스의 내부 state에는 User, Analyzer, Printer가 있다.

  • MVC 패턴에 관해 설명해보세요.
  • 했던 프로젝트에서 nginx를 사용해 성능을 개선했다고 했는데 어떤 식으로 개선한 건가요?
  • "RESTful 하다"라고 썼던데 그 말의 정확한 의미가 무엇인가요?
  • 프로젝트의 프론트엔드 성능을 개선하기 위해 어떤 방법을 사용했나요?
  • 또는 어떤 방법을 사용할 수 있을까요?
  • 디버깅은 어떻게 했나요? 특정한 도구를 사용했으면 그것까지 얘기해주세요.
  • UI와 UX의 차이점을 설명해보세요.
  • 어떻게 보면 전공과 거리가 있는 직군인데, 이 직업을 선택한 이유가 무엇인가요?
  • 다른 언어도 배웠던데 굳이 프론트엔드 개발자로 지원한 이유가 있나요?
  • XSS(Cross-site scripting)를 설명해보세요.
  • 각 프로젝트별로 기술적으로 가장 어려웠던 점과 극복했던 방법을 한 가지씩만 얘기해보세요.

refactor : GameManager의 역할을 다른 객체가 분담하게끔 리펙토링

기존의 GameManager는 각 객체를 통하여 게임의 흐름을 조절하는 역할 이외에 결과를 산출하고 스트라이크와 볼의 갯수를 세는등의 역할들을 갖고 있어 오직 게임의 흐름을 조정하는 역할을 하게끔 수정했다.