DevOps

CheerpJ는 자바 응용 프로그램을 웹용 JavaScript로 변환?

IT오이시이 2017. 6. 25. 13:01
728x90

CheerpJ는 자바 응용 프로그램을 웹용 JavaScript로 변환?


CheerpJ converts Java apps into JavaScript for the web

Applications and Java libraries are converted to web applications, so there is no need for plug-ins or Java installations

응용 프로그램과 Java 라이브러리는 웹 응용 프로그램으로 변환되므로 플러그 인이나 Java 설치가 필요 없습니다

"Java 바이트 코드를 사용하여 Java 소스 필요없이 JavaScript로 변환합니다"

http://www.javaworld.com/article/3202399/java-language/cheerpj-converts-java-apps-into-javascript-for-the-web.html


asm.js compilation & execution pipeline


자바와 웹 개발을 융합 한 CheerpJ는 자바 바이트 코드를 자바 스크립트로 변환하여 브라우저에서 실행하는 컴파일러 기술입니다. CheerpJ 는 Learning Technologies의 자체 Cheerp C ++ - JavaScript 컴파일러 뿐만 아니라 LLVM / Clang 컴파일러 플랫폼을 기반으로 Java 바이트 코드를 사용하여 Java 소스 필요없이 JavaScript로 변환합니다.


CheerpJ에서는 응용 프로그램과 Java 라이브러리가 웹 응용 프로그램으로 변환되므로 플러그 인이나 Java 설치가 필요 없습니다. 서버 측 Java 구성 요소는 클라이언트 측 브라우저 기반 라이브러리가 될 수 있으며 기본 Java 코드는 Node.js 서버 측 JavaScript 플랫폼의 플랫폼 독립적 구성 요소로 사용됩니다.

CheerpJ는 오프라인 컴파일러가 자바 바이트 코드를 JavaScript 및 자바 스크립트 기반 Java 런타임 환경으로 이동시키는 기능을 제공합니다. 또한 플랫폼의 일부는 애플리케이션과 함께 배치를위한 동적 클래스 생성을위한 즉석 컴파일러입니다.

Java와 JavaScript 간의 양방향 상호 운용성을 통해 Java에서 모든 JavaScript 라이브러리 또는 브라우저 API를 호출 할 수 있습니다. 또한 모든 Java 메소드가 JavaScript에 노출 될 수 있습니다. CheerpJ는 단일 .class 파일뿐만 아니라 Java 아카이브 (.jar) 파일에서도 호출 할 수 있습니다. jar.js JavaScript 파일과 .jar 파일을 통해 웹 서버에 배포 할 수있는 변환 된 응용 프로그램.

Learning Technologies는 CheerpJ가 GWT (Google Web Toolkit ) 와 같은 브라우저에 Java를 배치하는 다른 기술과 다른 점은 다른 기술이 Java 구조를 완벽하게 지원하지 못하고 Java 런타임 라이브러리의 일부만 구현한다는 점입니다. 이러한 한계로 인해 다른 기술은 기존 응용 프로그램을 변환하는 것이 아니라 새로운 응용 프로그램에 더 적합합니다.

다른 언어에서 JavaScript로 컴파일하는 다른 기술로는  Scala.js , Kotlin 언어 및  Microsoft의 TypeScript가 있습니다.

CheerpJ의 제한된 공개 버전은 7 월에 출시 될 예정이며 상용 버전을 비롯한 일반 판매가 가을까지 예상됩니다. CheerpJ의 같은 선상에서 목표는  WebAssembly입니다. WebAssembly[각주:1] 웹 성능을 향상시키고 브라우저에서 다른 언어를 실행할 수있게 해주는 매우 독창적인 바이너리 형식입니다.

An assembly language is a low-level programming language for a computer, or other programmable device, in which there is a very strong correspondence between the language and the architecture's machine code instructions.

또한 출시되는 CheerpL Applet Viewer Extension은 Java 설치 또는 플러그인을 요구하지 않고 Java 애플릿을 가능하게하는 Chrome 확장입니다. 애플릿은 CheerpJ.js가 직접 컴파일하여 사용할 수 있습니다. 확장 기능은 현재 베타 버전입니다.

이 이야기는 "CheerpJ는 Java 응용 프로그램을 웹용 JavaScript로 변환합니다"는 InfoWorld 에서 처음 게시했습니다 .


Refer : https://www.hanselman.com/blog/JavaScriptIsWebAssemblyLanguageAndThatsOK.aspx

:https://www.slideshare.net/manpreetgrewal/assembler-10707505

ASSEMBLER PROCESS ASSEMBLY LANGUAGE PROGRAM PASS1 PASS2 EXECUTABLE  IMAGE SYMBOL TABLE <ul><li>First Pass: </li></ul><ul><...




  1. An assembly language is a low-level programming language for a computer, or other programmable device, in which there is a very strong correspondence between the language and the architecture's machine code instructions. [본문으로]
728x90
반응형