初学者がLaravelの独学に関してまとめてみた(教本/学習サイトも)
Laravelの独学に関して
私はLaravelの学習を1月ごろから始めました。プログラミングの学習自体は11月より始めた素人に毛がレベルの輩です。日々学習中です。ですが、このタイミングでなぜまとめたかと言いますと。。。
①沢山学習していると自分でもアウトプットしないと考えがまとまらない。今後の学習計画が経てずらい。
②少なからず、簡易的なポートフォリオは作ることができたので、これから学習する方の参考(ロードマップ)に少しでもなれば嬉しい。
以上の理由からです。
間違いなどもあるかもしれません。温かく見守っていただけますと幸いです。(また、ご教示いただけますと幸いです。)
具体的なレベル感としては以下のポートフォリオを参考にしていただければと思います。
※ログイン機能含め、基本的な機能は実装できましたが、投稿したユーザーだけが削除&編集できる権限の実装(認可周り)などはできておりません。
※これから認可やポリシーなどの理解を深め、且つVue.jsとの連携までしたポートフォリオ作成に挑戦しようと思っている段階です。
活用した教本のまとめ
Laravelの学習において参考にした教本を購入した順番でまとめていきます。※私はスクール等には通わず、ほぼ1人で本とネットを頼りに学習しています。(※お金がないだけ。。。泣)
まず最初に手に取ったのはこの本。独学で勉強していたら誰もが目にすると思います以下の本。
①PHPフレームワーク Laravel入門 第2版
https://www.amazon.co.jp/PHP%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF-Laravel%E5%85%A5%E9%96%80-%E7%AC%AC2%E7%89%88-%E6%8E%8C%E7%94%B0%E6%B4%A5%E8%80%B6%E4%B9%83-ebook/dp/B08625YD7H/ref=pd_aw_sbs_351_2/357-1916791-6282364?_encoding=UTF8&pd_rd_i=B08625YD7H&pd_rd_r=02491f21-b407-4270-b76b-e3574f21718c&pd_rd_w=97xhS&pd_rd_wg=0donR&pf_rd_p=1893a417-ba87-4709-ab4f-0dece788c310&pf_rd_r=CRQSKHHSFS9DS01SWGQ6&psc=1&refRID=CRQSKHHSFS9DS01SWGQ6こちらでまずは勉強しました。(逆に他に入門的なLaravel本がない気がします。)
とても参考になります。Laravelの基礎を体系的に学ぶことができます。これを読めば、それなりに入門系チュートリアルは挑戦できると思います。
※以下、バカみたいにメモったこの本の見開き1ページ目※

