見出し画像

Laravelの教科書 【表紙】

こちらはPHP Laravelを使ったWebアプリケーションを作成するための教科書の表紙の記事です。

基礎学習者向けの課題集としてもご利用いただけるように考えております。

この記事をはじめたきっかけ

はじめました。miyaと申します。普段はWebアプリケーションを中心にシステム開発を行っています。また副業としてオンラインでシステム開発の講師を行っています。

講師をやりながら世の中に手本となる教材が足りないこと、情報が古いことに気づきました。自身が講師として使える最高の教科書を作りたいというモチベーションからはじめました。

https://twitter.com/laravelstudy
更新情報などはTwitterで公開しています。

※ LTSバージョンであるLaravel9が公開されたことで今後Laravel9を基本にしていきます。

# Laravel9の対応について

対象となる方

PHP初心者や業務や副業としてプログラミングを覚える人を対象としています。

Laravelを使った小さなWebアプリケーションを何個も作り、短い期間で実践的な技術力を身につける手助けとなればと考えています。

本稿は全て「課題→チュートリアル」の順で書かれています。小さな課題を順番に達成していくことで、現場での即戦力となるだけでなく、大きなWebアプリケーションの設計、開発が出来るようになります。

※ Laravelのバージョンは7.x系を利用しています。

開発環境の準備

本章ではLaravelを使った開発を行う前段階の開発環境の準備を行います。 

目次
Visual Studio Codeのセットアップ
Composerのセットアップ
Laravelのインストール
MAMPを使った開発環境の作成


Laravelを使ったウェブサイトの開発

本章ではLaravelを使った会社ページを開発していきます。Webアプリケーションというには簡単ですが、Laravelを使った開発の基礎が身につきます。

ステップ毎にサンプルコードをダウンロード出来るようにzipファイルを用意してあるので、ステップbyステップで理解出来るようになっています。

目次 
Laravelを使ったウェブサイトの開発
トップページの開発
会社概要ページの開発 
エラーページのカスタマイズ
無料テンプレートを使ったデザインの組み込み
・レンタルサーバーでの公開方法(公開予定)


これだけは最低限知っておく必要のあるLaravel頻出パターン

本章ではLaravelを利用したWebアプリケーション開発に頻出するパターンを開発していきます。各記事は基礎的な内容を除き独立した形で作成されています。どこから読んでも大丈夫です。

目次
データーベースの利用 
データーベースの利用2 Modelの利用
ユーザーログイン機能の作成
標準のユーザー認証機能の利用
標準のユーザー認証機能の利用(Laravel7版)
管理画面機能の作成
確認画面のあるフォームの作成方法
画像のアップロードフォームの作成
Laravelからグラフを出力する


WebアプリケーションのUIパターン

本章では一つのWebアプリケーションを機能毎に分解し、それぞれのUIパターンを再利用できることを目的としています。オリジナルで何かを作る時に参考に出来るような内容です。

目次
WebアプリケーションのUIパターン一覧
Case1. 作成機能
Case2-1. 一覧パターン
・Case2-2. 検索パターン
Case3. 詳細・編集
・Case4. 削除
・Case5. 設定
・Case6. ダッシュボード


Webアプリケーションの開発基礎編

本章ではLaravelを利用したWebアプリケーションの開発を行います。一つあたり1時間〜2時間で作成可能な小さなアプリケーションを作成して行きます。各記事は独立しているため、どこから読んでも大丈夫です。

「Laravel基礎 これだけは最低限知っておく必要のあるLaravel頻出パターン」に出てくる内容が基礎知識として必要になることがあります。

本章では3つの小さなWebアプリケーションを作成します。

■ 掲示板を作ろう

シンプルな掲示板アプリの開発を行います。データーベースの操作方法やテンプレートの編集方法など、Webアプリケーションの基礎的な知識が身につきます。

目次
掲示板を作ろう(前編) Webアプリケーション開発の始め方
掲示板を作ろう(後編)掲示板アプリの開発
掲示板を作ろう(付録)バリデーション、ページャーの利用


■ 新着情報お知らせ機能の作成

管理画面、ユーザー画面と機能が別れたWebアプリケーションの開発を行います。複数のテーブルを使ったWebアプリケーションの作成について学ぶことができます。

目次
お知らせアプリを作ろう(#1) ユーザー作成機能の開発
お知らせアプリを作ろう(#2) ユーザー投稿機能の開発
お知らせアプリを作ろう(#3) ユーザーページの開発
お知らせアプリを作ろう(#4) 記事編集、削除機能の開発
お知らせアプリを作ろう(#5) 画像のアップロード


■ 営業日程カレンダーの開発

Webアプリケーションによくあるカレンダーの作り方について解説しています。複雑なHTMLをどのように作るか、現実的な要件についてどのように向き合って行くかについて解説しています。

オブジェクト指向を活かした内容になるため、少し難し目の内容となりますがすでに作成した機能を再利用していく、というプログラミングにおいて最も重要なポイントを学ぶことができる内容となっています。

目次
カレンダーアプリを作ろう(#1) 設計について
カレンダーアプリを作ろう(#2) 定休日機能の作成
カレンダーアプリを作ろう(#3) 臨時休業機能の作成
カレンダーアプリを作ろう(#4)  ナビゲーションの作成


Webアプリケーションの開発応用編

本章ではLaravel基礎で使った技術を元に高度なWebアプリケーションの作成を行います。

■ Laravel開発 Laravelを利用したCMSの作成

本章ではLaravelを利用したWebアプリケーション開発の応用例としてウェブサイトを管理するCMS(Contents Management System)の開発を行います。小規模なWebサイトであればそのまま公開、運用が出来るものを目標として作成します。

目次
・公開側機能と管理側機能の作成
・記事の管理機能の作成
・カテゴリー機能の作成(管理側)
・カテゴリー機能の作成(公開側)
・メンテナンス機能の作成
2020年11月公開予定

■ Laravelを利用した製品カタログページの作成

本章ではLaravelを利用したWebアプリケーション開発の応用例として製品カタログページの開発を行います。顧客からの問い合わせをスムーズに誘導するための製品カタログシステムを作成します。CMSとシステム構成は同じですが、複雑なフォームを作成することを目的としています。

目次
・公開側機能と管理側機能の作成
・製品管理機能の作成
・CSVを使った一括取り込み機能の作成
・カテゴリー機能の作成(管理側)
・カテゴリー機能の作成(公開側)
2020年11月公開予定

完成まで突っ走る意気込みです。サポートしていただけると非常に嬉しいです。応援よろしくお願いします。