메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

IT/모바일

Jython 2.0 베타 버전

한빛미디어

|

2002-04-22

|

by HANBIT

7,659

저자: 스티브 피긴스(Stephen Figgins), 역 전순재

Jython 개발자인 배리 바르소(Barry Warsaw)와 핀 복(Finn Bock)은 Jython 2.0의 첫 번째 베타 버전을 선언했다. Jython은 파이썬 인터프리터를 순수하게 자바로 구현한 것이다. 여러분은 Jython으로 JVM(자바 가상 머신)위에서 파이썬을 사용할 수 있다. 이는 곧 자바 클래스에 접근할 수 있다는 것을 뜻한다.

왜 두 개의 인터프리터가 있어야 하는가? 본질적으로 그 둘은 서로 다른 머신을 위해 만들어졌다. 하나는 실제 머신을 위한 것이고 다른 하나는 JVM을 위해 만들어진 것이다. JVM은 자바가 플랫폼에 독립적이기 위해 택한 방법이다. 서로 다른 기계와 운영체제는 그것들 고유의 규칙을 준수하며 프로그램을 실행시키기 때문에 어떤 한 프로그램을 어느 곳에서나 실행하기는 힘들다. 자바 솔루션(Java solution)은 실제 머신 내에서 실행되는 가상 머신을 만들어서 모든 머신이 똑같게 보이도록 한다.

단 하나의 머신을 상대로 프로그램을 작성한다면 100% 자바로 작성된 프로그램을 더 쉽게 이식할 수 있다. 그렇지만 안타깝게도 그 때문에 다른 것들이 더 어려워진다. 가상 머신용으로 작성된 프로그램은 고유의 시스템용으로 직접 작성된 라이브러리를 사용할 수 없다. 자바 고유의 인터페이스(Java Native Interface)를 사용해서 통합할 수는 있지만 그렇게 할 경우 이식성이 훼손된다. 이식성이라는 문제를 해결하기 위해서 시스템 고유의 라이브러리는 자바로 다시 구현되어야 한다. 이것은 결코 실용적이지 못하다. 마찬가지로 Jython도 이러한 제한사항을 이어받는다. 파이썬용으로 작성된 많은 확장 모듈들은 C로 작성되어 있으며 Jython이 쉽게 사용할 수 없다. 반대로, Jython 프로그램이 자바 모듈에 크게 의존하게 될 경우 이를 다시 파이썬에 이식하는 것이 어려울 수도 있다. 가상 머신을 통해 플랫폼에 독립적일 수 있었지만 여기에는 분리라는 대가가 따른다.

Jython이 분리 문제를 해결하지는 못하지만 자바 라이브러리의 장점을 직접 이용할 수 있다. 자바에서 사용할 수 있는 코드는 수없이 많다. 파이썬이 C 모듈을 사용하려면 특별한 준비(포장)가 필요하지만 이와는 달리 Jython은 어느 자바 모듈이라도 있는 그대로 직접 사용할 수 있다. 즉 자바 프로그램을 아주 쉽게 그냥 Jython 모듈에 건넬 수 있다. 여러분은 신속한 개발 언어로서 파이썬의 힘을 극대화할 수도 있으며, 파이썬 스크립팅 언어를 애플리케이션에 내장하거나 상호대화 프롬프트에서 자바 클래스들을 시험해 볼 수 있다. Jython은 파이썬의 강력한 힘과 유연성을 자바 가상 머신으로 가져온다.

Jython 2.0은 JPython을 계승한 것이다. 이 프로젝트는 오랜 기간에 걸친 공백 기간을 끝내고 이제 움직이기 시작했다. Jython 2.0은 Python 2.0과의 호환성을 개선하여, 리스트 번역(list comprehensions), 확장된 call 서술문과 print 서술문, 연산 할당(augmented assignment), 그리고 기다란 값(long values)에 대한 형식화와 같은 특징들을 추가하고 있다. Jython 2.0은 또 자유 라이센스인 아파치 자카르타 ORO 정규 표현식 모듈을 합체하였다. 조금이라도 자바와 관련된 일을 하고 있거나 혹은 앞으로 자바관련 업무를 하고자 한다면 반드시 Jython을 사용해 보는 것이 좋다고 생각한다.
TAG :
댓글 입력
자료실

최근 본 상품0