분류 전체보기
-
[토비의 스프링 3.1 Vol.1] 8장 스프링이란 무엇인가?Java/Spring Framework 2018. 3. 25. 22:10
[사족] 토비의 스프링은 미괄식 구성이다. 1 ~ 7장에서 스프링을 사용하면서 장점과 특징들을 일단 살펴보고 나서야 8장에서 스프링이 무엇인지 알려주기 때문이다(스프링이 뭔지 아는데 700페이지나 지나서 알게 되었네!). 이제 1권은 9장만 남겨두고 있다. 1권 다 보면 당분간은 다른책 보는 비중을 좀 늘려야겠다. [내용] 8장의 목차8.1 스프링의 정의8.2 스프링의 목적8.3 POJO 프로그래밍8.4 스프링의 기술8.5 정리 사실상 자바생태계에서는 표준이 된 스프링이지만, 자바상태계를 잘 모르는 개발자에게 스프링이 뭔지 간단히 소개해야한다면 어떻게 말해줄 수 있을까? 그에 대해 가장 잘 알려진 정의는 다음과 같다고 한다. 각 수식어들에 대한 설명은 책을 참고하면 좋을 것 같다. 자바 엔터프라이즈 개발..
-
[토비의 스프링 3.1 Vol.1] 7장 스프링 핵심 기술의 응용Java/Spring Framework 2018. 3. 23. 00:14
[사족] 6장 리뷰 이후 1달정도 지났다. 중간에 자바 성능 튜닝 이야기를 읽은 이유도 있지만 7장도 6장 만큼 분량이 상당하다. 내용도 기능 추가 및 리팩토링으로 빠르게 전환되서 술술 읽히지도 않았다. 이제 토비스프링의 고비를 어느정도 넘긴거 같다. 완독도 그리 어려운 일은 아닐 것 같다는 생각이 든다. [내용] 7장의 목차 7.1 SQL과 DAO의 분리 7.2 인터페이스의 분리와 자기참조 빈 7.3 서비스 추상화 적용 7.4 인터페이스 상속을 통한 안전한 기능확장 7.5 DI를 이용해 다양한 구현 방법 적용하기 7.6 스프링 3.1의 DI 7.7 정리 6장까지 점점 더 객체지향적이고 모듈화된 코드를 작성해 왔다. 여기서 더 나아간다. DAO에 속해 있던 SQL을 분리한다. 처음에는 bean에 prop..
-
자바 성능 튜닝 이야기후기/Book Review 2018. 3. 6. 22:24
요새 개발 일을 하다가 자주 드는 생각 중에 하나는 코드를 잘 작성하는 것도 중요하지만 시스템과 인프라적인 이해도 참 중요하다는 생각이 든다. 무슨소린가 하면 언어 문법, 성능 좋은 코드 등은 책을 통해서 얼마든지 습득하고 이해할 수 있는 부분이다(물론 직접 해봐야 체득이 되겠지만 이건 논외로 치고). 하지만 서비스를 세팅하고 운영하고 트러블 슈팅을 하는 부분들은 책으로 쉽게 얻어질 수 있는 부분들이 아니다. 경험이 많을 수록 많이 알게 되긴 하겠지만 어디서부터 시작할지 아는 것이 쉽지 않다. 그런면에서 이 책은 자바 성능에 대해 폭넓게 설명하고 있는 책이라고 할 수 있다. 목차디자인 패턴, 꼭 써야 한다내가 만든 프로그램의 속도를 알고 싶다왜 자꾸 String을 쓰지 말라는 거야?어디에 담아야 하는지...
-
[토비의 스프링 3.1 Vol.1] 6장 AOPJava/Spring Framework 2018. 2. 20. 23:31
[사족] 토비의 스프링을 접한 이후로 7년만에 처음 펴보는 장이 아닌가 싶다. 생각보다 분량도 많고(약 150페이지) 쉬운 내용이 아니라 읽는데 오래 걸렸다. DI/IoC, 서비스 추상화와 더불어 스프링의 3대 핵심으로 불리우는 AOP이다. Transactional을 대충 갖다 쓰는것과 원리와 처리 과정 등을 명확히 아는 것에는 정말 차이가 있다고 느껴졌다. [내용] 6장의 목차6.1 트랜잭션 코드의 분리6.2 고립된 단위 테스트6.3 다이내믹 프록시와 팩토리 빈6.4 스프링의 프록시 팩토리 빈6.5 스프링 AOP6.6 트랜잭션 속성6.7 애노테이션 트랜잭션 속성과 포인트컷6.8 트랜잭션 지원 테스트6.9 정리 5장까지 서비스 추상화 기법을 도입해서 데이터 엑세스 기술에 독립적으로 깔끔하게 코드를 개선시..
-
러닝 HTTP/2후기/Book Review 2018. 2. 10. 01:56
페이스북에서 한빛미디어의 나는 리뷰어다 공지를 보고 읽을 만한 책이 있을까 해서 살펴보던 중 필요한 책이 있어서 신청하게 되었다. 작년에 HTTP 완벽 가이드를 보고 HTTP/2에 대한 내용이 궁금했었는데 마침 HTTP/2에 대한 최신 번역서가 나왔던 것이다. 회사에서도 얼마전에 HTTP2를 적용해서(내가 한건 아니지만) HTTP/1.1과 차이점, 새로 추가된 기능, 성능 등이 궁금했었다. 전체 목차는 아래와 같다.HTTP의 진화HTTP/2 맛보기웹을 파헤치는 이유와 방법HTTP/2로의 전환HTTP/2 프로토콜HTTP/2 성능HTTP/2 구현HTTP/2 디버깅하기다음은 무엇인가 HTTP는 웹의 아버지 팀버너스리경에 대한 이야기로부터 시작된다. 연구소에서 나온 결과물들을 관리하기 위해 도움을 주는 시스템을..
-
UML 실전에서는 이것만 쓴다후기/Book Review 2018. 1. 27. 23:29
개발서적들을 보면 가끔씩 다양한 다이어그램들을 사용한다. 클래스 다이어그램, 시퀀스 다이어그램, 유스케이스 등등. 그 때마다 어렴풋이는 무엇을 말하는지 알것 같지만, 정확하게 무엇을 뜻하는지 모르는 경우(화살표의 모양, 선이 점선인지, 숫자는 어떤 뜻인지 등등)가 종종있었다. 그 때마다 대충 이해하고 넘어갔지만 좀 더 확실하게 이해하고 정리를 하고자 이 책을 읽었다. 목차이 책의 개요다이어그램으로 작업하기클래스 다이어그램시퀀스 다이어그램유스케이스OOD(객체 지향 개발)의 원칙실천방법: dX패키지객체 다이어그램상태 다이어그램휴리스틱과 커피SMC 원격 서비스: 사례 연구부록1 분로 단위 테스팅 패턴부록2 프로세스(RUP vs. dX) 목차를 보면 모든 다이어그램들의 종류가 있지 않다. 왜냐하면 저자가 생각하..
-
Reflection 리플렉션Java/기본 2018. 1. 21. 23:46
토비의 스프링 3.1 Vol.1 6장을 읽다가 리플렉션에 대해 설명이 나왔는데 쉽게 잘 설명이 되있다. 그래서 책의 내용을 읽고 정리해보았다. 위키에 리플렉션에 대한 정의는 다음과 같다.반영(Reflection)은 컴퓨터 프로그램에서 런타임 시점에 사용되는 자신의 구조와 행위를 관리(type introspection)하고 수정할 수 있는 프로세스를 의미한다. “type introspection”은 객체 지향 프로그램언어에서 런타임에 객체의 형(type)을 결정할 수 있는 능력을 의미한다. 위의 설명만으로는 잘 와닿지 않는다. 아래는 책의 설명이다. 자바의 모든 클래스는 그 클래스 자체의 구성정보를 담은 Class 타입의 오브젝트를 하나씩 갖고 있다. '클래스이름'.class'라고 하거나 오브젝트의 get..
-
[2018.01.06] 함수형 자바스크립트 프로그래밍 세미나후기/세미나 2018. 1. 20. 16:25
올해 첫 세미나를 다녀왔다. 친구 조은이의 소개를 받아 알게되어 다녀왔다. 현재 업무에서 자바스크립트를 잘 쓰고 있지는 않지만 그래도 다녀온 이유는 내가 아직 스칼라를 함수형으로 사용한다는 느낌이 들지 않아서다. 함수형 패러다임에 대해 잘 이해하고 자바스크립트에서는 어떻게 구현할 수 있는지 알아보고 싶었다. (경품 1등 상품인 FC660C가 받고 싶었던 이유도 있었지만 실패) 출처: 온오프믹스 행사설명 페이지필기내용함수형 프로그래밍 부수효과를 줄임 -> 순수 함수 함수 조합성 -> 모듈화 수준 함수 개념을 가장 우선순위 함수형 사고방식은 문제의 해결 방법을 동사(함수)들로 구성(조합) 객체(데이터) 중심 -> 명사 + 동사함수중심 -> 동사 + 명사 함수의 특징 일급 함수 함수를 값으로 다룰 수 있다. ..