2012-11-07 2 views
0

RhinoJavaScript 인터프리터이며 JVM을 기반으로 실행됩니다. 나는 그것이 서버 측 프로그래밍 JavaScript에 유용하다고 생각합니다. 이제 우리는 Node.js입니다. 그래서 Rhino이 여전히 관련성이 있고 유용하게 사용되는지 궁금합니다.JDK에서 Rhino 란 무엇입니까?

+0

나는 사용자가 응용 프로그램에 간단한 스크립트를 추가 할 수있는 방법을 제공하기 위해이 스크립트를 사용했습니다 ... – klaustopher

답변

5

JVM에서 Javascript를 실행하는 방법을 제공하기 만하면됩니다. 따라서 (JRuby, Scala, Groovy와 유사한 방식으로) Java 언어보다 우선적으로 another implementation choice on top of the JVM을 제공합니다. Javascript로 완벽한 솔루션을 작성하거나 Java (또는 다른 JVM 언어)와 혼합/일치시킬 수 있습니다.

이는 '서버 측'또는 이와 같은 배치 선택 사항과 관련이 없습니다.

필자는 개인적인 경험으로 말하면 trivial scripting in Ant deployments을 제공하고 필자가 작성한 Java 응용 프로그램/도구 세트를 사용하는 고객에게 간단한 스크립트 언어를 제공합니다.

2

Rhino는 단위 테스트에서 웹 사이트를 테스트하기 위해 웹 브라우저를 에뮬레이트하기 위해 사용할 수있는 the HttpUnit library에서도 사용됩니다. 라이브러리 JavaScript 지원을 제공합니다.

1

Java로 작성된 MMORPG 서버의 스크립팅 언어로 Rhino에서 Javascript를 사용합니다. 그것은 내 서버의 Java 부분을 건드리지 않고도 자바 스크립트에서 NPC 스크립트, 항목 사용 스크립트, 이벤트 트리거 및 기타 서버 양방향 기능을 구현할 수있게 해줍니다.

자바 스크립트에서 이러한 기능을 구현하면 구문을 작성하고 읽는 것이 훨씬 쉬워집니다. 특히 서버의 Java 부분이 스크립트 엔진에 보내기 전에 스크립트 소스 코드에 사소한 상용구 코드를 자동으로 추가하도록했기 때문에 특히 그렇습니다. 이것은 자바 스크립트 구문을 더 단순화합니다.

또한 엔진과 내용을 훨씬 명확하게 분리 할 수 ​​있습니다.

또한 Javascript 관리 셸이 추가되어 실행중인 서버에서 Javascript 코드를 실행할 수 있습니다. 이것은 매우 유용한 테스트 및 디버깅 도구로 입증되었으며 이후에 매우 강력한 관리 도구가 될 것으로 기대합니다.

물론 게임 개발에서 스크립팅 언어로 자주 사용되는 Lua와 같은 다른 스크립팅 언어를 사용할 수도 있습니다. 그러나 Rhino는 즉시 사용할 수 있으므로 다른 제 3 자 종속성은 필요하지 않습니다. 또한 클라이언트는 HTML5/자바 스크립트 응용 프로그램이므로 프로젝트에 다른 프로그래밍 언어가 없습니다. 클라이언트와 서버 컨텐트가 모두 JS를 사용하기는하지만 코드가 공유되어 있지는 않습니다. 즉, 시스템 아키텍처의 반대편에 있으며 간접적 인 계층을 통해 서로 상호 작용하므로 공유 할 이유가 없습니다. 암호.

관련 문제