이전

리뷰 (2)

한줄평
평점 분포
  • 리뷰 총점10 0%
  • 리뷰 총점8 100%
  • 리뷰 총점6 0%
  • 리뷰 총점4 0%
  • 리뷰 총점2 0%
연령대별 평균 점수
  • 10대 0.0
  • 20대 0.0
  • 30대 0.0
  • 40대 8.0
  • 50대 8.0
리뷰 총점 종이책
소프트웨어 개발 지식의 확정과 소통
"소프트웨어 개발 지식의 확정과 소통" 내용보기
흔히들 이런 말들을 한다. ‘아는 만큼 보인다’.이말은 그 만큼 알고 있는 것들-지식 또는 지혜-이 충분해야 가능한 것이다. 조지 오웰의 디스토피아 소설 ‘1984’를 보면 사람들의 생각을 통제하기 위해 통제된 새로운 언어를 만드는 일들이 나온다. 또한 프랑스어에는 나방과 나비를 구분하는 단어가 없이 ‘파피용’이 두 가지를 모두 지칭한다고 한다. 즉 언어는 사고를 제한하기도
"소프트웨어 개발 지식의 확정과 소통" 내용보기

흔히들 이런 말들을 한다. ‘아는 만큼 보인다’.

이말은 그 만큼 알고 있는 것들-지식 또는 지혜-이 충분해야 가능한 것이다.

 

조지 오웰의 디스토피아 소설 ‘1984’를 보면 사람들의 생각을 통제하기 위해 통제된 새로운 언어를 만드는 일들이 나온다. 또한 프랑스어에는 나방과 나비를 구분하는 단어가 없이 ‘파피용’이 두 가지를 모두 지칭한다고 한다. 즉 언어는 사고를 제한하기도 하지만, 언어로 사람의 생각의 내연을 깊게 하고 외연을 넓히는 역할도 수행한다.

 

소프트웨어 개발도 마찬가지다. 첫째, 소프트웨어 개발에 필요한 지식-언어, 알고리듬, 아키텍처, 패턴 등-이 넓고 깊게 알고 있는가와 둘째, 개발자 사이의 소통(communication)을 위한 언어를 얼마나 능숙하게 구사할 수 있느냐이다. 두 가지 요소를 얼마나 갖추냐가 개발자의 개발 역량을 향상시키는데 중요한 역할을 한다.

 

소프트웨어 개발에서 ‘패턴’이라고 부르는 지식은 '지식이라는 측면'과 '소통이라는 측면'에서 중요한 역할을 한다. 마틴 파울러의 엔터프라이즈 애플리케이션 패턴(PoEAA)는 엔터프라이즈 애플리케이션 개발에서 상당한 아이디어와 소통의 용어를 제공하기 때문에 이를 알고 있으면 개발 스킬을 향상시키고 소통의 편리성을 제공한다.

 

그럼에도 불구하고 ‘마틴 파울러’의 책들은 비교적 읽기가 어렵다. 이유는 이런 종류의 책들이 그렇듯이 설명이 누구나 알기 쉽게 이해할 수 있을 정도로 친절하지 않다는 것이다. 이 외에도 원문자체도 깔끔하게 번역하기가 비교적 어려운 문체라는 것이다. 지금까지 ‘마틴 파울러’가 관여한 책 중에서 읽기 쉬운 책은 한 권도 없었던 것으로 기억한다. 

 

이 책 또한 그런 류(類)의 어려움을 가진 책 중에 하나라는 것이 개인적인 판단이다. 이런 수준에서 번역도 극악인 경우에는 도대체 무슨 말을 하고 싶은 것인 것 모르는 상태에 이르게 된다. 예전에 ‘피어슨 에듀케이션’ 버전이 그런 종류의 책이였다. 이 책은 그나마 번역이 매끄러운 편이라 꼼꼼히 읽으면 내용을 이해할 수준이 된다. 즉, 이전 판(edition)의 책에 비하면 번역이 좋다. 

 

그런데 문제는 다른 곳에 있었다. 책을 번역할 때, 한글 번역에 너무 치중했다.

1. 패턴 이름을 한글화하고 원래 패턴이름을 병기하지 않았다. 한글로 된 패턴 이름을 보면 원래 패턴이름을 어느 정도 유추할 수 있지만 그 보다는 패턴 설명을 시작하는 패턴 이름을 병기해 주면 좋았을 듯 하다.

2. 클래스 다이어그램도 같은 문제가 있다. 클래스 다이어그램의 클래스나 인터페이스를 한글화해서 소스 코드 단락과 연관시켜 보기가 불편하다.

