JAVA - 해당되는 글 3건

사용자 삽입 이미지
IT서비스가 기획되고 개발 및 운영으로 이어지기까지 여러 사람의 손을 거친다. 그러나 이렇게 많은 이들의 공이 들어간 IT서비스도 사소한 장애 하나 때문에 먹통이 되는 일이 빈번하게 일어난다. 서버도 애플리케이션도 모두 불완전한 사람의 손을 거쳐 만들어지는 만큼, 그 어떤 시스템도 완벽할 수는 없다.

물론 사전 성능 테스트와 꾸준한 모니터링으로 중무장한다면 많은 이들이 흘린 땀의 흔적이 장애 때문에 허무하게 사라지지는 않을 것이다. 그러나 철저한 준비는 장애를 막기 위한 필요 조건일 뿐이다.

실제로 나름 준비 태세를 갖추고 시스템을 오픈했음에도 예상치 못한 장애로 인해 IT담당자들이 발을 동동 구르는 안타까운 장면이 심심치 않게 연출된다. 장애를 다루는 일을 성능 테스트나 튜닝의 양념 정도로 생각해서는 안되는 이유다.

장애를 완벽하게 막을 수는 없다. 하지만 장애를 진단하는 방법만 알면 장애가 나는 것은 어쩔 수 없더라도 파장과 재발 가능성은 크게 줄일 수 있다.

최근 출간된 '자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기'(이상민 저, 한빛미디어)는 현장에 있는 개발자와 시스템 운영자들이 장애를 만났을 때 대응할 수 있는 실용적인 방법들을 담고 있다.

삼성SDS을 거쳐 현재 NHN에서 장애 진단 지원, 성능 측정, 성능 튜닝 등의 업무를 수행하고 있는 저자 이상민씨는 풍부한 실무 경험을 바탕으로, 개발자와 시스템 운영자들이 다양한 상황에서 활용할 수 있는 장애 대처법을 설명한다.

쓰레드, 메모리, 프로세스, CPU, I/O, 네트워크 등 시스템 오류가 발생하는 다양한 지점, 장애 증상 및 해법을 모두 아우른다. 무료로 활용할 수 있는 다양한 툴들에 대한 소개도 눈에 띈다. 장애 대처에 도움이 되는 다양한 시스템 명령어들도 알 수 있다.

'한빛미디어 Blog2Book 시리즈' 10번 째인 이 책은 블로그에서 볼 수 있는 글쓰기를 통해 기술을 다룬 책은 어렵고 딱딱할 것이란 고정관념에도 도전한다. 항상 옆에 두고 필요할 때마다 읽어볼만 하다. 지하철로 출퇴근하며 읽는데도 무리가 없을 것이다.

***

저자 이상민 소개
1997년 삼성 SDS에 입사하였으며 2009년부터는 NHN에서 장애 진단 지원, 성능 측정, 성능 튜닝 등의 업무를 수행하고 있다. 그리고, 사내에서 각종 자바 및 성능 관련 과정을 기획 및 강의하고 있다. 자바 관련 자격증인 SCEA, SCBCD, SCWCD, SCJP를 보유하고 있으며 『Blog2Book 자바 성능을 결정짓는 코딩 습관과 튜닝 이야기』(2008, 한빛미디어), 『Blog2Book 자바 개발자도 쉽고 즐겁게 배우는 테스팅 이야기』(2009, 한빛미디어)를 집필했다.

책 이야기  |  2011/06/27 09:16   by 코핀

머리 좋은 친구(나를 기준으로 생각하지 마세요. 심하게 왜곡될 수도 있습니다 ^^:;)와 함께 나란히 앉아서 공부를 해본 경험이 있다면 한 시간 후에 친구와 내 머릿속에 남은 것이 어떻게 다른지 꼭 한번 비교해보세요. 아마 많은 차이를 느낄 수 있을 겁니다. (물론 나도 잘 났다면 별 차이 없겠죠 ㅎㅎ)

