주간로그 52 - 현실과 다르게 객체들은 주도적인 역할을 한다.

kukjunLEE·2022년 12월 31일
0

Weekly Log(2022)

목록 보기
22/23
post-thumbnail

지난주 회고


면접 결과 천천히 기다리기.

면접 결과가 나오지 않았지만, 저번주와 다르게 마음을 비우고, 할일에 집중해서 그런지 크게 개의치 않았다. 물론 신경이 쓰이기는 했지만, 붙으면 좋고, 안붙으면 어쩔 수 없다는 생각을 가지고 나니, 내 할일에 집중할 수 있었다. 🥹




졸업작품 리팩토링 하기

저번주에 진행한 내용은 Entity를 만드는 것이었는데, 이번주에는 Entity에 필요한 Respository를 만들고, Service 제작을 진행했다. 모든 Service에 대해서 작성하지는 못했지만, 절반정도는 진행한 것 같다.

Service API 설계 현황


이번에 리팩토링을 하면서 중점적으로 보는 것은 코드의 역할을 구분하는 것이었다.
디자인 패턴을 적용해서 코드를 깔끔하게 짜는 것도 중요하지만, 이전 졸업작품에서는 역할이 제대로 나누어지지 않아 Service측의 코드가 너무 복잡했다. 이번에는 Domain, Entity에 역할을 미리 분할해서 Service로 책임이 넘어가지 않도록 해야겠다.


전과는 다르게 역할을 분리할 수 있게된 가장 큰 이유는 제목에 적힌 것처럼 객체들이 주도적인 역할을 한다는 것을 알게 되었기 떄문이다.

현실에서 사람이 물컵에 물을 채우는 일을 한다고 하면, 사람이 능동적인 주체고, 물컵에 물을 채우는 일은 사람이 하게 된다.

하지만 객체지향에서 사람이 물컵에 물을 채우는 일은 사람을 물컵에게 물을 채우라고 일을 위임하고, 물컵이 물을 채우게 된다.

객체지향에서 이러한 사실을 간과하고 현실에 기반한 설계를 하게 된다면, 사람에게 모든 책임이 전가된다. 😫

이러한 점을 충분히 고려해 코드를 작성해야겠다.




앞으로

면접 결과 천천히 기다리기(2)

아직 안나와서 좀 더 기다려야겠다. 😖




졸업작품 리팩토링 현황 남기기

블로그에 내용을 추가하는데, 졸업작품을 어떻게 변화시켰는지, 그래서 이전과는 어떻게 다른지에 대해서 서술하는 글을 작성하도록 하겠다.

profile
Backend Developer

0개의 댓글