우테코(20)
-
레벨 1 회고
[로또 미션] 회고 : 수동적인 객체수동적인 객체는 항상 잘못된 것인가? 로또 시스템을 설계하는 과정에서 로또 객체는 스스로 당첨 여부를 판단해야 하는가? 라는 고민을 하게 되었다. 처음에는 현실 세계의 로또 티켓을 떠올mak-ing.tistory.com [출석 미션] 회고 : TDD를 미워합니다TDD는 직관적이고 이상적인 사이클을 따른다.RED: 실패하는 테스트를 먼저 작성한다.GREEN: 테스트를 통과할 최소한의 프로덕션 코드를 작성한다.REFACTOR: 코드를 리팩토링하여 개선한다. 먼저 확실mak-ing.tistory.com [블랙잭 미션] 회고 : Ace, Hit, SRPACE 블랙잭에서 ACE 카드는 특별한 존재다. 상황에 따라 1점 혹은 11점으로 점수가 달라질 수 있기 때문이다. ACE ..
2025.04.08 -
[장기 미션] 회고 : 객체
미션 시작 당일 아침에 체스가 아닌 장기로 변경됐다! 객체 객체지향이란 무엇일까? 단순히는 객체를 중심으로 문제를 해결하는 방식이라고 말할 수 있다. 그렇다면 여기서 말하는 '객체'란 무엇을 의미할까? 흔히 객체는 상태와 행동을 가진 존재라고 설명되지만, 나는 조금 더 넓은 시각에서 접근하고자 한다.객체란 책임을 다하는 존재라고 생각한다. 문제를 해결하기 위해 객체들은 서로 협력하며, 이 협력 속에서 각 객체는 자신에게 주어진 역할을 수행한다. 이 역할을 수행하려면 객체는 반드시 책임을 다해야 한다. 이런 관점에서 객체는 단지 상태(데이터)와 행동(메서드)을 묶어둔 것 이상의 의미를 가진다.한 걸음 더 나아가 '상태가 없는 객체'라는 개념을 생각해 볼 수 있다. 상태가 없다는 것은 내부적으로 데이터..
2025.04.05 -
[블랙잭 미션] 회고 : Ace, Hit, SRP
ACE 블랙잭에서 ACE 카드는 특별한 존재다. 상황에 따라 1점 혹은 11점으로 점수가 달라질 수 있기 때문이다. ACE 카드의 점수 결정 책임을 어느 객체가 관리해야할까?ACE의 점수 결정 책임은 게임이 관리카드는 자신이 ACE인지 아닌지만을 알고, ACE가 1점이나 11점 중 어느 값을 가질지는 Hand(Cards), Participants, Game과 같은 상위 객체가 관리 게임의 현재 상황이나 점수에 따라 ACE의 값이 결정되어야 하기 때문이다. 장점카드의 책임이 명확하고 단순해진다.ACE의 점수 결정 로직이 게임 흐름과 밀접하게 위치하므로, 게임 전체 흐름 파악이 용이할 수 있다.단점ACE 카드의 특별한 속성이 ACE 카드 클래스 코드에 명확히 드러나지 않는다.게임 로직 내부에서 ACE 점수..
2025.03.17 -
[출석 미션] 회고 : TDD를 미워합니다
TDD는 직관적이고 이상적인 사이클을 따른다.RED: 실패하는 테스트를 먼저 작성한다.GREEN: 테스트를 통과할 최소한의 프로덕션 코드를 작성한다.REFACTOR: 코드를 리팩토링하여 개선한다. 먼저 확실히 짚고 넘어가자면, 테스트는 중요하다. 나는 테스트를 사랑한다.테스트는 리팩토링할 때 자신감을 주고, 프로그램의 신뢰성을 확보하는 핵심 수단이다. 또한 코드의 동작을 명확히 전달하는 문서 역할도 한다. 테스트 작성에 최선을 다해야 하는 것은 분명 옳다. 그러나 TDD(Test-Driven Development) 방식에 대해서는 신중한 입장이다.작은 단위에 지나치게 집중할 가능성 TDD는 작은 단위에 집중하게 만든다. 하나의 테스트를 먼저 작성하고, 이를 통과하도록 만드는 최소한의 프로덕션 코드를 추가..
2025.03.05 -
[로또 미션] 회고 : 수동적인 객체
수동적인 객체는 항상 잘못된 것인가? 로또 시스템을 설계하는 과정에서 로또 객체는 스스로 당첨 여부를 판단해야 하는가? 라는 고민을 하게 되었다. 처음에는 현실 세계의 로또 티켓을 떠올렸고, 로또 티켓은 단순히 1 ~ 45의 숫자가 적힌 종이일 뿐이라고 생각했다. 현실에서는 당첨 여부를 판별하는 시스템이 따로 존재하므로, 로또 객체는 숫자만을 가지고, 당첨 여부 판단은 별도의 객체가 수행하는 것이 더 적절하다고 판단했다. 로또 객체는 숫자들을 저장하는 역할, 당첨 확인 객체는 당첨 여부를 판별하는 역할을 수행하게 되니 객체 간의 책임이 명확해지고, 유지보수가 쉬워지는 장점이 있다고 생각했다. 이 설계에 대해 크루와 논의하는 과정에서 이대로는 로또 객체가 너무 수동적인 존재가 되는 것이 아닌가? 라는 피드..
2025.02.19 -
2024
[데브코스 백엔드 1기] 회고반 년간의 데브코스를 마쳤다데브코스를 시작할 때, 나는 내가 경험해보지 못한 것이 나의 부족함이라고 정의했고, 그것을 채우는 것을 목표로 삼았다. 그러나 내가 이해했다고 여겼던 것들을mak-ing.tistory.com 우아콘 2024, 다녀왔습니다!기억에 남는 키워드 기획이 완벽하지 않더라도 서비스를 이해할 수 있어야 한다. 현업에서 중요한 능력인 것 같다.기획이 완벽하면 우리는 대체 가능한 인력이 된다. KPT 회고. 회고라는mak-ing.tistory.com [우테코 7기 프리코스 최종] 회고, 합격우테코 프리코스를 시작하며 다짐했다. "모든 것을 받아들일 수 있는 백지가 되자" 이미 익숙한 지식과 기술을 새롭게 배우는 자세로 임하고 싶었다. 그렇기에 프..
2025.01.02