본문 바로가기
728x90

분류 전체보기107

[도서 리뷰] 리팩터링 2판 리팩터링 2판 리팩터링 2판 리팩터링의 원칙, 리팩터링이 무엇이며 왜 리팩터링을 해야하는지 이유와 그 방법에 대한 책이다. 마틴파울러가 컨설턴트로 있으면서들었던 리팩터링에 대한 질문과 그에 대한 마틴파울러의 생각, 그리고 켄트백 과 그의 지인들의 리펙터링에 대한 의견을 기술해 놓았다. 책에 대한 총평 프로그래밍 언어, 프레임워크에 대해 어느정도 익숙해진 개발자들이 더욱 좋은 개발자가 되는데 상당한 도움이 될 수 있을 책으로 생각한다. 좋은 코드라는 매우 주관적이고 감성적인 주제를 최대한 객관적인 시각으로 볼 수 있게 도와주는 책이라 생각한다. 책의 앞장부터 리팩터링을 하는방법 함수 추출하기 변수명 손보기 전역변수 빼기 의 내용을 앞장부터 나열하며 바로 본론으로 들어갔고 방법론을 제시하는데 솔직한 마음에는.. 2022. 4. 6.
[JPA] @Inheritance 테이블 상속 테이블 구조를 설계하다보면 중복항목, 혹은 분리된 테이블을 하나의 PK로 관리하고 싶은 충동을 느낄때가 있습니다. 이것은 특히 JPA를 사용하면서 이런경우 더 큰 충동을 일으켰습니다. 그러다가 JPA @Inheritance기능을 찾게되어 기록합니다. 먼저 @Inheritance는 3가지 전략을 지원합니다. 전략 상세 SINGLE_TABLE 한개의 테이블로 관리합니다. TABLE_PER_CLASS 부모테이블의 컬럼들을 자식테이블에 전부 추가한다 JOINED 부모테이블의 pk값을 자식테이블에 넣어주고 join전략을 통해 데이터의 연관관계를 유지한다. 공식 문서나 블로그의 글을 보면서 생각한 DB의 구조는 SINGLE_TABLE는 클래스 하나 TABLE_PER_CLASS 와 JOINED는 각 클래스마다 테이블.. 2022. 3. 15.
[도서 리뷰] 아파치 카프카 책에 대한 개인적인 생각과 책의 구성에 대해 간단하게 리뷰합니다. 먼저 카프카는 아파치 재단에서 만들어낸 메시지 큐 오픈소스입니다. 국내에 카프카를 도입하고 있는 회사가 아직 많지 않아서 그런지 책 혹은 강의가 아직 많지 않습니다. 먼저 데브원영님의 강의가 아직까진 제일 좋은 것 같아 아래 링크를 공유드립니다. https://www.youtube.com/watch?v=waw0XXNX-uQ&list=PL3Re5Ri5rZmkY46j6WcJXQYRlDRZSUQ1j 책의 내용은 대부분 실습 위주로 되어있어 hand's on 느낌이 있습니다. 하지만 읽다 보면 다른 hand's on 책들에 비해 이론적인 내용들이 잘 기술되어 있습니다. 대부분의 구성이 파티션, 토픽, 컨슈머, 프로듀서 4가지 주제를 메인으로 구성.. 2022. 3. 8.
[Docker] 도커란? 도커의 등장과 사용법 Docker 컨테이너란? 격리된 환경에서 실행하는 운영체제 수준의 가상화 기술입니다. 가상 머신과는 다르게 하드웨어를 가상화 하지 않고 커널을 공유하고 있기 때문에 속도가 빠르고 오버헤드가 많이 없다는 장점이 있습니다. 호스트 OS기준에 컨테이너는 프로세스 수준으로 인식하고 운영하지만 컨테이너 관점으로는 독립 환경을 가진 머신으로 인식됩니다. 도커 이전에는? 어떠한 인프라에 서비스를 설치하고 설정하는작업이 생각보다 귀찮고 복잡한 과정이다, pc, 사용환경 마다 설정 값도 달라질 것이고 업데이트를 한다고 하면 서버를 하나 새로 파서 war혹은 jar를 올리고 다시 tomcat 내리고 다시 빌드해서 war/jar를 다시 tomcat에 올리는 이런 작업들에 불편했으며 예전 legacy 서비스에 대해 업데이트 .. 2022. 2. 26.
728x90