2009-12-07 4 views

답변

24

:

자이 썬, JPython이의 후계자는 자바로 작성된 파이썬 프로그래밍 언어의 구현입니다. 이있을 수 있습니다 사용하는 것에 관해서는

:

자이 썬 프로그램을 원활하게 가져 자바 클래스를 사용할 수 있습니다. 자이 썬 프로그램은 일부 표준 모듈을 제외하고는 파이썬 모듈 대신 자바 클래스를 사용한다.

자이 썬, IronPython 및 CPython의 성능 측정은 자이 썬과 IronPython이 큰 데이터 세트를 사용하는 경우 CPython보다 성능이 뛰어나다는 것을 보여줍니다.

+5

자이 썬은 자바와 같은 방식으로 바이트 코드를 컴파일하지 않는다. 바이트 코드는 CPython이 수행하는 멋진 동적 런타임 작업을 수행하므로 Java보다 상당히 느립니다. – orip

3

Jython은 JVM 위에서 실행되는 Python 구현입니다. 이론적으로 Jython은 약간 느리고 CPython입니다. http://www.smallshire.org.uk/sufficientlysmall/2009/05/22/ironpython-2-0-and-jython-2-5-performance-compared-to-python-2-5/

+1

다음 기사도 흥미 롭습니다. http://www.smallshire.org.uk/sufficientlysmsm/2009/05/22/ironpython-hammers-cpython-when-not-mutating-class-attributes/ –

+0

자이 썬 특정 벤치 마크에서 CPython보다 점차 빠르게 증가합니다. – u0b34a0f6ae

0

JVM이 멋진 동적 최적화를 수행하지만, 아마에 대해 흥분하는 아무것도 :

당신은 여기에 몇 가지 벤치 마크를 찾을 수 있습니다. JRuby는 종종 실행되는 코드 경로를 최적화하여 JVM (http://www.engineyard.com/blog/2009/j-is-for-jvm-why-the-j-in-jruby/)에서 더 빠르게 실행하지만 Python이 아닌 Ruby입니다.

자바 라이브러리가 주된 이유입니다. 많은 기업들이 Python으로 스크립팅 할 수있는 Java 코드의 큰 덩어리를 가지고 있습니다. 자이 썬으로 스크립트를 작성할 수있는 몇 가지 오픈 소스 프레임 워크 (Struts 및 Eclipse 스프링)가있다.

6

언제 Jython이 필요합니까?

파이썬으로 프로그래밍하고 싶지만 결과를 Java 가상 머신에서 실행하거나 기존 Java 구성 요소를 사용해야하는 경우.

어떤 단점이 있습니다.

자이 썬은 파이썬과 100 % 호환되지 않을 수 있지만 비 호환성은 버그로 간주 될 수 있습니다. 나중에 CPython에서 실행하고 싶다면 Java 구성 요소를 사용하는 모든 코드를 다시 작성해야합니다.

나는 그것이 천천히 있다고 가정합니까?

이는 항상 특정 용도에 따라 다릅니다. 어떤 경우에는 실제로 CPython보다 빠를 수도 있습니다. 그리고 물론 당신이 실행하는 특정 JVM에 달려 있습니다. 이것은 항상 더 좋아집니다.

3

언제 Jython이 필요합니까?

예를 들어 코드에 멋진 스크립트 언어를 추가하십시오.

어떤 단점이 있습니까?

주된 단점은 자이 썬이 공식 CPython 배포판보다 뒤처져 있다는 것이다. 현재 CPython이 3.1 인 동안 Python 2.5.2와 호환되는 자이 썬 버전을 얻을 수있다.

일부 특수 모듈도 지원되지 않습니다. 일반적으로 Java 교체를 쉽게 알 수 없으며 쉽게 찾을 수 있습니다.

나는 그것이 천천히 있다고 가정합니까?

무엇에 비해? 대개는 빠르지 만 그렇지 않은 경우 몇 줄의 파이썬을 훨씬 빠른 Java의 약 1,000 라인으로 대체 할 수 있습니다.

3

다른 두 가지 이유 : 대형 Java 응용 프로그램에

  • 임베드 스크립트.
  • 자바 스레드를 사용하여 자이 썬에서 멀티 스레드 프로그램을 작성한다.
1

언제 Jython이 필요합니까?

Jython을 사용하여 Websphere 애플리케이션 서버용 관리 스크립트를 작성할 수 있습니다. 스크립트는 공통 관리 태스크를 자동화하고 Websphere 어플리케이션 서버에서 보안을 구성하는 데 사용됩니다.

WebSphere는 JMX API를 사용하여 내부 WebSphere 오브젝트의 API로 공개되는 MBean을 작성합니다. Jython 스크립트는 Java를 기반으로하며 JVM에서 실행되기 때문에 이러한 객체에 액세스 할 수 있고 WebSphere 구성에 활용할 수 있습니다.

자이 썬 코드를 작성하는 것이 재미 있고 새로운 언어를 배울 수 있습니다.

Here is the details

0

언제 자이 썬이 필요합니다?

JDBC 드라이버를 테스트하려면 Jython이 필요합니다. 내가 사용하는 애플 리케이션 중 일부는 ODBC를 사용하고, 일부는 JDBC를 사용합니다. Jython을 사용하여 하나의 Python 소스 (JDBC를 테스트하려면 JDBC-ODBC 브리지를 사용함)에서 두 유형의 드라이버를 모두 테스트 할 수 있습니다.

7

파이썬을 알고 "일종의"비법을 사용했다면 자이 썬은 그 철학을 JVM 스택에 가져다 줄 수 있습니다. 이렇게하면 스크립팅 기능을 추가하는 것 이상의 의미가 있습니다.

우리의 최신 프로젝트에서 모든 사용자 정의 및 비즈니스 로직은 자이 썬으로 작성되었으며, 동시에 Solr, Jasperreports, Quartz, Jetty, Velocity와 같은 훌륭한 Java 라이브러리를 활용할 수 있습니다. 조금.

바이트 코드로 컴파일되지만 여분의 레이어가 추가되지만 예를 들어 직선 JDBC 대신 ORM을 사용하는 것과 다르지 않습니다.

생산성이 크게 향상되면 실적이 저하되는 소량의 무게가 나가게됩니다.

서버 측에서는 자이 썬이 병목 현상이 거의 없다. 미니 데스크톱 앱의 경우 문제가있을 수 있지만 수행하려는 작업에 크게 의존합니다.

최신 JDK는 Jetty 또는 Tomcat과 같은 컨테이너와 함께 매우 성숙하고 안정적이어서 대부분의 경우 Python을 추가하여 두 가지 장점을 모두 제공합니다.

+0

좋은 답변입니다. 기존 Java 응용 프로그램이 있고 Java에서 지루할 수있는 파일 구문 분석을 수행하려고합니다. Jython을 사용하여 파이썬 구문 (file.read(), list.split() 등)을 사용하여 구문 분석 할 수 있습니까? –

관련 문제