PHPについて~2

8月 5th, 2010

プログラミング言語には様々な種類があり、その数は数えきれないほどですが、様々な場におけるシステム開発等で使用されているプログラミング言語となると、その種類はだいたい特定されてきます。
特定のプログラミング言語が多く利用されるのは、単純に考えるのなら、プログラミング方法、作成可能なプログラム、対応等の様々な意味においてプログラミングし易いためということに他なりません。
それを“人気が有るプログラミング言語”という表現に変えるとすると、真に人気の高いプログラミング言語はどのプログラミング言語になるのでしょうか。

今年1月のこと、「TIOBE Software」によって人気のプログラミング言語についての統計がとられ、その結果が発表されました。
統計の方法は、検索エンジンの主な複数からプログラミングについての検索結果によるインデックスです。
実際に扱われているプログラミング言語の統計とは異なるため、プログラミング言語の使用状況についてはなんとも言えませんが、“人気のプログラミング言語”という点ではこれこそが生の声なのでしょう。

統計の結果は・・・
1位・Java
2位・C言語
3位・PHP
4位・C++
5位・Visual Basic
・・・です。

ここで注目したいのがPHP。
PHPについては以前もご説明したとおり、HTMLと深く関係しているプログラミング言語です。
システム開発におけるプログラミング言語となるとPHPよりもC++やVisual Basicの方がより多く利用されているイメージが筆者にはありますが、それら以上にPHPの人気が高いということは、それだけHTMLにも関心が高いと考えられるのかもしれません。

インタプリタとコンパイラについて

7月 8th, 2010

前回までの3度に渡って、よく知られているプログラミング言語のひとつであるPerlについてお話ししてきましたが、その中でPerlはインタプリタ型に分類されるプログラミング言語だとご説明させていただきました。
インタプリタそのものは厳密にはプログラミング言語の一種ではなく、コンピュータでのプログラムの実行方法のひとつです。
実行方法には大きく分けてインタプリタ方式とコンパイラ方式の二方法があり、そのうちインタプリタ方式で実行するプログラミング言語をインタプリタ型、或いはインタプリタ言語と呼びます。
また、さらに厳密に説明するなら、インタプリタやコンパイラとは、そういった実行方法の機能を有したアプリケーションまたはソフトウェアであるということになります。

当サイトにおいて、かなり初期の頃に「プログラミング言語とはコンピュータが理解できるよう記述する人工言語である」というようなことを説明したかと思います。
人間の話言葉でコンピュータに指示を与えてもそれでは理解されないため、コンピュータが理解できるような機械語が数々のプログラミング言語であると。
しかし、開発されたプログラミング言語そのものも、それを用いて書かれたプログラムだけではコンピュータに理解されるだけで、実行には至りません。
実行させるにはそのためのオブジェクトコードなる形式に変換しなくてはならず、それを行ってくれるソフトウェアがインタプリタやコンパイラなのです。

インタプリタはご存じなくてもコンパイラという名は聞いたことがあるかと思います。
プログラミングした後、コンパイラする・・・といったふうに。
コンパイラもインタプリタに並ぶ実行方法ですが、こちらはプログラミングすると同時に変換を行うため、このようにセットにして作業されているのですね。
対し、インタプリタはプログラム実行の際に変換するという違いがあります。

Perlについて~3

6月 9th, 2010

現在最も普及しているプログラミング言語のひとつであるPerl。
これほどに普及しているからには、当然高いシェアを誇るWindowsで利用できるプログラミング言語となっています。
しかし、Perlが開発された当初はUNIXでのみ利用されていました。
Perlを開発したラリー・ウォール氏自身は、パーチユーティリティやニュースリーダー(これらもUNIXで利用するものです)等の作者でもありますからね。
とはいえ、いつまでもUNIXにばかり固執していられないのがコンピュータやネットワークの世界ですから、上記でも述べた通り現在ではWindowsでも充分活用できるようになっています。
もちろん、その他の考え得るOSならほとんどが可能です。

