MVVM 패턴을 이용한 엔터프라이즈 어플리케이션
라파엘레 가로팔로 지음, 김태규 외 옮김 / 비제이퍼블릭 / 2012년 6월
평점 :
장바구니담기


1

C#을 이용해서 MVVM 패턴을 간단(?)한 예제를 사용해서 설명하는 책이다. MVVM 패턴을 잘 설명하고 있으며, MVVM의 세부적인 컴포넌트에 대해서 개별 챕터에서 좀 더 자세히 설명하고 있어서 MVVM을 처음 접하는 개발자에게 추천할만하다.

2

예제가 C#으로 되어 있어서, 자바같은 객체지향 프로그래밍 언어에 대해서 약간의 이해가 있으면 더 좋은 독서가 될 것이고 그렇지 않다면, 예제 진행에 약간 어려움이 있을 것이다. 약간의 어려움이 있을 뿐이니 너무 걱정하지 않아도 좋다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
마츠모토 유키히로의 프로그래밍 언어 만들기 - Ruby 및 Streem을 통한 언어 제작 과정 살펴보기, 2020년 대한민국학술원 우수학술도서 선정도서 에이콘 프로그래밍 언어 시리즈
마츠모토 유키히로 지음, 김성준 옮김 / 에이콘출판 / 2019년 6월
평점 :
장바구니담기


1

여전히 나의 가장 큰 관심사이자 궁극적인 프로젝트인 언어 설계 및 개발에 관한 책이라 냉큼 사서 읽었다. 책의 내용이 어렵다는 것은 뒤로하고(쉬울리 있겠는가?) 개인적으로 책에 담겨진 내용은 언어 설계나 개발에 도움이 되었다.

2

하지만 언어 설계에 대한 고민이나 경험도 내가 기대했던 것보다 작아서 아쉬웠다. 다음에 좀 더 경험을 공유할 수 있는 책을 기대해본다.

그렇다면 "이제 와서 자기 제작 언어를 만들자는 제안은 무의미한 것일까?"라는 질문에 어디까지나 개인적인 의견이지만, 대답은 "아니오"다. 비록 현대라도 새로운 언어를 개인 차원에서 설계하는 것은 꽤 중요한 의미가 있다. 게다가 현재 폭넓게 사용되는 언어의 상당수는, 개발 환경이 쉽게 갖춰지고 난 후 개인 차원에서 설계 및 개발된 것이다. 개인 차원의 언어 개발이 정말 무의미했다면 루비도, 펄도, 파이썬도, 클로저도 탄생하지 않았을 것이다.


대부분의 소프트웨어 개발자에게 중요한 것은 컨커런트 프로그래밍이다. 즉 컨커런트한 소프트웨어를 개발해 두면 OS 실행 환경이 CPU의 수에 따라 하나밖에 없으면 외관상의 동시 실행에, 복수로 있으면 진정한 동시 실행으로 전화해 주면 되기 때문이다.


스레드의 특징은 뭐니뭐니해도 메모리 공간을 공유하므로, 스레드 간의 통신 비용이 낮은 점이다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
자바 API 디자인 - 자바 프레임워크 아키텍트가 알려주는 API 설계 이론과 실제 위키북스 IT Leaders 시리즈 22
야로슬라프 툴라흐 지음, 이대엽 옮김 / 위키북스 / 2015년 5월
평점 :
장바구니담기


1

API가 별건가 싶었던 어린 시절을 거쳐서, 그래봐야 API야라고 생각하고 있는데 현재까지 API 디자인에 대해서 많은 고민을 했지만 딱히 답도 없고 그렇다고 참고할 만한 뭔가(github api 문서?)가 없었다.

몇 해 전에 읽었던 책을 다시 뒤적였다. 이젠 나이가 들어서 그런지 아니면 실력이 조금 좋아졌는데 책을 읽으면서 몇몇 구절에선 깊은 공감을 하였고, 어떤 부분에서 남일 같지 않았던 에피소드도 있다.

2

API 디자인에 관한 어느 개발자의 현실적인 에피소드와 이야기를 엿보고 싶다면 이 책을 천천히 읽어보자. 꼭 처음부터 읽지 않아도 좋으니 «[3부] 일상 생활»은 서점에서 뒤적여보고 마음에 든다면 구입해 보자.

[…] 우리는 개발자들이 가장 하고 싶어하는 일, 즉 라이브러리를 이용해 애플리케이션을 만드는 일을 할 수 있도록 즉시 준비돼 있는 문서를 갖게 되길 바란다.


