リニア・テック

ログイン

カート

ホームWeb開発/IoT

Web開発/IoT

Webアプリケーションの要素技術

多くの人がスマートフォンやタブレットといった端末を持ち歩き,様々な機器がインターネットに接続されることが当たり前となった現代において,通販サイトや動画配信サイトのようにWeb上でサービスを提供する「Webアプリケーション」はとても身近な存在です.Webアプリケーションを自作できれば,既存の情報インフラがもたらす利便性を最大限に活用できます.技術的な解決手段の選択肢を増やすという意味でも,Web技術を習得することには大きな意義があります.

一般的なWebアプリケーションを構成する要素技術を次図に示します.Webアプリケーションの核心は,「ネットワーク経由で情報を読み書きするデータベース」です.このデータベースにユーザの操作性を良くするためのインターフェース(UI)を付け足したり,情報漏洩や改ざんに対するセキュリティ対策を講じたりすると,実用的なWebアプリケーションが完成します.

これらの技術は,決して大規模な商業サイトだけのものではありません.小規模な社内ネットワークにデータベースを導入して業務改善や自動化を達成したり,個人利用の範囲でレンタル・サーバを借りて自宅の機器と連携したりと,Web開発の技術は幅広い目的に応用できます.ここでは,個人利用/商業利用を問わず実用に耐える水準のWebアプリケーションの開発ノウハウを扱います.

開発方針は「温故知新」

私は「CPUの動作を理解したいから自分で作った」,「ICチップを使うだけではつまらないから自分で設計した」,「半導体デバイスの動作原理を知りたいから大学の研究室にこもって自分でトランジスタを作った」という人間です.とにかく「しくみを知りたい」という気持ちが強いため,仕事のやり方は泥臭く,非効率的であると自認しています.

そういった事情により,私のWebアプリケーション開発は「枯れた技術を十分に理解して活用する」という方向性になります.最新のWeb開発用プラットフォームや便利なライブラリ,流行りのプログラミング言語などは扱いません.PHPとJavaScriptを使い,できる限りすべての機能を自力でコーディングします.HTMLやCSSはテンプレートや補間を使わず,基本的にすべて手打ちです.セキュリティを担保できる範囲であれば,ブラック・ボックスを極力排除します.

このような姿勢は,仕様やトレンドが目まぐるしく変化するWeb業界においてナンセンスかもしれません.少なくとも,スマートでスタイリッシュなWeb開発(本当にそんなものがあるとすればの話だが)とは無縁です.とはいえ,何事にも「時代や環境によらない本質的な考え方」というものはあるはずです.それを追求することは技術者の知的好奇心をくすぐるだけでなく,実務上も有益です.個人的には,こういった「温故知新」的な行動のおかげで製品の不具合を未然に防いだり,新しい技術に素早く適応したりといった経験が何度もあります.そこでWeb開発に関しても,これがどこまで通用するのか実験してみたいと考えています.もしご興味があればお付き合いください.

Webアプリケーション開発セミナ

今後,Webアプリケーションの開発手法を一気通貫で解説するセミナを作る予定です.インターネットの基本的なプロトコルからはじめて,HTMLによるWebページ作成,PHPによるサーバ側処理の実装,SQLによるデータベース管理,JavaScriptによるブラウザ側処理,Webアプリケーションが備えるべきセキュリティ機能などを説明し,最終的には「この自作ECサイト」の作り方を解説します.