さて、前々回に初めて「Perl」なるプログラミング言語を紹介したとき、「PerlはC言語を始めとしたいくつかのプログラミング言語をもとに生み出された」というようなことを述べさせていただきました。
元となったいくつかのプログラミング言語のうち、C言語以外に主要なプログラミング言語として有名なのが「shell」というものです。
これに関して、当のラリー・ウォール氏は次のように述べています。

「『shell』が割れて中から出てきたものが『Perl』だった」

・・・つまり、貝(shell)の中から真珠(Perl)が出てきたということですね(本来の正しいスペルは異なりますが)
ここからは私個人の想像なのですが、新しいプログラミング言語が「Perl」と名付けられたのは、そういったイメージからきているのでしょうか?
また、元となったプログラミング言語よりもより価値のあるプログラミング言語である、という意図もそこに籠められている気がしますね。

Perlについて~2

5月 10th, 2010

Perlの特徴をいくつか挙げてみましょう。
まずひとつめは、インタプリタ言語であるということです。
インタプリタ言語ということはどういうことが言えるかというと、わざわざコンパイルする必要もなく実行することができるということです。
特に、Perlの場合テキストファイルの処理に関して強みをもっており、これに関するプログラミングとなると幅広い応用が可能となっています。
例えば、複数のテキストファイルからそれぞれの情報を読みとり、それを反映させるといったことはPerlの十八番と言っても良いでしょう。
そのために必要となる正規表現についても、Perlでは多種多様かつ使い勝手の良いものがサポートされているのです。

ふたつめの特徴として、文法がC言語と似ていると言うことが挙げられます。
C言語といえば、あらゆるプログラミング言語の中でも特に多く利用されている種類で、プログラミング入門をこのC言語から始めるという方も多くいらっしゃるでしょう。
そのため、C言語に慣れ親しんでいる人にとってはPerlは始めやすいプログラミング言語であるはずです。
さらに、Perlの記述法には省略可能な方法もたくさんあるので、慣れてくるとスピードアップも期待できます。

みっつめの特徴が、なんといってもフリーウェアということでしょう。
書籍を購入しない限り、インターネットさえ利用すればお金をかけずに勉強してしまえます。
Perlがこれほどまでに普及しているのは無料であるためかもしれませんね。
そのおかげか、ネット上や書店においてもPerlに関する情報量は驚くほど豊富に揃っています。
懸念事項があるとすれば、それらのどれを利用すれば良いのか迷ってしまうことでしょう(笑)

Perlについて

4月 5th, 2010

前々回と前回、Rubyという言語を紹介したときにPerlのことが少し出て来ましたので、次はこの言語について説明したいと思います。
Rubyの名の由来がPerlに即して宝石の名が付けられたとは言いますが、このとおりPerlの読みは「パール」であってもスペルは宝石のパールとは異なっています。
Perlは「Practical Extraction and Report Language」の略。
ちなみに宝石のパールは「Pearl」と書きます。

さて、プログラミング言語のPerlですが、こちらはインタプリタ方式の言語となっています。
開発者はラリー・ウォール氏。
開発者や方式を知らなくても、Perlという言語名を耳にしたことぐらいはある方はけっこう多いでしょう。
というのも、Perlは我々にとって馴染みのあるシステムの多くに利用されている言語だからです。
Perlで記述されている主なものに、ウェブ上で動くCGIがあります。
CGIとえば、掲示板(BBS)やチャットやアクセスカウンター、などがありますね。
自分でこれらのCGIを作ったことがない方でも、ウェブ上で配布されていたりサービスされているものを利用したことがある方はいるのでは?

PerlはC言語を始めとしたいくつかのプログラミング言語の良い所取りをしており、テキスト処理に優れた実用性の高い言語となっています。
これでCGIが作られていることからも判る通り、ウェブ上で広く利用されていて、RubyばかりでなくPHPにも影響を与えているのです。

