전체 글
-
2020년 회고창작공간/일기 2021. 1. 31. 14:19
1월 안에는 회고 써야지 써야지 하다가 2월을 하루 앞두고 회고를 쓴다. 회고가 별 내용이 없지만 기록으로 남긴다는 것은 의미가 있다. 내년 회고를 쓸 때 참고를 할 수 있고 (이건 좀 아닌가), 과거의 내가 어땠는지 돌아보고 추억할 수 있다. 거창한 이벤트가 없었더라도 매 년 써야겠다. 회사 재직 만 2년 이상 다녀서 리프레시 휴가도 나오고(아직 쓰지는 않음) 인생에서 가장 오래 다닌 회사가 되었다. 친구들이 프로 이직러라 불렀는데 슬슬 그 타이틀이 어색해지고 있다. 중간에 다른 마음을 품기도 했었으나 여러가지를 따져 보았을 때 잔류를 택했다. 동료들이 좋고 팀웍이 좋고 (그런데 코로나가 터져 버렸다!) 업무적으로도 아직 배울 점들이 많이 있다고 생각해서다. 합병도 기다리고 있고 어수선한 분위기가 있지..
-
ParameterizedTypeReference (feat. Super Type Token)Java/Spring Framework 2020. 11. 26. 18:09
서론 스프링MVC에서 보통 API 통신은 RestTemplate을 활용해서 사용한다. restTemplate의 메소드 중 exchange를 많이 쓰고 아래 형식처럼 사용하고 있다. final List response = restTemplate.exchange( "http://localhost:18080/members", HttpMethod.GET, null, new ParameterizedTypeReference() {}, kycRequestId.toString()).getBody(); 5개의 argument 중에 1개가 눈에 걸린다. 네 번째 argument인 new ParameterizedTypeReference() {} 부분이다. 기존 코드들 복붙 해서 잘 돌고, 잘 쓰고 있긴 한데 왜 이렇게 쓰는..
-
Clean Code (2독)후기/Book Review 2020. 11. 15. 19:47
몇 달전에 클린코더를 읽었었고, 최근에 회사에서 클린 코드에 대한 강의를 들으면서 3년 전에 본 이 책을 다시 한 번 보면 어떨까 싶어서 다시 읽어 보았다. 목차 1장 깨끗한 코드 2장 의미 있는 이름 3장 함수 4장 주석 5장 형식 맞추기 6장 객체와 자료 구조 7장 오류 처리 8장 경계 9장 단위 테스트 10장 클래스 11장 시스템 12장 창발성(創發性) 13장 동시성 14장 점진적인 개선 15장 JUnit 들여다보기 16장 SerialDate 리팩터링 17장 냄새와 휴리스틱 부록A 동시성 II 부록B org.jfree.date.SerialDate 부록C 휴리스틱의 교차 참조 목록 책을 다독 하는 스타일이 아니라 (여러번 보는 것보다 새로운 책을 보는게 좋다고 생각) 3년전에 읽고 책장에 고이 꽂혀 ..
-
컴퓨터과학으로 배우는 블록체인 원리와 구현후기/Book Review 2020. 11. 9. 23:10
블록체인에 들어가는 수학, 암호학, 네트워크까지 다룬다는 점에 흥미를 느끼고 빌려보았다. 실제 js 코드로 블록체인도 구현한다. 목차 ◎ 1장: 블록체인의 등장 ◎ 2장: 네트워크 ◎ 3장: 기초 수학 ◎ 4장: 암호학 ◎ 5장: 사용 사례 ◎ 부록 아직도 블록체인에 대해 모호하다. 명확하게 머리에 그려지지 않아 빌려 보게 되었다. 아쉽지만 아직도 모르겠다. 수학, 암호학, 네트워크 등 블록체인에는 다양한 이론과 기술들이 필요하다는 것을 새삼 깨닫게 되었다. 게임이 그래픽, 음악, 스토리 등 종합선물세트인 것과 비슷한 느낌이랄까. 수학, 암호학 부분은 아무래도 내용을 다 이해하기가 어려웠다. 대충 그렇다는 흐름만 이해하고 넘어갔다. 수학과 암호학 쪽 공부도 더 필요할 것 같다. (정보보안기사 언제 따지)..
-
실전 자바 소프트웨어 개발후기/Book Review 2020. 8. 18. 23:03
객체지향 사고 프로세스와 마찬가지로 집앞 도서관에서 희망도서로 신청해 빌려서 읽은 책. 짧은 분량에 다양한 내용을 다루고 있다. 목차 chapter 1 여행의 시작 chapter 2 입출금 내역 분석기 chapter 3 입출금 내역 분석기 확장판 chapter 4 문서 관리 시스템 chapter 5 비즈니스 규칙 엔진 chapter 6 트우터 chapter 7 트우터 확장판 chapter 8 결론 200페이지 살짝 넘는 분량인데 상당히 많은 내용들을 다루고 있다. 그래서 깊이 있게 다루진 못하지만 중요한 개념들을 전체적으로 훑어주어 필요한 부분들은 더 찾아서 보면 되는 식으로 되어 있다. SOLID, KISS, TDD, 함수형 프로그래밍 같은 것들 뿐만 아니라 Maven과 Gradle, 이벤트 방식, H..
-
객체지향 사고 프로세스후기/Book Review 2020. 8. 11. 23:36
집 앞 도서관에 희망도서로 신청해서 빌려본 책. 도서관에 읽을 책이 없다면 내가 원하는 희망도서를 신청하면 된다. 길면 한달쯤 걸리는거 같고, 책이 도착하면 새책을 내가 첫번째로 빌려 볼 수 있다는 장점도 있다. 목차 CHAPTER 1 객체지향 개념 소개 1 CHAPTER 2 객체라는 관점에서 생각하는 방법 37 CHAPTER 3 그 밖의 객체지향 개념들 55 CHAPTER 4 클래스 해부하기 81 CHAPTER 5 클래스 설계 지침 95 CHAPTER 6 객체를 사용해 설계하기 113 CHAPTER 7 상속과 합성에 익숙해지기 131 CHAPTER 8 프레임워크 및 재사용: 인터페이스와 추상 클래스를 사용해 설계하기 155 CHAPTER 9 객체 구축과 객체지향 설계 185 CHAPTER 10 디자인 ..
-
자바와 JUnit을 활용한 실용주의 단위 테스트후기/Book Review 2020. 6. 14. 23:27
작년에 번역서 나왔을 때 읽어봐야지 했다가 이제야 읽어본다. TDD는 잘 안하지만 테스트는 좀 제대로 해보고자 회사 도서관에서 빌림. 목차 1장 첫 번째 JUnit 테스트 만들기 2장 JUnit 진짜로 써 보기 3장 JUnit 단언 깊게 파기 4장 테스트 조직 5장 좋은 테스트의 FIRST 속성 6장 Right-BICEP: 무엇을 테스트할 것인가? 7장 경계 조건: CORRECT 기억법 8장 깔끔한 코드로 리팩토링하기 9장 더 큰 설계 문제 10장 목 객체 사용 11장 테스트 리팩토링 12장 테스트 주도 개발 13장 까다로운 테스트 14장 프로젝트에서 테스트 부록 A 인텔리제이 IDEA와 넷빈즈에서 JUnit 설정 Eclipse(부록에서는 IntelliJ)에서 JUnit세팅 등 아주 처음부터 다루기 때문..
-
오브젝트후기/Book Review 2020. 5. 10. 17:13
1년에 걸쳐 다 읽게 된 책. 객체지향 프로그래밍이란 무엇인지 다시 생각하게 하고, 객체지향 프로그래밍이 쉽지 않다는 것을 알게 해 주었다. 목차 ◎ 1장: 객체, 설계 ◎ 2장: 객체지향 프로그래밍 ◎ 3장: 역할, 책임, 협력 ◎ 4장: 설계 품질과 트레이드오프 ◎ 5장: 책임 할당하기 ◎ 6장: 메시지와 인터페이스 ◎ 7장: 객체 분해 ◎ 8장: 의존성 관리하기 ◎ 9장: 유연한 설계 ◎ 10장: 상속과 코드 재사용 ◎ 11장: 합성과 유연한 설계 ◎ 12장: 다형성 ◎ 13장: 서브클래싱과 서브타이핑 ◎ 14장: 일관성 있는 협력 ◎ 15장: 디자인 패턴과 프레임워크 ◎ 마치며: 나아가기 ◎ 부록A: 계약에 의한 설계 ◎ 부록B: 타입 계층의 구현 ◎ 부록C: 동적인 협력, 정적인 코드 ◎ 부록D..