ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2022.03.07 TIL
    TIL 2022. 3. 8. 00:54

    오늘은 nextstep playground 좌표 계산기를 피드백을 받고 처음부터 다시 구현해 보는 작업을 진행하였다. 실습 링크

    정답 코드의 클래스 다이어그램을 보면서, 추상 클래스 혹은 인터페이스에 의존하는 형태로 구현된 것을 확인하였다. 다만 내가 다시 새로 만들 때는 처음부터 추상화를 하는 것이 아니라, 새로운 요구사항이 추가될 때 추상화하는 작업을 진행하였다. 아무래도 추상화는 복잡도가 증가하는 작업이다 보니, 나중에 변경되지도 않을 것에 대해 미리 추상화를 하는 것은 좋지 않다고 생각하기 때문이다. 비슷한 이유로 Service를 interface로 만들고 impl 키워드를 붙여서 구현하는 패턴을 매우 싫어한다. 추상화되어 있지 않은 클래스를 새로운 요구사항이 들어올 때 설계를 변경하는 것이 꽤나 재밌었고, 변화에 유용한 코드가 된 것 같아 앞으로도 계속 이런 방식으로 진행할 것 같다.

    피드백 받기 전 내가 짠 코드와 정답 코드의 차이점은, 도형이라는 하나의 속성을 뽑아내지 못한 것이 가장 큰 문제였고 이는 곧 한 클래스에서 많은 로직이 들어가게 되는 원인이 되었다. 이를 통해 코딩하기 전 인터페이스와 클래스를 먼저 설계하고 개발하는 것이 매우 중요하다는 것을 다시한번 깨닫게 되었다. 앞으로는 간단하게라도 이런 설계를 먼저 하도록 해야겠다.

    Action Plan

    • 섣부른 추상화보다는 새로운 요구사항이 들어왔을 때 추상화를 시도해보자.
    • 코드를 짜기 전에 먼저 설계를 하자.

    'TIL' 카테고리의 다른 글

    2022.04.10  (0) 2022.04.11
    2022.04.09 TIL  (0) 2022.04.10
    2022.03.06 TIL  (0) 2022.03.07
    2022.03.03 TIL  (0) 2022.03.04
    2022.02.25 TIL  (0) 2022.02.26

    댓글

Designed by Tistory.