
まずPHP初心者の学習ロードマップを見てみましょう:
- HTML/CSS/JSなどのWebページの基本要素に慣れる。この段階を終えると、簡単なWebページを自作でき、要素の属性についても比較の理解できる。
- (2) 動的言語の概念と動作メカニズムを理解し、基本的なPHP構文に慣れる。
- (3) PHPとHTMLを組み合わせる方法を学び、簡単な動的ページを完成させる。
- (4) MySQLに触れて学び、データベースの設計を始める。
- (5) PHP構文を繰り返し固め、PHPのよく使う関数のほとんどに慣れ、オブジェクト指向プログラミング、MySQL最適化、およびいくつかのテンプレートとフレームワークを理解する。
- (6) 最終的に機能が充実した動的サイトを完成させる。
初心者は、上記の概要を見てPHP学習はとても簡単だと思ってはいけません。プログラミングには真剣な思考と絶え間ない実践が必要です。以下でPHPの学習ロードマップを具体的に説明します。まず、どんなWebサイトもWebページで構成されています。つまり、Webサイトを完成させたいなら、まずWebページを作ることを学ばなければなりません。静的Webページの制作技術を身につけることは、Webサイト開発を学ぶための前提条件です。そのため、HTMLを学び、将来のWebサイト制作の基礎を築く必要があります。HTMLはやりながら学ぶべきで、HTMLのあらゆる要素を実際に試さなければなりません。どの要素がどのような効果をもたらすのかを理解して初めて深く記憶できます。本を読むだけではダメです。
-
静的ページを1つ完成できるようになったと仮定しましょう。次は動的言語を理解し始めるべきです。動的言語に触れたばかりのころは、多くの人がさまざまな疑問を持つかもしれません。コードは直接出力されるのではなく、処理を経るものです。HTMLはHTMLパーサーを通り、PHPもPHPパーサーを通ります。HTMLを学ぶのと同じ理屈で、どんなパーサーでも動作させたいなら、その専用の構文構造を使わなければなりません。
-
PHPを学ぶなら、あなたは幸運だと感じるべきです。なぜなら、他の言語を学んだことがあれば、PHPは比較的簡単だとわかるからです。この段階では、HTMLとPHPの概念をはっきりさせましょう。今すぐPHPに1+1がいくつかを計算させて、ブラウザに出力させることができます。幼稚だと思わないでください。これはとても小さなコードですが、あなたのプログラミングの道にとっては大きな一歩です。ただし、今のあなたはまだ初心者です。
-
次にデータベースを学びます。MySQLはまさにPHPの黄金のパートナーと言えます。このデータベースを攻略しましょう。データベースの概念を理解したら、PHPを通じてデータベースに接続し、さらにPHPを使ってデータの挿入、削除、更新を成功させることを目指します。
-
このとき、あなたは次のような状態かもしれません。「HTMLはできますか?」「はい、テーブルレイアウトのWebページをいくつも作れます!」「PHPはできますか?」「はい、1+1の計算を関数に書いて呼び出せます!」「MySQLはできますか?」「はい、データベースのデータを挿入・削除できます!」
-
では、次に何をすべきでしょうか?小さな留言帳(ゲストブック)を作ってみましょう。これも初心者が直面する関門です。しばらく時間をかけて、ようやくフォームのデータをデータベースに挿入し、それを表示できるようになりました。ひとつのプログラムの原型が生まれたと言えるでしょう。しかし、あなたは「あの人はフォーラムを作り、あの人はCMSを開発している。自分はいつ書けるようになるのだろう?」と思うかもしれません。焦らないでください。知識をもう一度固め、PHPとMySQL開発の要点に慣れたら、自分の書いた留言帳を見返して、「本当に自分が書いたのか?」と疑うかもしれません。そのとき、留言帳を改良しましょう。留言帳には登録機能とページネーション(ページ送り)機能を追加すべきです。可能なら、UIも強化できます。
-
これで学んだことになるでしょうか?いいえ、いいえ、まだ早いです。あなたはまだOOP(オブジェクト指向プログラミング)に触れていませんよね?テンプレートやフレームワークはどうですか?まだまだ学び続ける必要があります!PHPフレームワークは、Webアプリケーションを構築するための基本的な枠組みを提供し、PHPでWebアプリケーションを書くプロセスを簡素化します。開発時間を節約でき、より安定したアプリケーションの構築に役立ちます。つまり、PHPフレームワークは、時間を節約し、自分のコードを強化するために使えるツールです。初めてPHPフレームワークを選ぶときは、いくつか試すことをお勧めします。各フレームワークには長所と短所があります。例えば、Zendフレームワークは多様な機能と広範なサポートシステムを備えているため、長い間人気がありました。CakePHPはZendより後に登場したPHPフレームワークで、対応するサポートシステムは少ないですが、より便利で使いやすいです。
-
オブジェクト指向とフレームワークを理解したら、XMLにも触れてみるべきです。要するに、すべてを学んだと感じることは決してありません。学びに終わりはありません!何かを学ぶとき、近道があると思ってはいけません。テクニックが多くても、努力が足りなければ意味がありません。一つ保証できるのは、PHPを学べば、他の言語を学ぶのもきっと速くなるということです。逆も同じで、以前に他の言語を学んだことがあれば、PHPを学ぶのもきっと速いでしょう。
-
他の人の成功したコードを多く参考にすることは、絶対に有益で無害です。だから、数多くの試練を経て練り上げられた古典的なコードを多く見ることが、上達の最良の方法です。さらに強調したいのは、技術を学ぶ過程では困難に直面したり、迷ったりするかもしれません。PHPを半分学んだところで、またC#に気が散ったり、「Javaがいい」と言う人もいるかもしれません。このとき、絶対に揺らいではいけません。最後までやり抜いて、完全に学びましょう。PHPを無事に学び、自分の望むWebサイトを開発できるよう祈っています。