책 정리
읽을 책
- 웹을 지탱하는 기술
- 데이터 중심 애플리케이션 설계
- 테스트 주도 개발
- 도메인 주도 개발
- 유닛 테스트
- 만들면서 배우는 클린 아키텍처
- https://product.kyobobook.co.kr/detail/S000001057716
- https://www.yes24.com/Product/Goods/109747932
- https://www.inflearn.com/pages/weekly-inflearn-35-20211026
- ...
+ 호눅스..
개발자 지망생을 위한 주관적 추천도서
최종수정일: 2021년 8월 5일
www.notion.so
읽은 책
토비의 스프링 3.1 세트 - YES24
『토비의 스프링 3.1』은 스프링을 처음 접하거나 스프링을 경험했지만 스프링이 어렵게 느껴지는 개발자부터 스프링을 활용한 아키텍처를 설계하고 프레임워크를 개발하려고 하는 아키텍트에
www.yes24.com
굉장히 두꺼워서(800p 가량) 처음에 겁을 먹을 수 있다. 근데 어려운 말들이 아닌 읽기 쉬운 말들과 적절한 예제들이 같이 있어서 따라 치며 코딩하면 어느 정도 쉽게 읽을 수 있다.
vol.1은 기본적인 spring의 핵심원리 등을 설명한다. spring이 탄생의 이유, 적절한 사용 방법 등을 익힐 수 있었다.
mvc에 대한 설명과 3.1로 넘어오면서 많이 바뀐 어노테이션 설정들에 대해 알 수 있다.
mvc가 어떻게 동작하는지 애매하게 알고 있다면, 이 책을 통해서 남들에게 설명할 수 있는 수준이 될 수 있다.
2021.09
오브젝트 - YES24
역할, 책임, 협력을 향해 객체지향적으로 프로그래밍하라!객체지향으로 향하는 첫걸음은 클래스가 아니라 객체를 바라보는 것에서부터 시작한다. 객체지향으로 향하는 두번째 걸음은 객체를
www.yes24.com
객체지향에 대해 자세히 경험할 수 있다. 다양한 예제들이 존재. 너무 유명한 책이라 읽는 내내 재밌었다.
영화관 예매를 통해 다형성 등을 확인하고 실습할 수 있다. 객체지향의 사실과 오해를 읽고 나서 읽으면 더 좋을 듯하다.
데이터베이스 개론 - YES24
기초 개념부터 빅데이터까지큰 흐름이 보이는 데이터베이스 교과서데이터베이스로 첫 항해를 떠나는 이들에게 지도와 돛이 되어주는 책이다. 마인드맵으로 생소한 개념 간의 관계를 한눈에 보
www.yes24.com
DB의 기본 지식을 다시 점검할 수 있었다. 이제 좀 더 깊은 DB책을 읽어야겠다.
Real MySQL 8.0 (1권) - YES24
『Real MySQL 8.0』은 『Real MySQL』을 정제해서 꼭 필요한 내용으로 압축하고, MySQL 8.0의 GTID와 InnoDB 클러스터 기능들과 소프트웨어 업계 트렌드를 반영한 GIS 및 전문 검색 등의 확장 기능들을 추가로
www.yes24.com
mysql 8.0의 인덱스 종류, 격리 수준, 쿼리 최적화. 엔진 등을 알 수 있었음. 뒤 쪽의 옵티마이저에서 하차했음. 나중에 와닿을 때 다시 읽어야겠다. 2021.11
DDD START! - YES24
DDD의 핵심 개념을 배우고 구현으로 익히기!이 책은 DDD(도메인 주도 설계)를 처음 접하는 개발자를 위한 책이다. DDD를 실제 업무에 적용할 수 있도록 기본적인 이론을 설명하고 이를 구현한 코드
www.yes24.com
평소에 repository와 service를 쓰면서 왜 쓸까라는 궁금증이 있었는데
영속성을 처리하는 기능은 리포지토리에서, 엔티티에 속하지 않는 도메인 로직은 서비스에서.
대부분 도메인 로직으로 처리를 하지만 여러 엔티티를 사용할 때나 복잡한 계산 로직은 서비스에서 한다는 것을 명확하게 알았다.
예외 같은 경우는 빈 값, null 값 예외는 컨트롤러나 도메인에서, 비즈니스 예외는 서비스 계층에서 이뤄져야 하는 것도 알게 되었다.
이 처럼 기본적은 DDD콘셉트와 여러 유용한 정보가 많아서 좋은 책이다.
스프링 입문을 위한 자바 객체 지향의 원리와 이해 - YES24
자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량 애플리케이션 프레임워크인 스프링은 자바와 객체 지향이라는 기반 위에 굳건히 세워져 있다. 따라서 스프링을 제대로 이해하고 활용
www.yes24.com
내가 기대한 내용이 아니었다.
책 내용은 java의 기초지식과 객체지향 맛보기 등인데
나는 spring의 기초를 알고 싶었는데..
그래도 디자인 패턴이라던지, 스프링의 3대 요소라던지 구성요소는 알차다.
그림으로 배우는 HTTP & Network - YES24
이 책은 웹의 근간을 이루는 HTTP를 중심으로 하여 웹, 인터넷 데이터 통신 분야의 기초가 되는 내용들을 다루고 있다. 관련 분야를 배우고자 하는 독자들을 위해 만화 캐릭터와 일러스트를 활용
www.yes24.com
1월에 읽던 책을 마저 읽었다.
기본적으로 http가 무엇인지 , tcp/ip에 대해선 짧게 다룬다.
요청과 응답에 들어 있는 헤더들을 상세하게 다루고 웹 공격에 대한 내용까지 마지막에 다룬다.
솔직히 완벽히 이해하지를 못했다. 모두의 네트워크를 다시 읽고 다시 한번 더 읽어봐야겠다.
그전에 DB책부터 읽고..
객체지향의 사실과 오해 - YES24
『객체지향의 사실과 오해』는 객체지향이란 무엇인가라는 원론적면서도 다소 위험한 질문에 답하기 위해 쓰여진 책이다. 안타깝게도 많은 사람들이 객체지향의 본질을 오해하고 있다. 가장
www.yes24.com
객체지향 초보자용 책으로 소개되는 책이다. 일단 처음 부분에서는 술술 읽혔는데 뒷부분에서는 많이 놓쳐서 몇 번이나 다시 읽었다.
전체적으로 설명하는 것은 객체지향적으로 설계를 하는 법을 저술했다. 클래스 관점에서 보지 말고 객체의 관점에서 봐야 한다고 말한다. 우리가 늘 객체지향을 말할 때 클래스를 먼저 꺼내는데 그 점을 지적하고 있다.
객체에는 협력과 역할, 책임이 있다. 협력을 설계할 때는 메시지를 가장 먼저 생각하고 그 메시지를 행할 객체를 정해야 한다.
메시지를 통해 역할을 가진 객체에게 output을 요청하고 메시지를 받으면 책임을 지고 자율적으로 output을 반환해야 한다.
자율적인 책임은 협력을 단순하게 만든다. 그로 인해 대체 가능성을 열어 놓을 수 있다. -> 확장 가능성
이런 설계를 책임 주도 설계라고 한다. TDD는 책임 주도 설계를 하는 가장 완벽한 방법이지만 초보자는 쉽지 않고 디자인 패턴을 이용하는 것이 좋다. 디자인 패턴은 선배 개발자들이 미리 설계해둔 결과물이다.
이외에도 좋은 내용이 많다.
읽고 나서 느낀 점은 앞으로 조금 큰 협력을 설계할 때는 메시지를 먼저 생각하고 인터페이스를 만들어 객체를 분류하는 작업을 해야겠다고 느꼈다. 나중에 한번 더 읽어봐야 머릿속에 남을 거 같다.
Refactoring 리팩토링 - YES24
리팩토링은 소프트웨어를 개선하는 검증된 방법이다. 리팩토링은 외부 동작을 바꾸지 않으면서 내부 구조를 개선하는 방법으로, 소프트웨어 시스템을 변경하는 프로세스이다. 이것은 버그가
www.yes24.com
항상 코드의 구조를 바꾸거나 중복 코드를 제거하고 커밋에 리팩터링을 언급했었다.
그 리팩터링에도 방식이 있고 어느 정도 효과적인 방안들을 엿볼 수 있다.
저급 리팩터링은 대부분 겪어봤던 것들이고 고급 리팩터링도 어느 정도 맛을 봤던 것이라 어렵지 않게 읽었다.
한 가지 얻어가는 것은 null객체를 이용해 ex) customer!= null을 줄이는 법을 배웠다는 것이다.
이 점은 실무에서도 잘 쓸 수 있을 듯하다.
Clean Code(클린 코드) - 교보문고
애자일 소프트웨어 장인 정신 | 나쁜 코드도 돌아는 간다. 하지만 코드가 깨끗하지 못하면 개발 조직은 기어간다. 매년 지저분한 코드로 수많은 시간과 상당한 자원이 낭비된다. 그래야 할 이유
www.kyobobook.co.kr
너무 유명한 책이라 기대를 많이 하고 봤다. 냄새와 휴리스틱 부분은 clean code를 작성하기 위해서 추천하는 챕터이고 나머지 부분은 아직 내 수준이 높지 않아서 인지 리팩터링 책 보다 더 재미없었다. 점진적인 개선을 하는 부분이 있는데 코드 량이 많고 책을 이리저리 왔다 갔다 해야 해서 보기 불편했다.
Kotlin in Action - YES24
코틀린이 안드로이드 공식 언어가 되면서 관심이 커졌다. 이 책은 코틀린 언어를 개발한 젯브레인의 코틀린 컴파일러 개발자들이 직접 쓴 일종의 공식 서적이라 할 수 있다. 코틀린 언어의 가장
www.yes24.com
코틀린 공부를 위해 읽었다. 자바와 다른 점등을 소개해주고 유용한 팁 등을 알려준다.
자바를 알고 있고 코틀린을 배우고자 한다면 좋은 책이다.
자바 ORM 표준 JPA 프로그래밍 - 교보문고
스프링 데이터 예제 프로젝트로 배우는 전자정부 표준 데이터베이스 프레임 | ★ 이 책에서 다루는 내용 ★■ JPA 기초 이론과 핵심 원리■ JPA로 도메인 모델을 설계하는 과정을 예제 중심으로
www.kyobobook.co.kr
jpa의 기본 서적으로 알려져 있는 책으로 jpa에 대해 기본 개념 등이나 사용법을 알 수 있다. 예제도 준비되어 있으니 따라 하면 좋다. 본인은 강의를 접하고 나서 책을 읽은 것이라 더 알고 싶었던 점(락, 설정 차이) 등을 중심으로 읽었다.
강의에는 책에 없는 꿀팁들이 있었던 것으로 기억한다(여러개의 컬렉션을 loading 할 때 1+1등을 발생시켜 처리할 수 있다)
이펙티브 코틀린 - 교보문고
안전성, 가독성, 코드 설계, 효율성을 향상시키기 위한 52가지 전략과 기법 | ‘1부: 좋은 코드’에서는 좋은 품질의 코드를 만들기 위한 일반적인 규칙을 설명합니다. 이 부에서는 프로젝트의 규
www.kyobobook.co.kr
코틀린을 사용하며 지켜야 할 규칙 or 지켰으면 하는 규칙들이 있다.
코틀린인액션은 코틀린 기본 문법을 공부할 목적이었다면 이 책은 어떻게 코틀린을 더 코틀린답게 쓸지를 알기 위해 읽었다.
엔터프라이즈 애플리케이션 아키텍처 패턴(재출간판) - 교보문고
엔터프라이즈 애플리케이션 구축을 위한 객체지향 설계의 원리와 기법 | 이 책은 『엔터프라이즈 애플리케이션 아키텍처 패턴』의 재출간판이다. 『리팩토링』의 저자로도 잘 알려진 마틴 파
www.kyobobook.co.kr
인프런 향로님의 추천으로 읽게된 책이다.
아키텍처들을 소개해 주는데 옛날 책이다 보니 요즘 일반적으로 쓰이는 패턴들이 많이 소개된다.
도메인 패턴이라던지. 동시성 해결을 위한 락에 관해서인지.
또 JPA에서 사용된 것으로 생각되는 아키텍처들이 소개된다.
그래서 아~ JPA도 이런식으로 만들어졌겠구나라고 생각할 수 있었다. 22.09.18
엔터프라이즈 자바 마이크로서비스 - YES24
마이크로서비스 아키텍처로 전환하려는 개발자를 위한 본격 활용 안내서 JVM 기반 마이크로서비스 애플리케이션을 설계하고 구축하는 방법을 알려준다. 전통적인 Java EE 애플리케이션과 마이크
www.yes24.com
https://gisungcu.tistory.com/451
https://gisungcu.tistory.com/442
회사의 프로젝트 구조가 MSA 구조라 책을 읽어봤다.
현재의 스타트업에서는 MSA의 장점 보다는 단점이 조금 더 많은 거 같다.
스타트업은 생산 속도가 중요한데 많이 쪼개져 있으니 작업해야 할 양이 모놀리틱 구조보다 많아져 버렸다.
2022.12.13
개발자도 궁금한 IT 인프라 - YES24
최강 조합의 IT 인프라 만담가 3인이 뭉쳤다!이 책은 IT 인프라 기술에 관심이 있거나 입문하려는 분들에게 필요한 기술과 현장의 생생한 이야기 등 꼭 알려주고 싶은 이야기를 담았습니다. IT 인
m.yes24.com
2023.01.30
적정 소프트웨어 아키텍처 - 예스24
소프트웨어 개발자를 위한 실용 가이드 이 책은 소프트웨어 개발을 시작할 때 필요한 실용 가이드북이다. 소프트웨어 아키텍처의 리스크는 무엇인지, 아키텍처 설계 원칙은 어떻게 적용하고 해
m.yes24.com
2023.06.15
실용주의 프로그래머 - 예스24
『실용주의 프로그래머』는 당신이 읽고, 또 읽고, 수년간 또다시 읽게 될 몇 안 되는 기술 서적이다. 당신이 이 분야에 처음 발을 디딘 사람이건, 경험 많은 전문가이건 매번 새로운 통찰을 얻
m.yes24.com
2023.06.29
카프카, 데이터 플랫폼의 최강자 - YES24
데이터 플랫폼의 핵심 컴포넌트로 각광받고 있는, 이벤트 기반 비동기 아키텍처를 위한 고가용성 실시간 분산 스트리밍 솔루션 카프카(Kafka)의 모든 것!국내 최대 모바일 플랫폼 회사인 카카오
www.yes24.com
2023.07.15
아파치 카프카 애플리케이션 프로그래밍 with 자바 - 예스24
아파치 카프카 애플리케이션 개발을 위한 「실전 가이드」아파치 카프카란 무엇일까? 카프카 애플리케이션은 어떻게 만들까? 데이터 파이프라인을 만들기 위해 어떤 카프카 라이브러리를 사용
www.yes24.com
2023.08.08
파이브 라인스 오브 코드 - 예스24
구체적인 규칙에 초점을 맞춰 모든 메서드를 5줄 이하로 줄이는 리팩터링을 가르쳐 준다!기존 코드를 개선하는 것(리팩터링)은 프로그래머가 맞닥뜨리는 가장 일반적인 작업 중 하나다. 『파이
www.yes24.com
2023.09.05
가상 면접 사례로 배우는 대규모 시스템 설계 기초 - 예스24
“페이스북의 뉴스 피드나 메신저, 유튜브, 구글 드라이브 같은 대규모 시스템은 어떻게 설계할까?”IT 경력자라도 느닷없이 대규모 시스템을 설계하려고 하면 막막하다고 느낄 수 있다. 특히나
www.yes24.com
2023.11.05
어떤 개발자가 살아남는가 - 예스24
“프로그래밍을 당하는 자가 될 것인가? 프로그래밍을 하는 자가 될 것인가?”AI를 이기는 기술, 인문학으로 개발하라인간은 인공지능에 맞서 어떻게 우위를 가질 수 있는가? 최후에 살아남는
www.yes24.com
2023.12.23
클라우드 네이티브 애플리케이션 디자인 패턴 - 예스24
API, 데이터, 이벤트 및 스트림을 이용한 실무 패턴클라우드가 제공하는 강력한 비용 절감 효과와 확장성 덕분에 클라우드 네이티브 애플리케이션은 이미 많이 도입되었다. 이제는 도입보다는
www.yes24.com
육각형 개발자 - 예스24
육각형 개발자가 좋은 개발자다!스포츠계에서 각종 능력치가 고루 균등한 선수를 육각형 선수라고 부른다. 이 책의 제목이기도 한 육각형 개발자는 다양한 역량을 고루 갖춘 개발자라는 의미이
www.yes24.com
2024.04.25