この記事で、Linux Professional Instituteの認定資格に最近追加されたものについての連載を終了します。Web Development Essentialsです。最初の2つのパートでは、フロントエンドとバックエンドのプログラミングについて紹介しました。最後に理解しなければならない主要な技術はデータベースです。
データベース
ほとんどのアプリケーションは大量のデータを扱っており、サーバーのメモリやファイルに保存することは現実的ではありません。MySQLやPostgreSQLのようなリレーショナルデータベースは、ほとんどの場合、Webサービスが動作している場所で見つかります。例えば、音楽サイトでは、訪問者が作曲家、タイトル、ジャンル、日付から音楽を検索し、データベースから結果を提供することができます。
リレーショナルデータベースは、SQL(Structured Query Language)を使ってリクエストを受け付ける。SQL の詳細はデータベースエンジンによって異なりますが、ほとんどの Web アプリケーションで必要な SQL は非常に基本的で、すべてのデータベースでほとんど同じように動作します。作曲家とタイトルの組み合わせで検索したり、新しい情報をデータベースに格納したりすることは、基本的な操作です。
Web Development Essentialsでは、ノートパソコンで簡単に実行できるSQLiteを学ぶとよいでしょう。仕事ではより高機能なデータベースに出会うことになりますが、SQLiteで学んだことはそちらにも応用できます。
Node.jsなどのプログラミング言語やフレームワークには、データベースにSQLを送信し、その結果を解釈するためのインタフェースが用意されています。例えば、検索で75件ヒットしたら、一度に10件ずつ検索して、訪問者に表示するように整形する練習ができます。データベースの練習をするときは、おもちゃのアプリケーションを考えるのではなく、大きなデータセットを扱って、その要件を理解する必要があります。
ウェブ開発への包括的なアプローチ
仕事では、特定の技術に特化することになるでしょうが、Webが何を提供し、大規模なWebサイトがどのように機能しているかを、上から下まで理解する必要があります。
この連載をきっかけに、Web 開発の本質を考え、ここに挙げた技術を習得していただければと思います。Webのための基本的なプログラミング技術は、プログラミングの学問や専門的な訓練を受けたことがなくても学ぶことができます。そのため、コンピュータの世界でキャリアを積みたいのであれば、Web制作は格好のスタート地点となります。そして、さらに学問的、専門的な知識を身につければ、ウェブ開発の知識はこれからも役に立ちます。ウェブデベロップメントは、長い間、ずっと存在し続けるのです。
先に説明したように、実際のWebサイトを使った経験は、試験合格のために貴重なものです。しかし、その教材は書籍やビデオなどで多くの資料が用意されています。LPIが独自に作成した「Learning Materials for Web Development Essentials」は、現在9ヶ国語で提供されていますので、ぜひご一読ください。