1つの用途に特化した言語

1つの用途に特化した言語

これまで紹介してきた言語(前回分も含む)は、すべて汎用的な言語です。それぞれ向き不向きはあるものの、概ねなんでも作ることができます。

それに対してPHPとJavaScriptは、Webアプリを作ることだけを目的として作られた言語です。PHPはWebアプリのサーバー側の処理を、JavaScriptはWebアプリのクライアント側の処理を実現するために作られました。

プログラミング言語の中には、このように1つの用途に特化した言語が存在します。Windowsのデスクトップアプリを作ることを目的としたHSPや、統計解析を目的としたMATLABやRなどが有名でしょうか。こうした言語は狙いが絞られている分、機能がシンプルで覚えやすいものが多いです。

PHPを学ぶ

PHPの主な仕事は、Webサーバー上で動作して、HTMLを出力することです。言語の作りや標準ライブラリの構成も、HTMLを出力するのに向いた内容になっています。

下図はPHPのロゴです。正式名称は「PHP: Hypertext Preprocessor」(訳:PHPはHTMLなどのハイパーテキストの前処理をする)と言います。名が体を表している言語ですね。ちなみにPHPには、elePHPantというかわいい象のマスコットがいます。

図5:PHPのロゴ

誰が学ぶべきか

PHPはFacebookやYahooなどの大規模サイトでも利用されている、Webアプリの世界では最もメジャーな言語の1つです。

自分の手でWebサービスを作ってみたいと考えている人は、PHPから学ぶと良いでしょう。PHPは多くのレンタルサーバーで利用できるので、サービスを実際に世の中に公開する時に困ることが少ないです。

導入方法

PHPを導入する際には、一緒にWebサーバーのインストールなども行う必要になります。下記のサイトではApacheというWebサーバーを利用した導入手順が解説されています。

→ 初心者用PHP入門

JavaScriptを学ぶ

JavaScriptはブラウザ上で動作するプログラミング言語です。ユーザーが行った操作に応じて表示内容を切り替えたり、ちょっとしたアニメーションやゲームを実現することができます。名前はJavaと似ていますが、中身はまったく違う言語です。

2000年代中盤から、Ajaxと呼ばれるJavaScriptによる通信を利用した、動きのあるWebサイトが流行り始めました。マウスで地図上を移動することができるGoogleマップはその代表例です。GoogleマップはAPIが提供されているので、JavaScriptが使えるようになると自分のサイトに地図を表示することもできるようになります。

誰が学ぶべきか

JavaScriptはWebアプリを作る上で必須になる言語の1つです。

また、特徴として、他の人に「こんなプログラム書いたよ」と言って見せるのが楽な言語でもあります。JavaScriptを書いたHTMLファイルを送りつけるか、無料のレンタルサイトに配置してURLを伝えるだけで、他の人に自分が書いたプログラムを使ってもらうことができます。

書いたものを誰かに見てもらうというのは1つのモチベーションになることなので、作ったプログラムをこまめに人に見てもらった方が捗るという人は、JavaScriptから学び始めるのも良いでしょう。

導入方法

下記サイトではFirefoxを利用したJavaScriptの開発環境構築方法が解説されています。

→ JavaScript入門

JavaScriptは表示するWebブラウザによって動作が変わってしまう場合があります。特にIE6やIE7は仕様と違う動作をすることが多いので、学習する際はFirefoxやChromeなどのブラウザを利用し、サンプルソースを探す場合は、極力最近投稿されたものを選ぶことをオススメします。

まとめ

以上、Python、Ruby、Perl、PHP、JavaScriptの紹介でした。

プログラミング言語はどの言語もある程度似通ったところがあるので、1つでも習得してしまえば、次に新しい言語を学ぶ時は苦労が半減します。

ここまで見てきて、ピンと来る言語が見つからなかったという方は、サイコロを振って適当に選んだ言語を学んでみるのも良いと思います。やってみて初めて気づけることもありますし、そこで学んだことは次に別の言語を学ぶ時に必ず役に立ちます。

さて、次回は最終回になります。今回までは言語の紹介と用途の説明を中心に行ってきました。次回はもう少し踏み込んで、プログラミング言語を学ぶとはどういうことかを、実際に1つの言語を触りながら解説します。

【参照リンク】

(アクセス:2011.04)

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30