사용자 삽입 이미지
내 머릿속에 자바, 클래스, 함수.... 단어의 조각과 코드의 조각이 담겨있다면 그 머리 좋은 친구는 핵심 단어와 단어를 연결시켜 배경을 만들고 그 위에 중요한 개념이 쌓여서 남아 있을 겁니다. 중요한 개념을 스토리로 엮거나 이미지로 편집해서 머릿속에 남기는 친구들도 있겠죠.

뭐든 간에 한마디로 중요한 내용을 머릿속에 저장하는 학습 방법이 존재한다는 거죠.

Head First 시리즈는 이러한 차이를 과학적으로 연구한 결과를 반영해서 구성했습니다. 즉 바보도 Head First식 학습법에 빠져들면 천재가 될 수 있다는 말씀! (믿거나 말거나...)

물론 노력 없는 결실은 없습니다만 어떻게 노력하느냐에 따라서 그 결실의 크기가 다르기에 Head First가 필요하겠죠^^

사용자 삽입 이미지
여기서 잠깐 그럼 인지 과학, 신경생물학, 학습 심리학의 도움을 받은 Head First의 학습 원리는 무엇일까요?

한마디로 책을 읽으면 중요한 개념을 머릿속에 쏙~ 넣어주는 구성이죠^^ 그래도 간단히 정리하면...

1. 비주얼하게 만들자 : 단어만 있는 것보다는 그림을 사용하는 편이 기억하기도 좋고 학습 효과를 향상시키는데도 도움이 됩니다.(최대 89%까지 향상됨)

2. 개인적인 대화 형태의 문체를 사용하자 : 개인적인 대화를 나누는 듯한 문체로 설명하면 학습 후 테스트에서 40% 정도까지 더 나은 점수를 받을 수 있다고 합니다.

사용자 삽입 이미지
3. 더 깊이 생각할 수 있도록 만들자 : 뉴런을 활발하게 사용하지 않으면 머릿속에서 그리 특별한 일이 일어나지 않습니다. 항상 독자에게 문제를 풀고 결과를 유추하고 새로운 지식을 만들어낼 수 있는 동기, 흥미, 호기심, 사기를 불어넣을 수 있어야 합니다.

4. 독자가 계속해서 주의를 기울일 수 있도록 하자 : 사람의 두뇌는 언제나 일상적이지 않은 것, 재미있는 것, 특이한 것 등에 주의를 기울입니다. 어려운 기술적인 내용이라도 지루하지만 않다면 두뇌는 새로운 내용을 훨씬 빠르게 받아들일 수 있습니다.

5. 독자들의 감성을 자극하자 : 뭔가를 기억하는 능력은 그 내용이 얼마나 감성을 자극하는지에 따라 크게 달라집니다. “오 이럴 수가”, “내가 해 냈어!”와 같은 감정을 느낄 수 있다면 배우는 과정에 크게 도움이 된다고 합니다.

사용자 삽입 이미지
나만의 학습법을 만들어나가는데 있어서 이러한 Head First식 학습 원리를 여러분의 학습에 응용해보는 센스!

이건 또하나의 선물입니다.^^

* 기획팀에서 한마디 : Head First Servlets & JSP 개정판이 나왔어요. 많이 사랑해 주세요~~

* 이클립스를 개발 툴로 사용하시는 분을 위해 단축키를 올려놨어요.^^   이 곳에서 => http://www.hanb.co.kr/web/example/1623/ 

책 이야기  |  2009/03/04 10:09   by hachi74

우리는 코스 요리를 주문할 때나 또는 요리에 술을 곁들여서 식사를 할 때 각각의 요리가 연결된다는 것, 그리고 그 조합으로 인해 내가 느낄 수 있는 만족감에 대해 생각하지 않는 듯 하지만 주문을 할 때 이러한 부분을 무의식적으로 또는 의식적으로 고려해서 주문을 한다. 그리고 코스 요리를 준비하는 요리사는 고객에게 최고의 식탁을 준비하려고 아마도 정말 치열하게 고민할 것이다.

