今こそ本気でJavaScriptを学ぶべき10の理由
その昔、JavaScriptはWeb開発者の間では嫌われ者であった。IEとNNがシェアを争っていた頃、JavaScriptのブラウザ間の互換性は致命的なレベルであった。それでも気鋭のWeb開発者達は新たな可能性を開拓しようとJavaScriptを使い、DHTMLなんてものを生み出した。しかし、その多くはバッドノウハウであり、ブラウザ間の互換性も依然として解決されておらず、そして「JavaScriptは扱いにくいダメ言語」というレッテルが貼られてしまった。
その後、長らく暗黒の時代を送っていたJavaScriptだったが、Google Mapsの登場により息を吹き返し、prototype.jsやjQueryという数多くの扱いやすいライブラリが産まれ、今やJavaScriptはWebサイトのみならず、Webアプリケーション開発やサーバーサイドにまでその利用範囲を広げている。何故いまJavaScriptを勉強すべきなのか?
1. Webで出来ることが広がる
HTMLとCSSだけではどうしても限界がありますが、JavaScriptを使うことで様々な機能や動きを実装することができます。またtwitterやFacebook、Instagramといった多くのWebサービスはAPIを公開していますので、JavaScriptからそれらを利用することが出来ます。身近な例で言えばJavaScriptとtwitterのAPIを使ってtwitterのタイムラインを表示したり、FacebookのAPIを用いてイイねボタンを表示したりといったことが可能です。
あなたがJavaScriptを習得すればHTMLとCSSだけでは出来なかった「機能」を実装することができるようになります。Webで出来る事、可能性が広がるのです。
2. プログラムの勉強になる
JavaScriptはコンパイルの必要が無く、Webブラウザさえあれば実行できるというメリットがあります。このため他の多くのプログラム言語のように開発環境を構築する必要が無く、すぐにプログラムを書き始めることができます。
JavaScriptはその導入の敷居が低いことからもプログラムのイロハを学ぶのに向いています。JavaScriptではif文、for文などどのプログラムでも出てくる基本的な構文を学ぶ事が出来ます。また関数やオブジェクトといったものも学ぶ事が出来ます。
JavaScriptはプロトタイプベースのオブジェクト指向(風)言語でありながら、関数型言語としての特徴も備えているので、初学者や他の言語を学んで来た人にとっては少々分かりづらい部分もありますが、それを補っても余りある程魅力的な言語です。
3. jQueryプラグインをカスタマイズできる
jQueryのプラグインは非常に手軽に導入できますが、自分でカスタマイズしようとすると中身を読みつつコードを弄らなければなりません。そういった場面でこれまで諦めてきた人も、JavaScriptを勉強することでプラグインのカスタマイズも出来るようになるでしょう。
4. プラグインを自分でも書けるようになる
JavaScriptをしっかり勉強すればjQueryのプラグインを自分で書くことが出来るようになります。最初はちょっとした機能でも良いですから自分で書いてみることが大切です。どんどん実験しましょう。
5. FirefoxやChromeの拡張を作れる
FirefoxやChromeの拡張機能はその大部分がJavaScriptによって実装されています。JavaScriptが出来るようになれば自分で拡張機能も作れるようになります。
6. サーバーサイドもNode.jsで開発できる
これまでJavaScriptはクライアントサイドの言語としてブラウザ上でしか動かすことができませんでしたが、Node.jsというサーバーサイドでJavaScriptを動かす技術が出てきたことで、その利用範囲がサーバー側にも広がりました。Node.jsは導入事例も増えてきているので今後も要注目です。
7. Android,iPhoneアプリも開発も出来る
JavaScriptはWebサイトを作成するだけではありません。AndroidやiOSのネイティブアプリだって開発可能です。Titanium Mobileを使えばJavaScriptを使ってAndroidやiPhoneアプリを開発することが出来ます。実際に数多くのアプリがTitanium Mobileによって産み出されています。
以下Titanium Mobileで開発されたアプリの一例
8. Windows8のアプリも開発出来る
今年(2012年)発売が予定されているWindows8ではネイティブアプリの開発にHTML+CSS+JavaScriptを使うことができます。Windows8用のアプリを販売する「Windows Store」にHTML+JavaScriptで作ったアプリを登録し、販売することもできます。今JavaScriptを学ばない手はありません。
9. 将来性が担保されている
AdobeのFlashはiOSデバイスとHTML5の普及により今後の戦略の変更を余儀なくされました。つまりAdobeのさじ加減ひとつでFlashやActionScriptの未来も大きく変わる可能性があるということです。またGoogleはJavaScriptの欠点を補うべくDartという新しいプログラミング言語を提唱してますが、今後どうなるかは未知数です。
一方JavaScriptはECMAという団体が標準仕様を策定しておりWeb標準の技術の一つとして確固たる地位を築いています。今後もHTML5とともにWebの中核技術として使われ続けるのは疑いようがありません。JavaScriptはActionScriptやDartと異なり、常にオープンな場で仕様策定が進められ、そしてWeb標準の一翼を担うものとして将来性が担保されている言語と言えるでしょう。
10.Webアプリの時代が来る
現在のスマートフォンではネイティブアプリと呼ばれるアプリケーションがほとんどです。しかし、こういった状況はいずれ変化しHTML5+CSS3+JavaScriptを用いたWebアプリケーションが主流の時代になるだろうと予見されています。
JavaScriptはLL(Lightweight Language)に属する言語でありながら、その実行速度は過去数年間で飛躍的に高まりました。良い意味でブラウザベンダー各社が競い合っているので、今後も処理速度の向上が見込まれます。処理能力が上がるということはネイティブアプリと遜色無いレベルのWebアプリが出来るということにも繋がります。
またAndroid, iOS, WindowsといったOSの異なる各デバイスに対して、同一の言語(HTML+CSS+JS)で開発が出来るというのは唯一の方法です。
一方ではAndroid, iOS, Windows Phoneといったデバイス間の実装の差異や通信速度など越えなければならない壁がいくつもあります。しかし、これから数年かけてじわじわとWebアプリが拡大していく事は間違いありません。
結論
長々と書いてきましたが言いたい事は1つ「JavaScriptを勉強しておけば可能性が広がるよ!楽しいよ!」って事です。これから先もJavaScriptはフロントエンドにおける重要な技術の1つであり続けるでしょう。さらにアプリ開発やサーバーサイド、そしてWebアプリと現在進行形でその利用範囲は拡大し続けています。初心者の方、デザイナーの方、「今年こそJavaScriptを」と思っている方、あなたもいまから本気でJavaScriptを学んでみてはいかがでしょうか?