3. 한글화한 용어가 현업에서 사용하는 ‘용어’와 약간의 괴리가 있다. 예를 들어, logic을 논리로 일괄적으로 번역해서 비즈니스 논리로 번역한 부분이다. 보통 현업에서는 ‘비즈니스 로직’이라고 사용하지 ‘비즈니스 논리’라고 사용하지 않는다.

 

이 외에도 원서가 가진 아쉬운 점과 문제점도 있다.

1. 클래스 소스 코드 단락의 상단 부분이 생략되어 있다. 특히 상속(Inheritance)이 같은 코드들이 대부분 생략되어 있고 이를 한눈에 파악할 수 있는 클래스 다이어그램도 부족하다.

2. 패턴의 설명이나 장/단점을 설명할 때, 장문으로 늘여서 써서 요지를 파악하기 위해 상당한 노력이 필요하다. 대부분의 원서에서 자주 있는 일이지만, 설명도 쉽지 않은데 텍스트 분량이 집중적으로 많은 것은 불친절하다고 생각한다.

3. 원서도 출판된 지 오랜 시간이 지난 책이기 때문에, 서술한 기술적인 부분들이 현재 자주 사용하는 기술들과 차이가 있다. 또한 패턴을 구현한 프레임워크가 오픈소스(Open Source) 형태나 밴더(Vendor)에서 배포하는 형태로 많이 나와 있으나 이런 기술들을 충분히 설명하고 있지 못하다.

 

위에서 단점들만 나열해서 나쁜 인상을 줄 수 있지만, 엔터프라이즈 애플리케이션 아키텍처 패턴(PoAEE)에서 다루는 패턴들은 충분히 공부할 가치가 있고 공부해야하는 이유는 개발지식의 깊이와 확장, 소통에 꼭 필요하기 때문이다.

 

개발이 단조롭게 느껴지거나 뭔가 새로운 돌파구가 필요한 개발자라면 정독 후 필요할 때마다 읽어보길 권장한다. 

 

닷넷 개발자라면 아래 서적을 먼저 보기를 추천한다.

 

프로페셔널 엔터프라이즈 닷넷

프로페셔널 엔터프라이즈 닷넷 

존 아킹스콧 밀렛 공저 / 장현희

대중적인 소프트웨어 개발 패턴과 방법론에 대해 소개하는 책이며, 이러한 패턴과 방법론을 마이크로소프트 애플리케이션 개발에 대한 경험을 가진 독자, 특히 C#과 ASP.NET 개발 경험을 가진 개발자들을 위주로 소개한다. 이 책은 엔터프라이즈에 필요한 모든 내용들을 소개하는 책은 아니다. 엔터프라이즈 디자인은 너무...

 

YES마니아 : 로얄 g*****i 2019.12.09. 신고 공감 7 댓글 0
리뷰 총점 종이책
엔터프라이즈 애플리케이션 아키텍처 패턴
"엔터프라이즈 애플리케이션 아키텍처 패턴" 내용보기
내용은 너무나도 좋다. 요즘 대부분 엔터프라이즈 애플리케이션 개발자들은 프레임워크를 사용하여 개발한다. 따라서 이 책에 나와 있는 대부분의 패턴들은 이미 프레임워크에서 구현되어 있는 내용들이다. 프레임워크의 동작 메커니즘을 알고 사용하는 것과 모르고 사용하는 것에는 큰 차이가 있기 때문에 아무리 프레임워크에서 구현되어 있는 패턴이라하더라도 이와 같은 책을 통해 개
"엔터프라이즈 애플리케이션 아키텍처 패턴" 내용보기

내용은 너무나도 좋다. 


요즘 대부분 엔터프라이즈 애플리케이션 개발자들은 프레임워크를 사용하여 개발한다. 따라서 이 책에 나와 있는 대부분의 패턴들은 이미 프레임워크에서 구현되어 있는 내용들이다. 프레임워크의 동작 메커니즘을 알고 사용하는 것과 모르고 사용하는 것에는 큰 차이가 있기 때문에 아무리 프레임워크에서 구현되어 있는 패턴이라하더라도 이와 같은 책을 통해 개념을 짚고 넘어가는 것이 필요하다고 생각한다. 


다만 프레임워크와 비교하여 예제 코드보다는 해당 프레임워크의 예시로 설명하였다면 좀더 이해하는데 도움이 되지 않았을까 싶다.

l******a 2016.04.27. 신고 공감 0 댓글 0