Laravel+TDDの基礎を学ぶ
はじめに
PHPでWebシステムを開発する際に、Laravel
というフレームワークを使う機会が増えてきた。
とてもよくできたフレームワークで、開発の効率もよく、テストコードも書きやすい。
近年はテストコードを書くことを当然のように求められており、このようなフレームワークを活用できるかどうかが、 開発における鍵となっているように思う。
さらに、単にテストコードを書くのではなく、"TDD
(Test-driven Development)"の手法によってテストコードを書き、
プロダクトコードを書いていく、ということも求められるようになってきた。
とはいえ、私自身の見える範囲ではまだまだ十分にTDD
は取り入れられていない。
そもそも、Laravel
の開発の流れをうまく掴めない人たちも多く見受けられる。
Laravel
のドキュメントは良くまとまってはいるが、一方で「アーキテクチャ」を知っていることが前提の表現も多く、
直近のバージョンではオフィシャルでのチュートリアルが存在していない。
こういった点も、「まったくの初心者」がつまずき易い点となっているように感じる。
そこで、そういった点の補足をしつつ、Laravel
のテストコードの書きやすさを十分に活かすために
TDD
の手法を交えたドキュメントがあると、多くの人にとって受け入れてもらえるものになるのではないか、と考えた。
(少なくとも、私が個別に話をして回るよりも格段に効率が良くなるはずである。)
このドキュメントを通じて、TDD
の手法・考え方を軸にLaravel
でWebシステム("タスク管理システム")を開発する、
という実践的な流れを学べるようにしたいと思う。
そのために、全体を通して筆者と一緒にコーディングを体験していく、、、となるように書いていくつもりだ。
これを読む方々は、ぜひドキュメントに沿って一緒にコーディングし、テストの書き方、結果、を含めて体験してもらいたい。
Laravel
の基本ととともに、TDD
の感覚を体感してもらえれば、、、と願っている。
目次
- 導入と基本的な知識
- 準備
- 開発を始めよう
- 機能を拡張しよう
- 第6章 ユーザ認証
- 第7章 Vue.jsを使ったリスト表示からのタスク完了
- 第8章 期限つきタスク機能の追加
- 第9章 リマインダー機能の追加(メール版)
- 第19章 リマインダー機能の追加(Slack版)