Sprawa rozwoju Java   Leave a comment

Maszyna wirtualna Java (VM) w swej najnowszej edycji SE 7 pozwala na stosowanie innych języków programowania ogólnie nazwanych dynamicznymi (kiedyś skryptowymi): Rhino, Ruby, Python itd. Sytuacja podobna ma miejsce w .NET (Python). Rozszerzenia JVM o nowe języki znane jest od dawna (np.przeniesienie JavaScript w postaci technologii Rhino) .W przypadku Java oznacza to portowanie języka do JVM (korzysta się wtedy ze wszystkich zalet solidnej, skalowalnej platformy JVM). Liczy się jednak nie tylko sama możliwość uruchamiania jakiegoś języka dynamicznego na tej platformie. Ważną zaletą jest wymienialność – oznacza to, że dany język może korzystać z dobrodziejstwa inwentarza JVM (biblioteki, JAR, JIT, optymalizacja). Standard takiej wymienialności został nazwany JSR 292 pozwolił stworzyć specjalny bytecode (uruchamiany na równi z java byte code w środowisku maszyny wirtualnej JVM) zwany invokedynamic dzięki uniknięto narzutu takiej komunikacji. Wśród tych języków dynamicznych można wyróżnić następujące kategorie:

  1. Rozszerzenia języka Java: Scala, Groovy, Kotlin, Gosu
  2. Języki spoza rodziny Java: JRuby, JPython, Closure, NetRexx (pierwszy język skryptowy dla Java wprowadzony przez IBM)
  3. Pozostałe: Rhino

Źródło Dr.Dobbs: http://www.drdobbs.com/jvm/a-long-look-at-jvm-languages/240007765

Posted 20 Maj 2013 by marekwmsdn in Interoperability, Java, JavaScript

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Log Out / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Log Out / Zmień )

Facebook photo

Komentujesz korzystając z konta Facebook. Log Out / Zmień )

Google+ photo

Komentujesz korzystając z konta Google+. Log Out / Zmień )

Connecting to %s

%d bloggers like this: