🧑⚖️ 체스 게임방 삭제 관련 기능은 도메인 규칙이다 우아한테크코스 레벨 2 첫 미션, 스프링 체스 2단계에서 도메인 요구사항이 추가되었습니다. 여러 게임을 게임 방으로 관리하되, 게임 종료 상태이고 비밀번호가 일치할 경우 삭제할 수 있다는 것이었습니다. 첫 고민은 이 요구사항과 관련된 도메인 객체를 만들어야 하느냐 였습니다. 이 규칙은 실제 체스 규칙과는 상관이 없지만, 해결하고자 하는 주요 문제 영역이자 관심사라고 판단했습니다. 또한 프리젠테이션 레이어나 인프라스트럭처 레이어가 변경되더라도, 게임방 관리, 비밀번호 확인 등의 도메인 규칙이 변경되지 않는다면 동일하게 사용되어야 한다고 판단했습니다. 그래서 도메인 객체 Room 추가했습니다. 📨 Room 에게 메시지를 보내기 위한 준비 사실도메인 객..
우아한테크코스 레벨1 백엔드 필독서, 객체지향의 사실과 오해를 읽고 이해한 내용을 저의 언어로 표현해보는 포스팅입니다. 객체지향 프로그래밍 현실 세계 은유로 구조화된 도메인 모델을 자율적 객체들의 협력으로 재창조해내는 것 프로그램을 명령어의 집합이 아니라, 협력하는 객체들의 모임으로 보는 프로그래밍 기법입니다. 사람의 인지 능력에는 한계가 있습니다. 프로그램이 거대해지고 요구사항이 많아질 수록, 내부복잡도는 높아질 수밖에 없고, 이를 개발자가 모두 명령어로 제어하려면 한계가 발생합니다. 이 지점에서 객체들의 책임, 역할, 협력 이라는 개념이 부상합니다. 책임 한 객체가 어떤 메시지를 받을 수 있다면, 그 객체는 그 메시지를 수행할 책임이 있다. A라는 객체에게 doSomething라는 메시지를 보낼 수 ..
함께 자라기를 읽은 후의 감상을 기록한 포스팅입니다. 내용 요약 정리 없이 개인적으로 재해석한 내용을 위주로 작성하였습니다. 따라서 책에서 전하고자 하는 메시지와 방향성이 일부 다르거나 잘못 해석되었을 수도 있습니다. 추가적으로 우아한테크코스에 적용된 애자일은 어떤 모습이 있는지, 저 스스로는 어떻게 행동하면 생산성을 개선할 수 있을지 에 대해 고민해봤습니다. 이 책을 한 줄로 이야기한다면? 애자일. 조직 생산성 개선을 위해 개인과 조직 차원에서 추구해야 할 방향성 핵심 키워드는? 성장, 협력, 피드백, 의식적인 연습, 애자일, Mindfulness, 인지적 과정, 메타인지, 신뢰, 사회적 맥락 속 기술, 심리적 안전감 넓은 시야에서의 인사이트 - 애자일과 조직 생산성 애자일의 목표는 조직 생산성 개선입..