Rubyについて~2

3月 2nd, 2010

「Ruby」をこのサイトで紹介したのは前回が初めてですが、当サイトで紹介せずとも、プログラミング言語について勉強している方ならRubyぐらい知っているという方は多いでしょう。
また、データーセンターによるコロケーションサービス利用者や、サーバーをハウジングサービスに預けている方々にとっては当然の知識かもしれませんね。
Rubyは日本で生まれたプログラミング言語ですが、今や日本よりも海外の方がユーザーが多いというほどのメジャーなプログラミング言語です。
というのも、Rubyの生みの親・まつもとゆきひろ氏によれば、英語のメーリングリストが日本語のものの10倍もあるのだとか。
それほど愛用されているのですね。

Rubyのカンファレンスは今は日本にもありますが、最初に始まったのは日本ではなく海外です。
特にアメリカにおいては2001年から毎年欠かさず行われており、近年ではその参加者は340人にも上るのだそう。
カンファレンスの始まりをもっと厳密に遡れば、2001年にデンマークにおいてまつもとゆきひろ氏が講演したものがあります。

日本生まれのRubyであるのに、海外の方が先に始まったものはカンファレンスだけではありません。
書籍についても同じことが言えます。
Ruby関連書籍が初めて出版されたのは2000年のアメリカでのことです。
これが、驚くことにPerlの書籍以上に売れ行きが良いのだとか。
これらの他、Ruby関連のホスティングサイトは海外開発者が多いといった特徴もあります。

私は特別Rubyに詳しいわけではありませんが、日本生まれのプログラミング言語がここまで海外で親しまれているという現実に誇らしく思いますね。
当の日本人も、もっとRubyに着目してみてはどうかと思います。

Rubyについて

2月 3rd, 2010

Rubyとはオブジェクト指向スクリプト言語にあたるプログラミング言語のひとつ。
まつもとゆきひろ氏個人によって開発された、フリーソフトウェアです。
「日本Rubyの会」というRubyの開発者や利用者によるコミュニティがあり、公式サイトで無料ダウンロードが可能となっています。

Rubyの目的は、オブジェクト指向プログラミングを手軽に行うこと。
そのため機能も様々な種類のものを有しており、個人開発とは思えないほど本格的なプログラミング言語となっています。
Rubyはそれだけを単体で扱うよりも、C++やSmalltalk、またEiffelといったプログラミング言語と併用してこそ、真価を発揮するプログラミング言語です。
例とした3種類のプログラミング言語は、どれもオブジェクト指向プログラミングとしては大げさな面がありますが、Rubyはそこを支援するためにあると言えます。
とはいえ、もちろん手続き型を通常のプログラミングとして行うことも可能ですが。

Rubyの特徴は、文法がシンプルで、Perlと比較できるほどテキスト処理関係に優れていることにあります。
イテレータや例外処理のおかげでプログラミングが容易にできるのは、Rubyならではの利点でしょう。

・・・ちなみに、このプログラミング言語の名の元となったのは、皆さんもお気づきのとおり宝石のルビーです。
よく比較されるプログラミング言語のPerlが真珠のパールと同じ発音をすることから、こちらも宝石の名をとろうということになり、まつもと氏の知人の誕生石であるルビーが選ばれたのだとか。

Visual Basicについて~3

1月 7th, 2010

あけましておめでとうございます。
年を跨いでしまいましたが、Visual Basicについてもう一歩踏み込んで説明してみたいと思います。
もうしばし、お付き合いくださいませ。

