さて、「ネットショップに役立つプログラム」というテーマでコラムを書かせていただくことになった、ひさやん と申します。よろしくお願いいたします。
さて、突然ですが、「プログラム」って何でしょう?
「プログラムとは・・・卒業式などの式次第」みたいな答えになってしまったら、話がややこしくなるので、コンピュータ用語においての「プログラム」についてに限ってみますね。
さて、こういうときの Wikipedia(ウィキペディア)! から引用しますと・・・
プログラム とは
コンピュータの行う処理(演算・動作・通信など)の手順を指示したもの
となっています。
すごくシンプルな定義ですね。
そっけなさというか味気なさを感じてしまいます。
が、それ以上でも以下でもなく、やはり、「手順を指示したもの」なんです。
さて、その「手順を指示」の文法や決まりごとが、プログラム言語と呼ばれるものです。
具体的に耳にされることが多いものだと、Perl(パール)、PHP(ピー・エイチ・ピー)、Ruby(ルビー)、C(シー)、ASP.Net(エー・エス・ピー)、Java(ジャバ)、JavaScript(ジャバ・スクリプト)のような、プログラム言語と呼ばれるものになります。
マシン語だとか、ニーモニックという、マニアックな言葉を耳にしたことがある方も、なかにはいらっしゃるでしょう。
ほかにも、わたしが空でふと思い出せるだけでも、SmallTalk、COBOL、BASIC、Fortran、Python・・・まだまだいろいろなプログラム言語と呼ばれるものは存在します。そうそう、Excelなどのマクロも、プログラム言語の一種ですね。
適材適所に応じて、プログラム言語は生み出され育ってきました。
俗説かもしれませんが、「ロシアなどの寒い地方だと、口を大きくあけなくとも発音が伝わるような単語が多い」だとか、「必要ないので、虹が7色ではなく2色の国もある」なんていわれます。そういった、「人種の数だけ、言語がある」ように、プログラム言語の成り立ちも近いのかもしれません。
さて、中でも「ネットショップなどで使われることが多い言語」について、紹介してみましょう。
この書き方、なんか、もっちゃりしますよね。「ネットショップなどで使われることが多い言語」。奥歯に物が挟まったような言い方、まどろっこしい書き方です。書いててなんだか読みにくいし、うざったいです。
実は、それを、呼ぶための、便利な言葉が作られたんです。
それが
『LL(エル・エル)』
です。
LLとは、Lightweight Language の略で、意訳すると「お手軽言語」ってところでなのですが、不思議ですね「LL」と書くだけで、なにかかっこいいです。
使用前:「ネットショップなどで使われることが多い言語」
↓
使用後:「LL(エル・エル)」
すばらしい。まどろっこしくなくなりました!
言葉ができるということは、どういうことか。
「LL」について、話題が豊富になってきている時代の現われといえるでしょう。
いちいち「LL」のことを「ネットショップなどで使われることが多い言語」なんて書いていたら、執筆者は文字数を稼げて喜びますが、編集者は「そんなので文字数を稼ぐな!」ってお怒りになるでしょうし、会話の上でも「ネットショップなどで使われることが多い言語」なんて連呼していたら、舌をかむだろうし、つかれちゃいます(^^;
※「ネットショップなどで使われることが多い言語 に LL がある」は成り立つが、
「LL とは ネットショップなどで使われることが多い言語である」は厳密には成り立たないです。でも、あまりこだわらずに話を進めますね。
とういことで、「LL」に興味がある人口が増えてきているのです。
今日では、プログラマーではない・・・たとえばネットショップの店長さんが、「すこしWEBの利便性をよくしたいなぁ」「メールをもうちょっと自動的に送りたいなぁ」と感じたときに、「だれかプログラマーにプログラムをつくってもらうか」ではなく、「自分で簡単プログラミングできないかなぁ」って、行動を起こすようになってきているのです。
みなさん、「LL」。覚えてください。
ついでに Lightwegiht Language (ライトウェイト・ランゲージ)って略だってことも、覚えてください。
※これについてもいつかコラムで詳しく触れますが、コンピュータ用語って、アルファベット数文字の略語がすごく多いです。OS だとか SQL だとか CGI だとか・・・、なんだかそれってコンピュータやプログラムにとっつきにくくなる原因のひとつだと感じています。ですから、当コラムではできる限り略称ではない本来の意味を併記していこうと思います。
さて、LLは、その名のとおり「お手軽」なので、掲示板やショッピングカートをつくるのに、非常に適しています。まさにネットショップさん向けな言語といえるでしょう。
ちょっといくつかご紹介していきましょう。
Perl パール
LLの中では、日本では一番歴史がある言語ではないでしょうか。
Practical Extraction and Report Language の略なんだけど、ちょっとわかりにくいですね。テキストの検索や抽出、レポート作成に向いた言語です。
文献も多く、根強いファンも多く、レンタルサーバーなどでも、一般的に使えるようになっていることが多いです。
PHP ピー・エイチ・ピー
Hypertext Pre-processer の略。
最近では、PHPを標準で使えるレンタルサーバーも増えてきました。
データベースとの連動が得意な言語仕様になっています。
PHP5になってから、オブジェクト指向でも開発できるようになり、LLよりも「やや重い言語」と、進化(と同時にやや複雑化)している傾向があります。
Ruby ルビー
なんと日本人がつくったプログラム言語です。
略語ではないのですが、語源は perl->pearl(6月の誕生石)->ruby(7月の誕生石) といわれています。
シンプルな文法で、比較的とっつき安いと思われます。
最近では、Ruby on Rails(ルビー オン レイルス)という、言語拡張(フレームワークと呼ばれます)が行われたので、注目度がぐんとアップしています。
Python パイソン
いい言語なのですが、まだすこし日本ではマイナーです。
語源は、開発者がモンティパイソンのファンだったから!と言われています。
技術文書の多くを英語圏のものに頼ることが多いです。余談になりますが、Pythonについて書かれた英語資料を和訳サイトなどで翻訳にかけると「にしきへび」が乱立する文章になり、苦笑することがあります。
ASP.Net エー・エス・ピー・ドット・ネット
ASP は、Active Server Pages の略で、VBScript や JScript などのさまざまな言語の組み合わせにより成り立っている開発環境を指します。Microsoft社製で、適材適所で使われています。が、有償でのライセンス手配が必要なこともあり、「さくっと掲示板をつくる」といった用途で見かけることは少ないかもしれません。
LLではあるけれど、上記とすこし違う言語として、JavaScript があります。
前述したいくつかの言語は、すべてWEBサーバーで動くプログラムや環境を指します。対して、JavaScriptは、WEBブラウザで動くプログラムです。
JavaScript ジャバ・スクリプト
WEBブラウザで動くプログラム。簡単な入力項目の属性チェックや、メニューやボタンのマウスオーバーでの画像差し替えなどに用いられる。
最近では、Google Mapsに代表されるような「Ajax(エージャックス)」と呼ばれる開発手法が台頭してきたので、JavaScriptがいろいろと複雑な動きに用いられるようになり、「WEBブラウザでの表現力を高めるのに使える、案外奥が深い言語だ」と世間の認知が変わってきた。
つい手を抜いて、「ジャバ」と略して呼んでしまうと、Java言語という違う言語を指すことになるのでご注意を。
そういえば、ActionScript というものもあります。
AcrtionScriptとは、Macromedia の Flash でつかわれるプログラム言語です。
アニメーションを動かすタイミングをはかったり、座標を計算したり・・・を得意としています。
最近ではバージョンアップが重ねられ、かなりプログラム的に高度なことができるようになってきました。ですから、最近では、Flash使いは、「お絵かき」「デザイン」が得意だけではなく、プログラムの知識も必要とされるようになってきているんですね。
な〜んとなくですが、世間一般で「デザインは文系」「プログラムは理系」というイメージがありますよね。まだ分業が確立されていないため、Flash使いは、実は「文系・理系」を両立させている必要があるのです。なかなか難しい分野だと思います。
ひょっとしたら、いまからどこかに就職するためにプログラム言語を勉強しようと考えていらっしゃる方には、習得するのにオススメな言語なのかもしれません。
ActionScriptは、LLのようでLLに含められないかもしれません。そもそも Script という名には、「簡易プログラミング言語」や「お手軽な言語」という意味があるので、LLに含めたくなるのですが、すこし毛色が違うのと、複雑化してきたので、別系統と思ってても間違いではないでしょう。
LLじゃないものとして、代表的な言語としては、C言語、Java、などがあります。
これらの言語は、OS(Windows や Linuxなど)や、カーナビ、携帯電話の中などで動いています。これらは Lightweight(お手軽)ではなく、Heavy なので、プロにまかせちゃいましょう。
さて、いろいろご紹介しましたが、
「LL やってみようかなぁ?」
と手始めに何か触られるのであれば、PHPをオススメします。Perlもいいのですが、業務で使うとなると、すぐにデータベースとの連動が必要になるでしょうから、PHP にやや軍配があがります。もし身近な親切プログラマさんが Perl を使うなら、Perlがいいでしょう。だれもいないなら、PHPがいいでしょう。PHPは、日本語での書籍もWEBサイトも多く、また、PHP5からはオブジェクト指向に比重がおかれていますが、従来の手続き型指向でも、柔軟に動くので、いろいろと試せます。
次回は、プログラムの言葉の意味の中にあった
コンピュータの行う処理(演算・動作・通信など)の手順を指示したもの
の「手順」について、ご紹介をさせていただく予定です。