ただし、個人的には、ミドルウェアを割と序盤で解説されて、全く理解できかった過去があるので、順番入れ替えてユーザー認証、アクセス権限に活用する実践ベースで紹介してほしかったなと思います。
また、Webアプリ(SNSぽい感じで)を作りたいとすれば、認可など深いところまでは学べまないので足りないです。別途、学ぶ必要があります。
また、この本だけだとモチベーションが担保が難しく、また実際にどうアプリ制作に活かしていくのかも掴みにくかったので、Techpitさんの教材やネットに転がっているいろんなチュートリアルを漁っては、アプリ制作も並行してしていました。
個人的には、本で体系的に知識を身に付けることも大切ですが、本を読むより、実際に模写しながらアプリ制作やってた時のほうが知識が定着していく感じがありました。(学習サイトに関しては後述しております。効率と自分に合った学習法を見つけて勉強していきましょう。)
そして、この教本といくつかのチュートリアルでアプリ制作を終えたころに、ポートフォリオ作成に取り組みました。(正直、取り掛かるのは早ければ早いほどいいと思います。)
完成したものが既述のポートフォリオになります。ログイン機能含め、基本的な機能は実装しましたが、投稿したユーザーだけが削除&編集できる権限の実装などはできませんでした。(最近やっと理解し始めたので、徐々に修正していきます。)
正直、ここの部分までわかりやすく解説してくれる教材を当時見つけられなかった。(実際とても少ない気がします。めちゃくちゃ探しました。)
そして、さらに調べまくってようやくミドルウェア・認可・ポリシー辺りの重要性に気付き始めます。
さらなるここら辺のスキルアップを試みて、次はこの本を次に手に取ります。
②PHPフレームワークLaravel Webアプリケーション開発
https://www.amazon.co.jp/PHP%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AFLaravel-Web%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA-%E7%AB%B9%E6%BE%A4%E6%9C%89%E8%B2%B4-ebook/dp/B07SPT6XJV/ref=sr_1_4?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=Laravel&qid=1584693544&s=digital-text&sr=1-4注意点としてはLaravelのバージョンが5.5で記載されていることです。認証周りなどで多少バージョン6と異なる部分があります。
手に取ったときは、よくチュートリアルで紹介されているVagrant、Laradockに関しても学べるので一石二鳥だと思っていました。
ところがどっこい。
第1章の環境構築でいきなり躓く。。。笑笑
それ以外にも総じて難しく、投げ出してしまいました。(おい)
この経緯があって、今現在までXAMPPで頑張っている感じです。
その後、一時はモチベーションがかなり落ちてしまって、他言語に浮気とかもしていました。
ですが、結局既述のポートフォリオ以上のものを作れるイメージは湧きませんでした。
結局、どの言語を使ったとしても、ミドルウェアなどの知識を身に付けないと更なる向上はないと気づきました。一言語で理解を深めようと決めました。
(どの言語もベースとなる考え方は同じ!!)
で、この本より少し簡単そうだなという理由でずっとレビューでは賛否両論だったので避けていたこの本にも手を出します。
③PHPフレームワーク Laravel実践開発
https://www.amazon.co.jp/PHP%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF-Laravel%E5%AE%9F%E8%B7%B5%E9%96%8B%E7%99%BA-%E6%8E%8C%E7%94%B0%E6%B4%A5%E8%80%B6%E4%B9%83-ebook/dp/B07WW45Q1X/ref=pd_aw_sbs_351_1/357-1916791-6282364?_encoding=UTF8&pd_rd_i=B07WW45Q1X&pd_rd_r=02491f21-b407-4270-b76b-e3574f21718c&pd_rd_w=97xhS&pd_rd_wg=0donR&pf_rd_p=1893a417-ba87-4709-ab4f-0dece788c310&pf_rd_r=CRQSKHHSFS9DS01SWGQ6&psc=1&refRID=CRQSKHHSFS9DS01SWGQ6ですが、結局まだあまり読めていません。というより改めてこの本をパラパラめくっていて思ってしまったんです。
さっさと次のポートフォリオを作ったほうが良い!!ってことに。笑 ←now!!です。
ちなみにVue.jsなどフロント言語フレームワークとの連携の記述もありますが、かなり導入部分についてしか触れられていません。
ですが、Techpitの教材などで理解できなかった際の参考に横に置いておくと安心感があります。(たまに参考にします。)
Laravel+Vue.jsのポートフォリオ作成へ挑戦したいとのことでしたら、以下のTechpit教材などで実際に作りながら学ぶことをおすすめします。(ちなみに②の本でもフロント言語フレームワークとの連携に関しては触れられていません。Laravel特化。)
また、Vue.jsの基本的な知識もマストで必要になります。以下の猫本が有名&おすすめです。(私も学習中です。一緒に頑張りましょう。)
参考にさせていただいた学習サイトまとめ
いろいろな本を手に取って学習してきましたが、やはり1から100まで完璧に身に付けながら読むのは骨が折れます。というよりも、いきなり初学者が全て理解しようとするのは無理だと思います。モチベ担保&知識の関連付けにも、前述の本などと並行して以下のような学習サイトで実際にアプリ作成することをおすすめします。
・Techpit学び放題プラン(月額2980円)
https://techpit.thebase.in/items/24273300
多種多様なアプリを作りながら学習することができます。このサイトと出会えたことで独学でここまでこれたと言っても過言ではありません。※一部単発購入が必要になるものもアリ。
・入門Laravelチュートリアル(無料)
https://www.hypertextcandy.com/laravel-tutorial-introduction
ToDoアプリ制作。終盤ポリシーやエラー画面の実装までします。ここまで扱う無料コンテンツはこれだけ??ありがたすぎます。ちなみにLaravel+Vue.jsのチュートリアルもあります。こちらはVueRouterなどVue.jsに関する理解をしっかりしていないと非常に難しいため、私もまだ手が届いておりません。。。泣
・【全6回】Laravel5.8でTwitterっぽいSNSツールを作る(第1回DB設計とMigration) https://qiita.com/namizatop/items/d79017aa474966244073
SNS系無料チュートリアル。個人的にはとても参考になりました。おわりに
以上です。改めて自身のアウトプットの拙さにも嫌気がさしましたが、少しでもどなたかの参考になりましたら幸いです。肝心の今後に関してですが、まだ読破できていない教本2冊とTechpitの教材を参考にしながらVue.jsまで連携させたポートフォリオ制作に挑戦しようと考えています。
※現在3/21(日)このタイミングでTechpitでLaravel+Vueに関して学べる教材(前述)がリリースされたのは本当にラッキーです。このような教材を待望してました。皆さんもチェックしてみてください◎
また、Techpit教材でのMailhog実装失敗などの経験から、XAMPP環境のみならず、Laradock(もしくはVagrant)での環境構築もできたほうが良いなと思っています。こちらに関しては、改めて②の本とネットの力をお借りして、引き続き挑戦していきたいと思っております。(※Dockerの本も探しましたが、Laradockに関しては扱っている本も少なくググったほうが参考資料が多いなと感じました。)
最後まで読んでいただきありがとうございました。
おしまい。