では、前回に引き続き、見ていきましょう。
本記事を読むことで、得られるメリット
- プログラマーとして、効率良く何から学べば良いか理解できる。
- 余計なWEB情報に惑わされることがなくなる。
- 独学を継続できれば、プログラミングスクールに高額を払わなくて済む。
PHP サーバーサイド言語
WEBプログラマー志望の人が、一番時間を費やすことになるであろう、PHPです。
PHPはプログラム言語の中でも、初心者の方にとっては敷居が低く、尚且つ、柔軟なプログラムの書き方ができます。
僕が、WEBを始めた10年前から、現在でも、沢山の企業でPHPは採用されています。
その一方で、その柔軟性が仇となり、WEBエンジニアの中にはPHPを嫌う人もいることは事実です。
HTMLの中に直接埋め込んでプログラムを記述できるので、ソースコードがぐちゃぐちゃになりやすいことも起因していると僕は考えています。
初心者の方がまず、学ぶべき範囲を以下に記載します。
- 変数や各演算子、条件分岐、ループなど、文法を学ぶ。
- HTTPメソッド(主にGET / POST)を知る。
- 簡易デバッグとしてvar_dump(); を覚える。よく利用します。
- データベース接続のためのPDOを使えるようにする。
- HTMLファイルにPHPプログラムコードを記述し、WEBブラウザで出力する。
文法は、何度も繰り返しプログラムを打つ事で、段々と身に付いていきます。
できるだけ毎日、繰り返すようにする方が良いです。
以下、ツイートです。
僕はプログラミングの練習をする時、参考コードを写経します。
— ふわふわしょうちゃん@WEBエンジニア・メンター (@FuwaFuwaShoChan) September 15, 2020
まとまったコードなら分解もするし、それでどう動くのかテストします。
繰り返し同じコードを打つことで、段々と文法が身に付きます。その場限りでは忘れますよ。#駆け出しエンジニアとつながりたい#プログラミング初心者
人は、忘れる生き物ですので、単に数日だけプログラムを書く練習をしても、身に付きません。
「プログラムを書く → WEBブラウザで実行 → エラー or 成功 → プログラムを書く」の繰り返し。
何度も何度も書く感じです。
繰り返しコードを書くにも、見本がなければ始まりませんね。 以下に僕が実際に今までPHPを学ぶのに一番よく使用した本を貼っておきます。
(ちょっと古いですが、良い本です)
この本1冊あれば、後に勉強する「フレームワーク」に対する理解もできます。 オススメです。
RDBMS(リレーショナルデータベース)
サーバーサイド言語と、セットで勉強する必要があるデータベースについてです。
データベースも色々な種類がありますが、ここでは「MySQL(MariaDB)」を取り上げます。
なぜなら、各企業で導入事例が豊富なのと、AWSのAuroraというデータベースサービスにも互換性があるからです。
今後も、長期的に使用されていくと予想できます。
データベースは文字通り「データを格納しておく場所」です。
企業の顧客情報など、色んな情報を格納することができます。
それを、PHPのプログラムコードでSQL文というデータベースを操作するための構文を書いて、データを呼び出したり、書き込んだりするわけです。
データベースを扱うために初学者がまず、覚えるべき範囲を以下に示します。
- 「phpmyadmin」を使用し、データベースをGUI(グラフィカルユーザーインターフェース)で扱えるようにする。
- データベースの概念(DB作成・テーブル・カラム・データ型)などを勉強する。
- SQL文のCRUD(Create登録 / Read読込 / Update更新 / Delete削除)できればJOIN句も覚える。
- PHPを使用して、DBにPDOを使用してコネクトし、SELECT文を使用して、データを取得する。また、それをWEBブラウザで表示する。
ぐらいで良いかと思います。
いきなり「phpmyadmin」という聞きなれない単語が出てきました。
phpmyadminはXAMPPのインストール時に付属されている、GUI上でデータベースにアクセスできる便利なツールです。
XAMPPコントロールパネルからApacheとMySQLが起動している状態で、WEBブラウザ上でURLに「localhost」と記述してアクセスすると、画面を開くことができ、リンク先に行けば画面を開けます。
phpmyadminは、とても便利なので僕は今でも使用しています。
phpmyadminを使用しないと、データベースを黒い画面のコマンドベースで操作する必要があります。
初心者には難しいので、phpmyadminを使う方が簡単です。
また、本ブログでも詳細を解説しようと思いますが、初学者向けのphpmyadminの参考サイトの紹介です。
https://www.dbonline.jp/phpmyadmin/
サーバーサイド言語の学習になると、範囲を絞っても一気に覚えなければならないことが増えます。
最初はPHPでデーターベースにアクセスするだけでも、結構、足ふみ状態になると思います。
全て、詳細に解説できれば良いですが、一気に記事を書くことはできないので、とりあえずググって、情報をかき集めながら進めるのが良いと思います。
バージョン管理システム「Git」
僕がWEB開発を始めた頃はバージョン管理システムは存在していませんでした。
ですが、今ではWEB開発には欠かすことが出来ない程の必要不可欠なツールになっています。
なぜか。バージョン管理システムは、ファイルのバージョンを管理してくれます。
「いつ、だれが、どこを変更したのか」
が、時系列で明確に判別できるのです。
一人で開発することはもちろん、複数人数で開発する際にも、作業の衝突が極めて少なくなり、ファイルの管理を容易にしてくれるものだからです。
詳細は省きますが、その他にもバージョン管理を使用するメリットはたくさんあります。
なので、WEB開発において、バージョン管理システムの勉強は必須です。
初学者がとりあえず覚えておくべき、範囲を以下に示します。
- Gitのインストールと概念(リポジトリとかマスター/ブランチの意味)
- Gitクライアント(tortoisegit or sourcetree)のインストールと利用の仕方
- Gitコマンドの勉強(プル / コミット / マージ / プッシュ)
GitクライアントはGitコマンドをGUIで操作できるので、容易に操作できます。
Gitコマンドを覚えるのは大切ですが、まずはGitクライアントを覚える方が、覚えやすいと思います。
僕は基本Gitクライアントを使います。できるだけ簡単な方が良いので。
Gitコマンドを使うにしても、都度調べて使うだけなので、全部を覚える必要はありません。
Gitの概念を勉強できる参考サイトです。
サル先生のGit入門
https://backlog.com/ja/git-tutorial/
Gitの勉強は、ある程度WEB開発ができるようになってからで良いです。それまでは放置で。
なぜなら、最終的には必須ですが、早急に必要ないからです。
PHPを使って、データベースとやり取りし、WEBサービス作成に少し慣れてきた。
という様に自分が感じて、余裕が出来始めた時ぐらいからがGitの勉強の開始時期だと思います。
あれやこれやと詰め込み過ぎるのは良くありません。
「二兎追うものは一兎も得ず」です。
それでなくても、PHPとデータベースだけでも二兎追っかけてますからね。焦りは禁物です。
初心者の方がここまで「何から勉強すれば良いのか」は、
WEB開発の大まかな流れを把握することに努めること
本記事で学ぶべき最低限の範囲を示したことを一つ一つ調べて少しずつ覚えていくこと
です。
あと、繰り返しますが、プログラミングは「書くことを繰り返す」ことが一番重要です。
サンプルコードも今ではたくさんWEB上にあるので、参考にするのも良いでしょう。
まとめ
- サーバーサイド言語はWEBエンジニアにとって、メインとなるのでしっかりと時間を投資して、文法から勉強するようにする。
- データベースのRDBMSの概念と最低限のSQL文を身に付けること。
- バージョン管理システムは必須だが、全然後回しでOK。まずはPHPとMySQL(MariaDB)から。
本記事では、初学者が「何を勉強すべきか」の範囲にフォーカスしました。
後に、ブログ内で、一つ一つの役割を解説しますね!
前回のお話はコチラ