저자: 『IT EXPERT, 자바 개발자를 위한 XML 프로그래밍』 공동저자 김찬웅
저자 김찬웅이 말하는 집필의도
최근의 은행 합병, 회사 통합, 무선 인터넷의 발전 등 IT 분야의 트랜드를 보아도 알 수 있듯이 이 기종 간의 통합과 플랫폼을 뛰어넘는 솔루션의 개발을 위해서도 이제 XML 사용은 피할 수 없는 대세입니다.
그렇지만 이러한 시대적 흐름과는 달리, 여러 IT 업체들이 대다수의 솔루션에서 XML 개발 기법을 적용하고 있음에도 국내의 개발자들에게는 XML이 아직도 낯선 언어라는 것을 알게 되었죠. 그리고 그렇게 개발자들이 XML을 멀게 느끼게 했던 이유는 대부분의 XML 서적이 기본적인 XML 문법의 해설에 초점을 맞추고 있다는 것이었습니다. XML이라는 기술이 본래 플랫폼 독립적인 구조로 되어 있어서 XML 스팩과 문법 중심의 서적으로는 실제 개발에 어떻게 적용할 수 있을지를 알기란 매우 어려운 일이었거든요.
현직 개발자들에게 강의를 진행하고 있는 저로서는 XML 프로그래밍 과정에서 유용하게 쓰일 수 있는 교재가 필요했고, 프로그래머들에게는 실제적으로 도움을 줄 수 있는 XML 프로그래밍 서적이 절실히 필요했던 까닭에 부족하나마 저와 개발자 커뮤니티 데브피아의 이명진씨가 함께 책을 쓰기로 한 것입니다.
본래 이 책은 시리즈로 기획된 3권의 책중 첫 번째 책입니다. 플랫폼 독립적인 메타언어인 XML의 목적에 맞게, "자바 개발자를 위한" XML 개발서, "MS의 .NET 플랫폼 개발자를 위한" XML 개발서, 그리고 "자바와 닷넷, 유닉스와 윈도우2000을 통합하는 분산 애플리케이션을 위한" XML 개발서를 집필하기로 한 것이죠. 이 책의 반응에 따라 다음 시리즈를 출간할 예정입니다.
대상 독자
책의 서문에서도 밝혔다시피, 이 책은 기본적으로 자바와 XML의 기본 개념을 이해하는 독자를 대상으로 합니다만 실제적으로는 자바를 학습하는 학생과 XML에 대한 기초 개념이 부족한 분들도 모두 대상 독자에 포함하고 있습니다.
개발자이자 IT강사로서 여러 차례 강의를 통해 체험한 결과, 자바를 사용하는 현직 개발자라고 하더라도, 보유 기술에 있어서 개발자 마다 대단한 차이가 있음을 알게 되었습니다. 처음 XML 프로그래밍 강의를 시작했을 때에는 이런 현실을 모른 채, 여러 가지 환경 요인이 적용된 장문의 예제를 사용하였는데, 이 후 강의 평가에서 수강생의 수업 이해도가 떨어진다는 사실을 알고 XML에 집중적이면서도 간결한 예제를 사용하여 강의를 하게 되었습니다. 매 예제 마다 소스 코드의 흐름을 간단한 개조식으로 주석 처리도 하였구요.
책 내에는 저의 이런 강의 방식이 그대로 들어 있습니다. 개인적인 생각으로는 자바를 모르는 분이라 하더라도 예제의 첫머리에 삽입한 주석을 숙지하고 그에 따라 소스 코드를 자세히 살펴본다면, XML 프로그래밍에 대한 커다란 흐름을 이해하실 수 있으리라고 생각합니다.
책 속의 내용
이 책은 크게 4부분으로 나뉘어 있습니다.
1부에서는 XML의 기본 개념을 설명하고 있습니다. XML 문법과 XSLT, XSL-FO, XPath 등 XML을 사용하는데 있어 필수적인 기술에 대해서 설명합니다.
2부에서는 자바를 이용한 XML 프로그래밍 부분으로 DOM, SAX를 이용한 XML 문서 처리 방법과, XSLT를 이용한 XSL 프로그래밍 방법을 설명하고, XSL-FO는 아파치의 FOP를 사용하여 XML 문서를 PDF 문서로 변환하는 기법을 해설하고 있습니다.
3부에서는 XML을 이용하는 인터넷 프로그래밍에 대해 설명하고 있습니다. JSP와 RDB의 연동, HTML, WML 등을 이용한 유,무선 통합 애플리케이션의 제작 방법, 효과적인 XSL 프로그래밍 기법 등의 소개와, IE와 넷스케이프에서의 XML 프로그래밍에 대해서 소개하고 있습니다.
마지막으로
4부 부록에서는 XML 프로그래밍에서 필요한 API 레퍼런스와, XSLT, XPath, XMLSchema의 레퍼런스를 제공하여 개발 시에 필요한 부분을 참고할 수 있도록 하였습니다.
집필 중 어려웠던 점
해외에 발간된 서적을 포함하여 대부분의 XML 서적들은 W3C에서 표준화한 XML 스팩과 문법에 치중되어 있습니다. 또한, 그나마 나와 있는 XML 개발서들도 버전이 오래되어 현재는 Deprecated 되었거나 사라진 내용만 들어 있는 경우도 있어 집필을 위해 참고할 서적이 없는 것이 매우 힘들었습니다.
특히, XSL-FO 프로그래밍과 XML 웹 프로그래밍 부분은 국내외 서적 중에서 참고할 만한 내용이 전무하였을 뿐더러, 관련 API에 대한 밴더의 도움말조차 없어 집필에 매우 어려움이 많았습니다. 그러나 분량은 작지만 XSL-FO 프로그래밍 같이 다른 서적에서 다루지 못한 부분을 이 책에서 다루었다는 점을 굉장히 뿌듯하게 생각하고 있습니다.
개발자의 어려움과 고단함을 누구보다도 잘 이해하는 개발자의 한 사람으로써, 또한 IT 강사의 한 사람으로써, 이 책의 독자를 포함한 모든 분들이 XML에 대한 어떤 어려움에 처해 계신다면 주저 없이 메일을 보내주시면 반드시 좋은 해답을 함께 고민할 수 있다는 것을 말씀드리겠습니다.
저자 김찬웅 cookin@hitel.net
저자 이명진 xmlsysop@devpia.com