라이브러리를 변경해야 할 때마다 변경사항의 가장 중요한 측면에 집중해야 한다. 그게 뭐냐고? 바로 변경된 동작 방식이다

훌륭한 API 설계의 또 한 가지 측명은 자기 문서화(self documentation)이다. 사실 프로퍼티 포맷과 XML 포맷 모두 자기 문서화를 올바른 방향으로 지향한다.

[…] 지원 중단된 요소는 API 사용자가 좀 더 현대적인 대체재로 옮겨가도록 장려하거나 API를 처음 사용하는 사람들이 API에서 이미 낙후된 요소를 사용하지 않도록 방지하는 중요한 수단이다.

[…] "크기"는 외부 의존성의 수로 측정된다. 모든 라이브러리의 의존성을 충족시키는 데 필요하다는 이유로 단순히 수십 또는 수천 개의 추가적인 라이브러리에 의존한다거나 어떤 작지만 유용한 기능을 담고 있다는 이유로 단 하나의 라이브러리에 의존하는 것은 굉장히 바람직하지 않은 일이다.


댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
자바와 JUnit을 활용한 실용주의 단위 테스트 - 클린 코드의 핵심, 단위 테스트로 소프트웨어 품질을 향상시킨다!
제프 랭어.앤디 헌트. 데이브 토머스 지음, 유동환 옮김 / 길벗 / 2019년 7월
평점 :
장바구니담기


1

예제를 중심으로 단위 테스트를 작성하는 방법과 원칙에 대해서 소개하는 책이다. 테스트 코드를 처음 작성하는데 좋은 길잡이가 되어줄 내용이 많다.

2

JUnit을 잘 사용하면 예제 활용이 수월할 것이고, JUnit을 처음 사용한다면 잔잔한 고난이 있을 수 있다. 그럼에도 불구하고 국내에 출간된 단위 테스트 관련 책 중에서 발군이라 할 수 있다.


댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
C++ 최적화 - 최고 성능을 구현하는 10가지 검증된 기법
커트 건서로스 지음, 옥찬호 옮김 / 한빛미디어 / 2019년 7월
평점 :
장바구니담기


1

이번 파이콘(2019)에서 파이썬 3.7 어찌 그렇게 빨라졌나세션을 들었다. 해당 세션을 들으면서 CPython에 대한 호기심이 생겼고, 덕분에 C/C++을 좀 더 공부해야겠다고 생각했다. 약 10년 가까이 Java와 Python으로 대부분의 업무를 처리했는데, 아주 어린시절 정말 즐겁게 가지고 놀던 언어인 C/C++에 대한 아련함이 떠올랐지만 너무 오랜 시간 해당 언어를 사용하지 않아서 코드 작성, 개발 환경, 그리고 용례나 관례에 대한 감이 전혀 없는 상태였다.

이것이 책 표지

2

C++ 문법은 예전에 배워서 대충 알고 있다고 생각해서, 문법도 복습하고 요즘 나오는 C++ 용례나 관례를 알아보고 싶었는데, 책에서 C++11, C++14, 그리고 C++17 이런거 보면서 약간 동공지진(!)이 왔다.

C++ 17

대부분의 내용은 일반적인 C++(책을 찬찬히 읽어본 결과 C++11이전?)에 대한 내용은 기본적으로 알아야 읽을 수 있다. 제목에서 «최적화»라고 해서 약간 어렵겠진 생각했는데 C++에 대한 문법 이해와 일반적인 코드 작성 능력만 있으면 읽는데는 크게 무리없을 것으로 생각된다. 앞부분에 개략적인 내용이 나오니 그 부분부터 잘 읽어두면 좋을 듯 싶다. 그리고 «검색 및 정렬 최적화»와 «자료구조 최적화» 부분등과 같이 여러 언어에서 사용하는 기법의 경우 C++ 뿐만 아니라 Java나 Python 등에서 고려해볼만한 내용이 많았다.

3

C++11 이후로 문법에 몇가지 변화가 있었고, 문법뿐만 아니라 개념적으로 변화가 있었던 것으로 보인다. 해당 책에선 C++11 이후의 문법뿐만 아니라 C++11 이전의 경험을 가진 개발자를 위해서 두 가지 설명을 병행해서 하기 때문에 C++ 문법을 아는 개발자라면 코드 리딩 및 작성에서 좋은 지침이 될 것이다.

어색한 맞춤법

번역자분의 C++에 대한 탁월한 식견, 그리고 좋은 번역 덕분에 약간 어렵지만 많은 도움이 되는 책을 읽었다. 덕분에 CPython을 분석하는데 여러가지 도움이 되었다.


댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo