PHPの勉強方法には、いろいろなアプローチがあります。もちろん、一つ一つ丁寧に習得していくことができればベストではありますが、今回はプログラムの知識が全くない方でも、PHPプログラマとして仕事をできるようになるための勉強方法をご紹介いたします。
参照:PHPエンジニアになるために準備しておくべきことについて解説した記事はこちら
全く初めてPHPに触れる方
ここでは、PHPに初めて触れる方。全くプログラミングは初めてという方や、他の言語は習得しているがPHPは初めてという方を対象とした勉強法をご紹介いたします。
サンプルプログラム勉強法
費用:1,000円〜3,000円程度
学習期間:1ヶ月程度
必要なツール:お手本とする書籍やウェブサイト
難易度:★☆☆☆☆
まず、PHPを早く習得するために大事なことは、PHPのプログラムを実際に書きまくることです。というのも、PHPのプログラムを書くことに慣れるためには、回数を重ねる以外には実際の経験を積むことは難しいためです。実際に書いていくことで、目的を達成するためには、どのようなプログラムを作れば良いか、そして書いたプログラムが、どのような実行結果になるかということをイメージできるようになります。
これを実現するために、最初は書籍などに掲載されているサンプルプログラムを書き写すようにすると良いでしょう。もちろん、ただ書き写すというのでも構いません。
しかし、今回は超実践的と言っておりますので、2つほど意識しながら書き写すようにします。
まず、1つ目のポイントは、必要に応じてコメントを書いていくことです。どのような基準でコメントを書いていくかというと、自分で見返した時に何が書いてあるかわかるようにコメントを入れていきます。もちろん、コメントが少ない方が習得できているということにもなりますが、少なくした結果、見返した時に分からないようでは意味がありません。
次に、2つ目のポイントは書く時にプログラムについて声に出しながら書くことです。内容はプログラムとして書いている内容そのままでも良いですし、書いているところの説明のような内容でも構いません。書いているプログラムについて自分自身に説明するようなイメージで行います。
この2つを、なぜ意識しながらプログラムをするのかと言いますと、実際に仕事としてプログラムを書く場合、完全に一人で作ることもありますが、たいていの場合は何人かで分担することが多くなります。そのため、自分の書いたプログラムを他の方と共有する、ということが、とても頻繁に発生します。
これらは、自分の書いたプログラムを他の人に説明したり、自分や他の人が後で見返した時に内容を理解できたり、といったことが可能になります。
PHPのプログラムに慣れてきた方
ここでは、一通りのPHPプログラムを書いて基本的な部分を理解されてきた方や、目的をPHPで実現するためには、どのように書けば良いか基本的な部分を理解できている方を対象にした勉強法をご紹介します。
メールフォーム勉強法
費用:2,000円〜3,000円程度
学習期間:一ヶ月程度
必要なツール:書籍、動作確認するためのサーバー
難易度:★★☆☆☆
PHPでプログラムを書くことに慣れてきた方は、実際にある程度の大きさのプログラムを書けるようにします。題材としては色々とありますが、ここではメールフォームを作ります。メールフォームとは、内容を入力して、それを特定の宛先にメールで送るためのものです。なぜ、メールフォームを作るかと言いますと、最低限の機能はシンプルでありながら、多くの機能を追加していくことができるためです。この機能追加を通して、一つずつ仕事で使うプログラムの要素を勉強していきます。
最初は、入力する項目もメールアドレスと本文のみ、処理も単純に入力した内容をメールで送るのみにします。本文も英数のみを想定したもので構いません。この程度であれば、サンプルプログラムより少し複雑というくらいの感覚で作ることができると思います。
ここで重要なのは、とりあえず完成させることです。たとえ、機能的には貧弱であったとしても完成させることで達成感が得られ、次に進むためのモチベーションとなります。このように一度完成させてから、このプログラムに色々な機能を追加していきます。具体的な例を挙げますと、以下のようなものを追加していくと良いと思います。
- エラーチェック(必須入力、文字数チェック、メールアドレス形式チェックなど)を行うようにする。
- メールに日本語を使えるようにする。
- データベースへメールフォームの内容を登録する。
- 送信内容の確認画面を追加する。
- 管理用の画面を作って、データベースから過去のメールフォームの内容を見ることができるようにする。
- 過去のメールフォームの内容をCSV形式でダウンロードできるようにする。
- 管理画面にログイン機能を追加する。
これらの機能は、いずれも実際の仕事で作るプログラムに必要な機能として、度々使うことになります。そのため、可能であれば機能ごとにまとめておいて、そのままコピーできるようにしたり、関数化したりして、後で使えるようにしておくと良いでしょう。
この時、PHP逆引き辞典のような機能から目的のプログラムを調べることができるような書籍を参考書として利用すると、悩んだ時に便利に感じるかもしれません。不安な方は一冊手元に置いておくと良いでしょう。もちろん勉強の時だけでなく、実際に仕事としてPHPのプログラムを書く場合にも、非常に便利ですので購入しておいて損はありません。
また実際の仕事では、一度書いたプログラムに機能を少しずつ追加していく、という場面が非常に多く見られます。ですので、この勉強を通して、後で機能を追加していくためには事前にどのように書いておけばいいか、機能を追加してもプログラムが見にくくならないようにするためにはどうすればいいか、を考えながら勉強されると一層効果的です。というのも、実際の仕事では後先考えずに作ってしまったことで、後で機能を追加しようとした時に非常に苦労してしまったり、機能を追加していくことでプログラムが見にくくなるスパゲッティープログラムになってしまったり、ということが往々に起こります。
この勉強法では、このようなことを回避するために、どうすれば良いかを考えながら作っていくようにします。
まとまったプログラムを書くことのできる方
ここではメールフォームのような、1つのまとまったプログラムをPHPで書くことができる方を対象にした勉強法を紹介していきます。
フレームワーク勉強法
費用:2,000円〜3,000円程度
学習期間:一ヶ月程度
必要なツール:書籍、動作確認するためのサーバー
難易度:★★★☆☆
一通りのプログラムを書くことができる方は、フレームワークを使ったプログラムを勉強しておくと良いでしょう。実際の仕事では、一からプログラムを作ることが実際にはほとんど無く、フレームワークを使ってプログラムを作ります。
PHPのフレームワークと言っても数多くあります。もちろん、それぞれ多少の違いはありますが、どのフレームワークも基本的な部分はほとんど変わりません。ですので、一つのフレームワークを習得しておけば、他のフレームワークについては比較的容易に習得することができます。
とはいえ、初めてフレームワーク使ったプログラムを勉強するのであれば、どれを使うか悩む可能性はあります。その際にオススメしたいのがCakePHPです。これをオススメする理由としては、ドキュメントが充実していて利用者が多いため、参考書籍や参考サイトが非常に多く存在するためです。
ここでは先に作ったメールフォームをフレームワーク上で動くようにします。同じものをフレームワークの機能を使って作ることになりますが、エラーチェックやデータベースへの読み書きなど、むしろフレームワークの機能を使うことで簡単に作れるものもあります。
プログラムを勉強するために大事なこと
ここまで一通り、PHPの勉強法を紹介してきましたが、仕事で使う場合を想定していますので、実際にプログラムを書けるだけでは十分ではありません。
コメントを残したり、自分で書いているプログラムの説明をわかりやすくしたり、あるいは、後のことを考えてプログラムを書いていったりなど、プログラムそのものよりも、他の方とプログラムをいかに共有しやすくするかが重要になってきます。
他にもプログラムを勉強する方法はまだまだたくさんあるかと思いますので、あなたが考える勉強方法もよかったら教えてください。
参照:PHPエンジニアになるために準備しておくべきことについて解説した記事はこちら
フリーランスになるために必要な知識やスキルアップの方法等、様々なお役立ち情報を発信していきます。
(リモートワーク案件に強いフリーランスエージェント「クラウドワークス テック」を運営)