Web開発には欠かせない言語といえるJava Script。最近の買収事例を交えながら、非SEさんでも理解が進むよう人気アプリ開発者の鶏肋さんにわかりやすく解説してもらいました。

# Node.js開発企業を買収したIBMとサムスン

近年のJavaScriptに関わる企業買収事例として、 次の2件をご紹介します。いずれもNode.js開発企業であり、 クラウドサービスを提供しています。

年月買収元内容
2015年9月IBMNode.jsによるWeb API フレームワークを提供するStrongLoopを買収
2016年6月サムスンNode.jsの開発企業でありクラウドサービスを提供するJoyentを買収

Node.js(ノードジェイエス)とは、 簡単にいうとサーバーサイドで動くJavaScript環境です。従来JavaScriptはWebブラウザ上で動くものでした。2009年にJoyent社のRyan DahlがNode.jsを開発したことで、 JavaScriptがサーバーサイドでも動くようになったのです。IBMが買収したStrongloopもまたNode.jsの開発に関わっている企業です。詳しくは「JavaScriptの歴史」という項目で後述しますので、 参照してください。

クラウドサービスについては、 【こっそり学ぶプログラミング言語】Rubyって何ですか?にてherokuを例に紹介しました。インターネット経由でソフトウェアを提供する仕組みだと考えていただければよいと思います。

# JavaScriptはどういう言語か

## JavaScriptは身近な言語

まずはJavaScriptという言語について説明したいと思います。JavaScriptは、主にWebブラウザで実行されるスクリプトです。Webブラウザとは、Google ChromeやFireFox、Internet Explorer(Windows10からは Microsoft Edgeになりました)のことです。これらはみなさんのPC上で動いています。

一方、過去の連載でご紹介したRubyPythonはインターネット上にあるWebサーバーで動いています。Webブラウザからリクエストを受け取ると、 サーバーはブラウザに対してコンテンツを送ります。(ちなみにM&A Online の場合はPHPというプログラミング言語が動いています。)これらはインターネットの向こう側、みなさんから遠いところで動いている言語です。

ただし、この役割分担が近年変わりました。Node.jsの登場で、JavaScriptがサーバー上で動くようになったのです。とはいえ、一旦は「JavaScriptはブラウザで動く」と理解していただいて良いと思います。

## JavaScriptは動きのあるWebページを作る

JavaScriptの主な用途は、動きのあるWebページを作ることです。クリックすると拡大する画像や、ポップアップを作るのにJavaScriptは使われています。M&A Onlineでは、PC版の検索フォームや、スマートフォン版のメニュー画面の挙動に使われています。

## JavaScriptはインタプリタ型のスクリプト言語である

少し専門的な話をすると、JavaScriptはインタプリタ型のスクリプト言語です。RubyやPythonと同じで「書きやすく、手軽に実行できる」言語だと思ってください。

反対にJavaやC言語等のコンパイラ言語は、手軽ではないけれど実行が高速です。JavaとJavaScriptは名前が似ていますが全く別のプログラミング言語ですので、混同しないよう注意してください。