Awesome Ars Academia(オウサムアルスアカデミア)では、多くのベンチャー・スタートアッププロダクト開発で使われる2大巨塔とも呼べる「Ruby/Ruby on Rails」や「PHP/Laravel」などを実践的に学べる海外プログラミングスクールを提供しています。
そんな中で、既に「Ruby on Railsの独学方法」についてのご紹介はしていたのですが、「PHP/Laravelの独学での学習開始方法」については、まだご紹介できておりませんでした。
今回ようやくですが、弊社スクール・Awesome Ars Academiaが考えるPHPフレームワークまでをカバーした「PHP/Laravelの独学プロセス」についてまとめましたので、ぜひご覧ください。
世界には既に信頼に足る独学のための優良コンテンツが沢山あります。ぜひ弊社が吟味した優良コンテンツで独学での初期学習を実施頂き、独学では本来カバーできない範囲を学習するために、弊社のようなスクールへの通学をご検討頂ければ嬉しく思います。
Awesome Ars Academia(オウサムアルスアカデミア)は、英語でプログラミングを学べるスクールです。
セブ島でのIT留学、オンライン受講の2つの形式で受講可能ですので、ご興味がありましたらぜひスクール資料をダウンロードください。
プログラミング学習をするにあたって大切な3つのステップ
以前公開させていただいた『初心者がRuby on Railsを勉強するベストプロセス』『初心者がPHPを勉強するベストプロセス』『初心者がHTML/CSSを勉強するベストプロセス』などでも紹介させて頂いたのですが、大切な学習への考え方なので、こちらでも再度紹介させて頂ければと思います。
私たちは、プログラミングの学習の特に初期段階においては、下記の3つのステップが非常に大切だと考えています。
それは、
- 見よう見まねでとりあえず動かしてみるハンズオン学習
- 理論や概念などの理解を深める概念学習
- 理解した内容をベースに作りたいものを作り上げようとする実践・演習学習
という3段階のステップです。
以下、次の具体的な学習プロセスでは、この3つのステップに対応する形で、各おすすめ学習方法を紹介させて頂ければと思います。
ただし、本記事では既に『初心者がPHPを勉強するベストプロセス』レベルの学習を完了されているレベルのプログラミングスキルをお持ちの方を前提として、「フレームワークの学習」「Laravelの学習」をされる方を想定しています。
現在形で全く「PHPプログラミング自体の初心者である」という方は、まずは『初心者がPHPを勉強するベストプロセス』の記事などを参考に、独学でPHPプログラミングの基礎スキルまでは身につけられることをおすすめします。
初心者がPHP/Laravelを学習するベストプロセス
さて、それではここからが本題の「PHP/Laravelフレームワークを独学で学習するベストプロセス」です。
PHPフレームワーク学習/Laravel学習の第一段階 - ハンズオン学習
やはりまず第一に、日本語の動画チュートリアルベースで初期学習をするのが、最も学習効率が高い独学方法になります。
そんな中で、Laravel独学の最初期においてやりやすいチュートリアルは、ドットインストールの「Laravel 5.5入門」となるでしょう。
本コンテンツはドットインストールの中でもプレミアムプランでないと視聴できない有料コンテンツですが、月額たった980円です。
Progateと共に、相当良心的な価格だと思いますし、きちんと学習されるのであれば、1週間も必要ないはずです。
そのため、まずはドットインストールへ有料課金頂き、こちらのコンテンツを実施頂くのが良いでしょう。
※ 補足として、Laravel系のまとまった記事としては有名な「ララ帳: はじめてのLaravel 5.6」のシリーズを参考資料として読まれるのもおすすめです。
PHPフレームワーク学習/Laravel学習の第二段階 - 概念学習・理解深化編
上記ハンズオン学習をされた後は、次にフレームワーク理解を深めるために、例によって書籍を中心とした概念学習を進めるのがおすすめです。
そのために重要なのは、
- 「MVCとはなにか」というフレームワークの基礎的な仕組みをきちんと学習すること
- 「フレームワークの中身がどのようになっているのか」をきちんと理解すること
の2点が相当大切になります。
ここで、弊社がおすすめするのは、少し古い書籍であるというのが玉にキズなのですが、『パーフェクトPHP』の第八章までを実施することです。
言語仕様をおさらいする第一章〜第五章をやり直すのがどうしてもテンションが上がらない方は、ひとまず第六章〜第八章の、「自分自身でフレームワークを作る」という部分をやりきろうとされるのが大切です。
よりレベルの高いエンジニアにスキルアップをして頂く際には、未来の話として「デザインパターン」というようなよりレベルの高い概念や開発パターンの学習をしていって頂くことが必要になります(これは、プログラマとして中級者へステップアップしていく際には必須な学習になります)。
「MVCフレームワークを理解する」ということは、そのようなソフトウェアデザイン・ソフトウェア開発のアーキテクチャなどを学習するための、最初期に理解するべき設計思想・設計パターンのようなものになっています。
そのため、『パーフェクトPHP』のコンテンツを利用して、「自分でフレームワークを開発するという経験」を通じて、「フレームワークとは何なのか」ということに対する理解を深めておくことが大切です。
PHPフレームワーク学習/Laravel学習の第三段階 - 実践・演習編
さて、Laravelフレームワーク初期学習の最後の仕上げとしてはやはり、世界的に最も閲覧されているLaravel初学者向けのコンテンツ、「Laravel5.7 from Scratch 2018」を紹介せざるを得ないでしょう。
そもそも上記コンテンツを配信しているLaracastというのは、「PHPエンジニアのためのNetflix」を標榜しており、Laravelフレームワーク自体を作っている世界トップエンジニアのメンバーなどもコンテンツ作りに入っている、世界のLaravel, PHPエンジニア誰もが見ている動画チュートリアルサイトです。
PHP自体の機能にアップデートがある時、Laravel自体がバージョンアップがある時、Laravelと一緒に使われるJavaScriptフレームワークのVue.jsの入門コンテンツ、PHP/Laravel開発をするにあたって便利なエディタの設定方法など、PHP, Laravel開発とその周辺の世界的スタンダードの最新情報を知るためのベストチュートリアルサイトです。
こちらも月額1000円ほどのチュートリアルサイトなのですが、上記の初心者向けの「Laravel5.7 from Scratch 2018」は、全て無料で閲覧可能なので、こちらを無料で完遂することで「Laravel初期学習の総仕上げ」とするのがいいでしょう。
これであなたも正真正銘のPHPエンジニア?
実際ここまでの学習を独学でやりきれた人は、PHPプログラミング、Webプログラミングに対して相当適性が高い方かと思います。
Laracastをご紹介しましたが、Laracastを中心にPHP/Laravel開発の周辺学習を継続頂ければ、そのまま独学でいっぱしのPHP/Laravelエンジニアとして成長していって頂くことが可能ではないかと思います。
とはいえ実際には、多くの方が、ここまでの学習を独学で乗り越えられることは不可能であるケースが多いです。
実際に文系出身で初心者からエンジニアとして就職をした弊社スクールのマネージャーも、「現場の仕事でフレームワークを利用した開発が必要」で、家でも自身でこのような形での「フレームワークを使った学習」を独学でやっていたそうです。
ですが、彼いわく、「結局の所、独学だけでは自分は成長しきれなかったと思うし、彼の場合仕事ができるエンジニアとして成長するにあたって必要だった要素は、下記のようなものだった」と、言っています。
それは、
- 仕事で成果を出す必要がある、という強制力がある環境(学習を継続せざるを得ない環境)
- 仕事で達成するべきプロジェクトとゴールが与えられている状態(必然的にプロジェクトベースの学習が求められたこと)
- 共にスキルアップしつつある種ライバルでもあった同期という存在(学習コミュニティの存在)
- 困ったら的確なアドバイスとかわいがりをしてくれる先輩という存在(頼れる相手であり、成長に必要な次のステップを常に提示してくれる存在)
という4点だそうです。
そのため、「一緒に学ぶ仲間」や「困ったときに相談できる相手もおらず」、「学習を継続してスキルアップをしないといけない強制力もなく」、単純にスキルアップしたいという想いだけで、上記のスキルを問題なく身につけられた人は、相当プログラミング適性が高い人だと言えるのではないかと思います。
上記のような観点に基づき、ここまでのステップを独学で完遂出来た人は、PHPエンジニアとして充分現場へ入る準備のできた「初級者」として自認頂くことが可能でしょう。
そして、「初級者」であるならば、スクールへの通学を検討することなく、弊社スクールマネージャーが言う、上記4点を間違いなく得られる環境として、「インターン先」や「エンジニアアルバイト先」を探し、「仕事としてお給料をもらいながらスキルアップできる環境」を探してみる価値があると思います。
上記のような独学を完遂出来た人にもプログラミングスクールは価値があるか?
これに関しては、「スクールのレベルに依る」という前提条件を付けた上で、上記のようなスキルを独学で身につけられた人にとっても価値のあるプログラミングスクールは存在するでしょう。
たとえば、弊社が運営しているAwesome Ars Academiaの場合は、
- 上記紹介したLaracastでのLaravel学習やMVCフレームワークの構造を知った上で、さらなる演習として開発するプロジェクト演習を経験できる(E-Learningシステムの開発、Airbnbクローンアプリケーションの開発)
- Pull Requestを投げて、現役のエンジニアにソースレビューをしてもらうことで、より読みやすく、効果的なコードの書き方のフィードバックがもらえる
- Git, git-flowを利用した実践的なGitの利用方法が学べる
- Dockerを利用した開発環境の構築をサポートの元経験できるなど、より現場感のある開発環境構築や仮想化技術についても学べる
など、スキル面で更なる高みを目指せるカリキュラムとなっているため、独学でスキルを身に付けた人にとっても有効な学習内容が満載です。
上記のような独学を問題なくクリアできた方で、うまくインターンやアルバイトなどの実務先が見つからない方は、弊社スクールでのプロジェクト演習などの経験は非常に有効な経験となるかと思います。
また、Awesome Ars AcademiaはこれらのようなAdvancedなコンテンツに加え、
- 海外英語圏で働いている日本人エンジニアとも知り合える
- 英語が当たり前で仕事をしているフィリピン人エンジニアと知り合える
- 英語の学習もできる
- 海外であるがゆえにこそ、学習に集中できる環境である
など、多くの付加価値も経験していただけます。
本記事の独学法と独学におすすめのコンテンツなどを参考にしていただきながら、よりレベルの高いエンジニアを目指したい、という方は、ぜひ弊社スクールへの入学もご検討頂ければ嬉しく思います。
英語でITを学んでみませんか?
Awesome Ars Academia(オウサムアルスアカデミア)は、英語でプログラミングをスクールです。
セブ島でのIT留学、オンライン受講の2つの形式で受講可能ですので、ご興味がありましたらぜひスクール資料をダウンロードください。