성능과 안정성 면에서 자바가 뛰어난 프로그래밍 언어임은 분명합니다. 그러나 실제로 개발하다 보면 자바만으로는 효율적인 프로그래밍이 어렵다는 의견도 있습니다. 요구사항이 자꾸 변경되면서 느껴지는 왠지 모를 답답함, 다른 언어를 쓰면 간단하게 처리될 부분을 길게 길게 코딩해야만 하는 과정이 때론 번거롭다고도 느껴지지요.
자, 그럼 이쯤에서 오랜 친구 자바와 함께한 개발자들께 한번 여쭤보겠습니다.
급변하는 요구사항에 유연하게 대처하고 계십니까?
XML 지옥에서 허덕이고 있습니까?
자바에게서 조금씩 답답함을 느낍니까?
한 해에 하나씩 새로운 언어에 도전하라는
실용주의 프로그래머의 지침을 따르고 있나요?
개발 기간도 단축하고, 좀 더 간단하고 유연한 프로그래밍을 하고자 고심하는 자바 개발자들에게 최상의 선택이 될 언어를 소개하고자 합니다.
그루비(Groovy)는 루비(Ruby)와 파이썬(Python)의 편리함, 자바의 안정성과 기능을 모두 합쳐서 만든 언어입니다. 즉 자바의 강점과 스크립트의 강점을 모두 보유했죠. 자바 문법으로 쓰는 동적 스크립트 언어로, 컴파일하면 바이트코드가 만들어지고, 자바 클래스나 라이브러리도 그대로 쓸 수 있습니다. 그루비로는 작은 스크립트도, 상업용 애플리케이션 만들기도 가능합니다.
거기다 썬의 적극적인 지원까지 받아 자바에 이어 자바 플랫폼의 두 번째 표준 언어가 되었습니다.
어떤가요, 이만하면 자바와 찰딱궁합인 스크립트 언어란 소개가 절대 과하지 않겠죠?^^
『프로그래밍 그루비』는 그루비의 문법과 사용하는 법을 이해하기 쉽게 설명하여. 자바 개발자분들께 빌더나 템플릿으로 자바가 얼마나 강력해지는지 그리고 정규 표현식과 데이터베이스 프로그래밍이 얼마나 쉬워지는지 알려드립니다. 또한 많은 실용적인 예제들을 소개해 일상 업무에 그루비를 적용할 때 필요한 조언과 트릭도 알아볼 수 있죠. 단위 테스트, 빌드 환경, 윈도 스크립트에 관해서도 안내합니다. 🙂
많은 자바 고수분들이 『프로그래밍 그루비』의 출간을 축하해 주시는 글을 남겨주셨습니다. 추천의 글을 써주신 박재성, 강규영, 안영회 님 감사합니다.^^
자바 개발자의 능력을 한 단계 높여줄 도구가 등장했다!
2008년 샌프란시스코에서 열리는 QCon에 참석했을 때 감명 깊게 들었던 세션 중 하나가 ‘Radical Simplification through Polyglot and Poly-paradigm Programming’이었다.
지금까지는 애플리케이션을 개발할 때 일반적으로 같은 언어와 같은 패러다임을 사용하는 것이 가장 좋은 선택이라고 생각했다. 그러나 이 세션에서는 애플리케이션 하나를 개발할 때 여러 언어(Polyglot)와 여러 패러다임(Poly-paradigm)을 활용하여 단순화하자는 이야기를 했다. 세션을 듣기 시작했을 때는 말도 안 되는 이야기라고 생각했지만 들을수록 그 필요성을 느낄 수 있었다.
더 이상 하나의 언어와 패러다임으로는 시시각각 변하고 있는 사용자의 요구사항에 따른 확장성과 기민함을 유지하기 힘들다. 굳이 자바가 대세라는 이유만으로 자바를 선택할 필요도 없으며, 루비가 뜨고 있는 언어라서 루비만을 고집할 필요도 없다. 개발자는 애플리케이션의 요구에 따라 적절한 언어와 패러다임을 조합해 사용할 수 있는 능력을 키워나가기를 요구 받고 있다.
이 같은 상황에 자바 개발자의 능력을 한 단계 높여 줄 유용한 도구가 등장했으니 그것이 바로 이 책에서는 다루는 그루비다. 그루비는 자바에 익숙한 개발자가 쉽게 접근할 수 있는 문법 구조로, 자바와 통합이 가능하기 때문에 기존 자바 애플리케이션을 그대로 활용할 수 있다. 그루비와 자바의 만남은 자바에 있는 장점에 동적 스크립트 언어의 장점을 통합하는 효과를 가져올 수 있다. 특히 그루비가 제공하는 클로저(closure) 기능은 지금까지 자바에서 느꼈던 많은 불편한 점을 해결해 준다.
최근 스프링 프레임워크를 만든 SpringSource는 그레일스 프레임워크를 인수했다. 그레일스가 SpringSource의 지원을 받아 빠른 속도로 발전해 자바 진영의 웹 애플리케이션 개발에 큰 파급 효과를 미치리라 생각한다. 여러 오픈 소스 프레임워크를 사용함으로써 XML 지옥에서 허덕이던 자바 개발자를 해방시켜 줄 프레임워크이기 때문이다. 이 그레일스 프레임워크의 중심에 그루비가 위치해 있다. 그루비를 활용한 애플리케이션 개발은 먼 미래가 아니라 벌써 우리들 곁에 다가와 있는 현실이다.
그루비는 이미 자바 개발자의 공구함에 반드시 넣어야 할 도구가 되었다.
박재성(『Spring 프레임워크 워크북』의 저자.
자바지기 커뮤니티 http://javajigi.net/를 운영하며 현재 NHN에서 웹 서비스를 개발한다)
자바 개발자를 위한 동적 언어, 그루비
그루비는 자바 개발자를 위한 동적 언어입니다. 이 문장에는 여러 의미가 담겨 있습니다. 첫째, 그루비는 자바 가상기계에서 작동하기 때문에 자바 개발자들이 이미 보유한 다양한 기술(성능 분석, 디버깅, 가상기계 메모리 관리 등)을 그대로 활용할 수 있습니다.
둘째, 그루비의 확장 API인 GDK는 기존 JDK를 자연스럽게 확장했기 때문에 이질적인 API가 혼재된 JRuby 등에 비해 자바 개발자들이 아주 쉽게 적응할 수 있습니다. 셋째, 그루비는 다른 동적 언어 혹은 스크립트 언어 수준으로 문법이 간결하면서도 자바 문법과의 호환성을 최대한 유지하기 때문에 자바 개발자들이 그루비의 문법에 쉽게 익숙해질 수 있습니다. 이러한 이유로 인해 그루비는 자바 개발자를 위한 동적 언어로 불립니다.
그루비는 매우 빠르게 발전하는 언어입니다. 그러한 탓에 이 책의 원서에 담긴 코드 중 일부는 최신 버전의 그루비에서 제대로 실행되지 않거나, 최근에 추가된 개념을 이용하지 않는 방식인 경우가 종종 있습니다. 하지만 번역자의 꼼꼼한 노력 덕에 2009년 2월 14일 현재 최신 안정 버전인 1.5.x를 반영하도록 예제가 갱신되었고, 옮긴이 주를 통해 충분한 부연 설명을 해줍니다.
자, 개발자 여러분, 매혹적인(groovy) 그루비의 세계에 오신 것을 환영합니다.
강규영(오픈마루 스튜디오 UX팀, UX 디자이너.
블로그 http://alankang.tistory.com/와 개인위키 http://jania.pe.kr/를 운영한다.)
그루비가 얼마나 배우기 쉬운지를 한눈에 알 수 있다!
만일 여러분이 그루비를 배우기로 결정했다면 『프로그래밍 그루비』는 자연스럽고 합리적인 결정이다. 그루비 프로젝트 관리자 기욤 라포르쥬를 포함하여 다섯 명의 그루비 개발자(기욤 라포르쥬, 디에크 쾨니히, 앤드루 글러버, 폴 킹, 존 스킷)가 쓴 책이란 사실을 알면, 여러분은 고개를 끄덕일 것이다. 전체적으로 이 책은 코드 예제와 개념을 설명하는 그림을 절묘하게 조합해 효과적으로 그루비에 대한 여러 가지 지식과 경험을 전한다.
그중 특별히 눈에 띄는 내용을 꼽아보면 클로저를 다룬 5장, 템플릿 파일과 문자열 패턴 처리를 다룬 9장 그리고 3부다. 자바7에서 도입을 위해 논의하는 클로저(Closure)의 경우 기존 자바 문법에 기초해서 이해하기는 어려운데, 이 책의 5장을 본다면 이해가 쉬울 것이다. GDK를 설명하면서 스크립트 언어의 주요 사용처를 고려해서 적절한 사례와 설명을 넣은 점은 무척 이상적이다. 9장 외에도 2부의 다른 내용은 데이터베이스 연계, ORM, XML 처리와 셸(shell) 스크립팅 스프링 연동까지 다양한 그루비 라이브러리를 포괄적으로 다룬다. 책이 실용적으로 구성되어 있어 자바와 비교하면 그루비가 얼마나 배우기 수월한지도 확인할 수 있다. 3부는 그루비 개발자가 활용하는 좋은 기법을 짜임새 있게 소개한다. 가령, 단위 테스트를 다룬 장에서도 비단 GroovyTestCase 활용뿐 아니라, 다양한 이클립스 플러그인을 활용하는 방안을 알려준다. 사실 이는 선도적인 자바 개발자 사이에서 널리 쓰이는 기법이다. 3부에는 또한 COM/ActiveX 등 윈도 기술에 기반을 둔 클라이언트 프로그램 개발이나 스크립트 자동화 등처럼 당장 현장에서 효과를 발휘할 수 있는 기법을 소개하여 문법을 익히고 나서 원하는 기법부터 먼저 활용할 수도 있다. 추천사를 쓰는 현재는 치열한 검토와 꼼꼼한 교정이 진행 중인데 모쪼록 읽기 편한 글로 서점에 나오길 기대한다.
안영회((주)아이티와이즈 컨설팅 SE 그룹, 컨설턴트.
한국스프링사용자모임(KSUG) 대표. 블로그 http://younghoe.info/를 운영하고 있다.)
※정오표
와~ 드뎌 그루비 책이 나오는군요. 번역하시느라 고생 많으셨을 역자님과 또 좋은 책 만들어주신 편집자님 모두모두 수고 많으셨습니다.
좋아요좋아요
고생하셨습니다… ^^
좋아요좋아요
석준 님, 안녕하세요? 저희 사무실 오실 때마다 그루비 책 보고 싶은데 언제 나오냐고 물으셨는데, 드디어 자신있게 대답하게 됐네요.^^; 기다려주셔서 감사합니다. 날도 따뜻해졌는데, 조만간 제권 님과 한번 사무실에 놀러와주세요~^^
좋아요좋아요
이병준 님, 안녕하세요? 늘 부장님을 통해 소식만 접하고 처음 인사드리는 것 같아요. 다음에 한번 만나뵙고 인사드리겠습니다.^^ 프로그래밍 그루비가 병준님께 좋은 책이 되었으면 좋겠네요.^^
좋아요좋아요
또 하나의 재미난 책이 나왔군요.
좋아요좋아요
고감자 님. 안녕하세요?^^ 그루비 책에 관심을 가져주셔서 감사합니다. 재미만이 아니라, 유용한 지식이 그득하답니다! 많이 기대해주세요~ 🙂
좋아요좋아요
아! 파이썬과 루비의 장점만 쏙쏙 뽑아 만들어졌다는
그 스크립트 언어가 그루비였군요 ㅎ
궁금해지는걸요!!!
좋아요좋아요
레몬에이드님, 안녕하세요? 그루비가 궁금증을 만족스럽게 채워드릴 듯합니다. 3월 초에 발간되니 많은 관심 부탁드려요~^^
좋아요좋아요
벌써 출간된건가요? 이글 보고 나오면 사야지 했는데, 강컴에서 그냥 주문 가능하네요. (예약도 없이 기습적으로…)
좋아요좋아요
허걱~ 강컴에 잘못 등록되어 있습니다.
예약 판매가 맞습니다.
(강컴에 수정토록 요청하겠습니다.)
게다가 제작에 약간의 문제가 엉켜 하루 이틀 늦어질 듯합니다.
좋아요좋아요