今回はWebサービスの開発のために使われることが多いスクリプト言語について、スクリプト言語全体の特徴や各言語の特色について説明してきたいと思います。多くの現場で使用されている基本的なスクリプト言語なので、覚えておくようにしましょう。
スクリプト言語とは?
Webサービスを作る場合には、主に次に紹介するプログラミング言語が多く使用されます。これらの言語は全て「スクリプト言語」と呼ばれるプログラミング言語です。
- Perl
- PHP
- Ruby
- JavaScript
スクリプト言語の最大の特徴は、プログラムを作成してファイルを保存した後、すぐに実行することができるという手軽さになります。このようなプログラムの実行方法を「インタプリンタ」と呼びます。
Webサービスが稼働している最中は、新たに作ったプログラムを反映するためといってもサービスを簡単に停止することはできません。その点インタプリンタでの実装方法は、ファイルを置換することで実装できるため、Webサービスとの相性は抜群なのです。
続いて、4種類の言語の特色について説明していきます。
Perlの特徴
Perlは古くから使われているWebプログラミング言語です。Perlの特徴は、
- CGIによるサーバ処理
- 正規表現によるテキスト処理
の2点です。
CGIとは、Common Gateway Interfaceと呼ばれるサーバの処理方法の一つです。PerlはCGIを実装したプログラミング言語の先駆けなのです。CGIの機能によって、掲示板サイトなど数多くのWebサービスが生み出されました。
そして正規表現によるテキスト処理も、大きな特徴の一つです。
Perlにおける正規表現とは、文章の中を検索したり置換したりする時に、特定の文字列ではなく文字列の一部をパターン化して表現する手法のことです。
現在ではどのプログラミング言語でも正規表現によるテキスト処理機能は搭載されていますが、Perlは他のプログラミング言語よりもパフォーマンスが高いのです。現在でも複雑なテキスト解析の処理ではPerlがよく使われます。
PHPの特徴
Perlの後にWebサービス開発のプログラミング言語の主役になったのがPHPです。PHPの代表的な特徴は、
- HTML内に埋め込みで動作が可能
- データベースとの接続機能が標準搭載
- フレームワークが豊富
となります。
PHPの最大の特徴はHTMLにタグを埋め込むような形でコードを書くことができるという点です。そのため、Webサイトに簡単な動作を追加できるようになりました。
またデータベースとの接続機能が最初から標準で搭載されています。他のプログラミング言語では、ドライバやライブラリなどを追加で導入しないとデータベースとの接続機能を使えないことが多いため、この点はWebプログラミングでは非常に大きなメリットです。
そしてCakePHPやCodeIgniter、Laravelに代表されるようにフレームワークの種類が豊富です。この点からもPHPがWebサービス開発に向いていると言えます。
Rubyの特徴
Rubyと言えば、代表的なフレームワークでもあるRuby on Railsとともに、現在のWebサービスの開発で主役になりつつある言語です。Ruby on Railsの登場は、コードの自動生成機能や、命名規則など、後に多くのWebプログラミング用のフレームワークに多大な影響を与えました。
そんなRuby on Railsを生み出したRubyの特徴は、
- オブジェクト指向言語
- 開発者が日本人
- 採用されているWebサービスが多数
となります。
Rubyはスクリプト言語では珍しくオブジェクト指向で作られたプログラミング言語です。現在ではPerlやPHPなどにもオブジェクト指向機能が多数導入されていますが、当初は関数指向のプログラミング言語だったため、そのような機能がなかったのです。その点、Rubyは純粋なオブジェクト指向言語と言えるでしょう。
Rubyは、日本人であるまつもとゆきひろさんが開発したプログラミング言語です。彼が設計した言語思想は、他のプログラミング言語にも大きな影響を与えました。
RubyやRuby on Railsは、RedmineやGithubなどに代表されるWebサービスで採用されており、PHPと人気を二分するほどのプログラミング言語になりつつあります。
JavaScriptの特徴
JavaScriptと言えば、かつてはHTMLの中に埋め込むクライアントサイドとしてのプログラムの印象が強くありました。最近では少しずつ変化しています。
そんなJavaScriptの最近の特徴は、
- AjaxによるHTTP通信処理
- JSONによるデータ処理
- jQueryやAngularJSなどの多くのライブラリの登場
- node.jsによるサーバサイドプログラミング
となります。
AjaxによるHTTP通信にて、外部のAPIからデータを取得しページに反映することができるようになりました。この処理の実現により、JavaScriptがWebサービス開発において急速に普及したと言えるでしょう。
またかつてはブラウザごとに動作が違っていた状況も、jQueryやAngularJSなど多くのライブラリの登場により、マルチブラウザでの対応を可能にしました。
そして極め付けはnode.jsの登場により、クライアントサイドだけでなく、サーバサイドもJavaScriptで開発可能になりました。
クライアントサイドとサーバサイドにて同じプログラミング言語で実装できるようになったため、データの型の変換などを気にする必要がなくなりました。これもJavaScriptが普及した要因と言えるでしょう。
まとめ
今回はWebサービスの開発のために使われることが多いスクリプト言語の特徴や、代表的な4つのスクリプト言語、
- Perl
- PHP
- Ruby
- JavaScript
について紹介してきました。
現在はプログラミング言語だけでなく、多くのライブラリやフレームワークの登場により、多様性が生まれてる状況となっています。その中で特色を見極めて、適切なスクリプト言語を選択することが大切です。