RubyにPythonにSwiftまで?JavaScript以外の言語をブラウザで使ってみよう!

つっちー


RubyにPythonにSwiftまで?JavaScript以外の言語をブラウザで使ってみよう!

こんにちは。フロントエンドエンジニアのつっちーです。

ブラウザで動作するプログラミング言語は JavaScriptただひとつですが、プログラミング言語はほかにも山のように存在します。WordPressでおなじみPHP、Ruby on Railsで火がついたRuby、機械学習の分野で使われるPythonなどなど。

普段これらの言語を用いて開発を行っている方は、「この言語がブラウザでも動けばいいのに」と常々思ってらっしゃるのではないでしょうか。

今回は、そんな願いを叶えるコンパイラをいくつかご紹介します。

▼目次

ブラウザでJavaScript以外の言語が動くの?

今回ご紹介するものは、「JavaScript以外の言語をブラウザに対応させる」ものではありません。「JavaScript以外の言語を、JavaScriptに変換する」、という働き(以下の処理手順を参照)をするものです。

  1. JavaScript以外の言語で処理を記述
  2. JavaScript以外の言語をJavaScriptに変換
  3. JavaScriptを実行

つまり、処理は PHP や Ruby で記述できますが、やはりブラウザが解釈しているのは JavaScript なのです。

 

とはいえ、これにより開発者が記述する部分はJavaScript以外の言語となります。
今回ご紹介するのは以下の5つ。

  • PHP → JavaScript
  • Ruby → JavaScript
  • Python → JavaScript
  • Go → JavaScript
  • Swift → JavaScript

 

それでは、さっそくご紹介していきます。

PHP → JavaScript なら、「Uniter」

uniter
Uniter

PHPからJavaScriptへの変換には、Uniter がおすすめです。

 

Ruby → JavaScript なら、「Opal」

opal
Opal

RubyからJavaScriptへの変換には、Opalが有名なようです。

 

Python → JavaScript なら、「Brython」

brython
Brython

PythonからJavaScriptへのコンパイラはかなり多く存在するようです。今回はBrythonをご紹介します。

 

Go → JavaScript なら、「GopherJS」

gopher
GopherJS

Dockerの開発などに用いられている言語、Goです。JavaScriptへの変換にはGopherJSがおすすめです。

 

Swift → JavaScript なら、「Shift.JS」

shiftjs
Shift.JS

iOSアプリのSwiftまで、JavaScriptへ変換できちゃいます。そう、Shift.JSならね。

まとめ

変換処理というコストやリスクがあるためか、活用事例は極めて少ないですが、学習コスト軽減や開発スピード向上によって有益となるケースはきっとあるはずです。

まずは小さなアプリケーションの開発から、個人的にも使ってみようと思います。

ではまた! つっちーでした。

つっちー
この記事を書いた人
つっちー

フロントエンドエンジニア

おすすめ記事

Recommended by