Visual Basicは開発された当初、初心者用のプログラミング言語とされ、それらしく比較的簡単かつ機能も低いものでした。
しかし、バージョンを重ねるにつれ、記述の容易さはそのままで機能は高度になり、現在の最新バージョンでは初期のものと比較するべくもないほどとなっています。
ただ、Visual Basicは当時も今もインタープリタ動作です。
そのため、C/C++のネイティブプログラムなどと比べると、実行速度が10~20倍も遅いと言われており、これに関しては仮想マシンベースとした高級言語のJavaなどと同じなのだとか。
(ちなみに、速度比較の数字は実際の処理内容に応じて上下します)

これらの速度については、バージョン5.0でWin32ネイティブコードのコンパイルがサポートされるようになり、以来大幅に改善されてきました。
そのこともあって、もともと初心者用であるがゆえの習得の容易さから、レベルの高いプログラマーの間でも頻繁に利用される言語となっています。

ちなみに速度面ですが、NET Frameworkを実行環境とするVB.NETでは遜色ないと言われています。
というのも、最終的なコンパイラの出力コードが、Javaのバイトコードに近似したMSIL中間コードであるため。
また、このコードはJITコンパイラに最適化され、実行時にはネイティブコードに変換されるので、オーバーヘッドもJavaのバイトコード以上に小さくなります。

Visual Basicについて~2

12月 17th, 2009

引き続き、Visual Basicについてご説明していきます。
今回は少しVisual Basicの内容について深く入り込んでいきますので、プログラミング言語についてある程度の知識がある方など参考にしてください。

Visual Basicの基本の動作は、プロパティの変更やマウスクリックといった、何らかのイベント(入力動作など)が行われた際に、プログラム処理が実行されます。
Visual Basicのフォーム上には各種GUIパーツがあらかじめ用意されており、それらを配置していくことで記述します。
そのため、複雑なプログラミングを行うにあたって、ユーザーが難しいコーディング方法の全てを覚える必要はありません。
GUI実現で付随することとなるグラフィック描画といった画面管理は、GUIパーツの内部にて行われているのです。

Visual Basicというプログラミング言語の仕様は、前回ご説明したとおり前身は「QuickBASIC」にあたりますが、それらと比べると随分と拡張されているプログラミング言語です。
Visual Basicにとりいれられている概念は、どうやらオブジェクト指向や構造化プログラミングに近いようです。
Visual Basicもこれまでに多くのバージョンを重ねてきましたが、6.0以前にはオブジェクト指向はほぼ皆無といってもよいくらいでした。
しかし7.0以降のものになると、当然のようにオブジェクト指向やその機能が含まれています。

Visual Basicは、初心者にも使いやすいプログラミング言語でありながら、多種多様な機能を擁するよう進化してきたものの実例であるといえるでしょう。

Visual Basicについて

12月 14th, 2009

プログラミング言語について勉強中の皆さん、お久しぶりです。
過去二度に渡ってプログラミング言語の種類からは外れて、プログラミングという学問について実体験を交えて考察してきましたが、そろそろ話を戻してプログラミング言語の種類について述べて行きたいと思います。

今回ご説明するのは「Visual Basic」という名のプログラミング言語。
こちらも、一般的に広く使われているプログラミング言語です。

Visual Basicの前身はマイクロソフトの「QuickBASIC」というプログラミング言語です。
こちらについて説明するとテーマが外れてしまうので今回は割愛。
いずれ、「QuickBASIC」についても説明したいと思います。

で、Visual Basicですが、略して「VB」と呼ばれることもあるので、こちらの名で聞いたことがあるという方も多いのではないでしょうか。
このVisual BasicはQuickBASICをベースとして、ウィンドウズ用に、アプリケーション開発のために作られました。
アプリケーションは個々のパソコン上で作動させるものばかりでなく、Web用、モバイル用のものも含まれます。

Visual Basicは初心者用のプログラミング言語としても有名です。
「Basic」と名がついているのもそれに由来しています。
そのため、このプログラミング言語が作られたばかりの当初は、開発できる機能も限定されていましたが、バージョンをいくつも重ねた現在では機能は更に拡張され、多くのビジネスシーンで活用されるようになっています。