주간로그 49 - 객체지향과 클래스지향

kukjunLEE·2022년 12월 11일
2

Weekly Log(2022)

목록 보기
19/23

지난주 회고


하이컨시 면접 합격

하이컨시 면접을 본 결과가 나오게 되었다...

결과는 ...




하이컨시 면접 결과

1차이긴 하지만 합격했다는 이야기를 들으니까 기분이 좋아졌다.
2차 면접도 준비를 잘 한 후에 잘 봐야겠다!!



내가 생각한 객체지향과 실제로 사용하는 객체지향의 괴리

이번에 개발을 진행하면서 졸업작품으로 만들었던 아키텍처 설계에 대해서 다시 생각해보게 되었다. 그러면서 내가 객체지향이라는 것에 대해 잘 아는가에 대한 질문을 직접 해보았는데, 아니었던 것 같다. 내가 여태까지 했던건 객체지향을 할 수 있도록 도와주는 프로그래밍 언어를 배웠을 뿐, 객체지향적으로 코드를 작성할 수 있냐고 물으면 ... 그렇지 못한 것 같다.

한가지 예시를 들어보자면, 한 사용자가 어떠한 게시글을 작성할 수 있다는 요구사항이 있다고 하면 내가 생각한 방법으로는

사용자가 게시글 작성이라는 기능을 수행할 수 있다. ->createPost()

이렇게 이해해서 사용자가 게시글을 생성하고 값을 채워넣는 코드를 사용자에게 주었다.

이렇게 생각하고 코드를 작성하다 보니, 난관에 봉착했다 ...
바로 Post의 정보를 조회하거나 찾는 모든 과정들이 User를 통한 메소드 호출로 이루어진다는 것이다.

내가 원하는 객체지향이 바로 이런것인가? User 객체는 본인만의 책임을 다 하고 있는가?
아무리 생각해봐도 이런건 객체지향이 아니고, 변화에 전혀 유연하지도 않다...

  1. Post의 요구조건 변경이 User에 직접적으로 영향을 끼치게 된다.
  2. Post를 조회하는 코드도, User객체를 무조건 거쳐야한다.

... 이 외에도 많은 문제점이 있다는 것을 알게 되었다.

내가 생각한 객체지향과 실제로 사용하는 객체지향의 차이점은 무엇일까에 대해서 깊게 고민해보게 되었다. 실제 객체를 사용하는 시점에 조립이라는 말을 키워드로 어떤 방식이 좋은 방법인가에 대해서 한번 생각해보고자 한다. 내가 너무 프로그래밍 언어에 집중해서 객체지향이라는 것에 대해서 잘 알지 못하게 되었다는 것을 깨닫게 해주는 한 주였다. 👏👏👏👏👏



김영한씨의 인프런 강의 수강 JPA 기본편

이번주 안에 다 듣기로 했던 JPA 기본편 강의 ... 되게 유익하고 좋았지만, 나에게 새로운 고민을 던져주었다. 바로 객체와 데이터베이스의 메커니즘이 전혀 다르다는 것이다!!
JPA는 객체와 데이터베이스의 메커니즘이 다른 것들을 맵핑하는 과정을 통해서 데이터베이스에 SQL문 없이 값을 수정, 삽입, 변경, 삭제할 수 있게 해줄 수 있었고 이를 통해서 개발자의 단순 노동을 크게 줄여주었다.

하지만 강의만 쭉 들으면서 해보기에는, Entity와 DB Mapping, 그리고 메커니즘에 이해 등 추가적으로 필요한 시간이 너무 많았다. 절반정도 밖에 듣지 못했는데, 다음주 중으로 다 듣는 것을 목표로 해야겠다. 어렵긴 하지만 너무 재미있고, 모르는 것을 알게 되는게 자꾸 흥미를 자극한다. ☺️




앞으로


하이컨시 2차 면접

아직 유선연락을 받지는 않았지만, 앞으로 2차면접 날짜를 위해 유선 연락이 올 것이다. 필요한 것들에 대해서 물어보고, 준비해가서 좋은 결과를 얻을 수 있도록 하겠다. 😤



객체지향을 위한 아키텍처 설계

아키텍처를 설계할 때, 예전엔 급하게 작성하느라 다이어그램도 제대로 작성하지 않고, 데이터베이스 기준으로 빠르게 진행했고, 그러다보니 많은 문제점들이 있단 것을 이제야 알게 되었다. 아키텍처를 설계해보고 여러 사람들에게 물어보자. 그래서 내 아키텍처에 대해서 여러 사람들의 의견을 수용한 후 진짜 객체지향적인 코드를 작성해보자

그리고 그러한 기록들을 정리해서 블로그에 남기자.



JPA 인프런 기본편 완강

JPA 인프런 기본편을 완강해보자. :) 내용에 대해 전부 이해하지 못하더라도 일단 다 읽어보자. 그리고 다시 읽자.



객체지향의 사실과 오해

객체지향의 사실과 오해라는 책을 추천받아 읽게 되었는데, 객체지향적인 코드에 대해서 고민을 조금씩 해결해주는 느낌을 받았다. 시간이 날 때마다 조금씩 읽어보자.

profile
Backend Developer

2개의 댓글

comment-user-thumbnail
2022년 12월 11일

좋은 결과가 있을겁니다~~ 파이팅!

1개의 답글