사용자 삽입 이미지
이렇듯 다양한 요리 또는 아이템이 만들어내는 최고의 조합을 마리아주(프랑스어로 결혼을 뜻한다)라고 한다. 아마도 와인을 즐기는 분은 쉽게 접할 수 있는 단어일 것이다.(물론  신의 물방울 3권을 통해 접한 분도 있겠지만 ^^)

서론이 길었지만 "UML과 JAVA로 배우는 객체지향 CBD 실전 프로젝트 : 도서 관리 시스템" 책을 한마디로 표현하자면 UML, JAVA, 객체지향, CBD, CASE 도구의 마리아주라고 할 수 있다. 각각 내용이 어울어져 완전한 요리를 맛볼 수 있는 기쁨을 주는 책이다.

저자가 오랜 시간의 강의와 실무로 체득한 내용을 이 한 권의 책에 녹여냈다. 최고의 궁합을 만들려고 치열하게 고민했고 원고가 완성된 후에도 여러 차례의 퇴고를 통해 다듬어냈다. 다양한 지식을 한 권에 모아 만족스런 내용이 될 수 있게 수고한 저자의 노력을 느낄 수 있다.

사실 이러한 저자의 노력을 느끼려면 직접 읽어 봐야 할 것이다. 고로 UML, JAVA, 객체지향, CBD, CASE 도구의 마리아주를 경험하려면 주머니 사정이 여의치 않더라고 지름신의 도움을 받아 꼭 구매해서 읽어보기를 권한다.
 

사용자 삽입 이미지

그럼 이 책의 특징으로 가볍게 맛을 보길 바란다.

  • 개발 단계 및 활동의 수행 산출물을 다양한 UML 2.0의 다이어그램을 이용하여 작성하는 사례를 소개하고 있다. 특히 클래스 다이어그램, 시퀀스 다이어그램, 컴포넌트 다이어그램은 별도의 장으로 구성하여 자세히 설명하고, UML 2.0에서 새롭게 추가된 복합 구조 다이어그램, 상호작용 개요 다이어그램도 소개한다.
  • 요구사항 정의, 분석, 설계의 각 단계를 3~4개의 세부 활동으로 세분화해 자세히 설명한다. 즉, 각 단계를 구성하는 세부 활동별로 목표와 수행 방법, 그리고 산출물을 설명한다. 또한 각 세부 활동의 내용을 기본 개념, 기본 원칙, 실용 지침으로 구분해서 설명한다. 그리고 기본 개념과 기본 원칙은 해당 활동/산출물의 평가 기준으로 자연스럽게 사용할 수 있다.
  • 도서관리시스템이라는 일종의 정보 시스템을 예제로 소프트웨어 개발 단계를 소개하지만 정보 시스템뿐만 아니라 임베디드 시스템과 같은 다른 유형의 시스템 개발에도 적용할 수 있게 하였다. 즉, 요구사항 정의 및 분석 단계에서는 엘리베이터제어시스템의 예를 소개하고 있으며, 설계 단계에서는 Java EE 플랫폼에 바탕을 둔 설계를 일반적인 설계 개념과 분리해 설명하고 있다.
  • 개발 단계와 세부 활동을 이론적인 측면에서만 소개하는 데 머물지 않고 가상의 도서관리시스템을 대상으로 요구사항 정의, 분석, 설계, 그리고 구현을 수행하는 과정과 산출물을 자세히 소개하고 있다. 즉, 유스케이스 모델, 분석 모델, 아키텍처 모델, 컴포넌트 모델, 그리고 Java EE 플랫폼상에서 개발된 소스 코드를 소개한다.

이 책에 대한 상세 소개는 아래 사이트를 참고하기 바란다.
http://www.hanb.co.kr/look.php?isbn=978-89-7914-659-2

[영업부에서 한마디 : 2009년 2월 28일 JCO 컨퍼런스의 한빛미디어 부스에서 이 책을 만날 수 있습니다. 추신, 신용카드도 대환영입니다. ^^]

책 이야기  |  2009/02/23 10:39   by hachi74