質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

解決済

3回答

624閲覧

laravel(PHP)のwebアプリケーションの開発までの道筋

toto654

総合スコア39

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

1クリップ

投稿2019/01/19 16:29

前提・実現したいこと

laravelのwebサイトを作るために、本で勉強している段階ですが現在の本が入門の本だからなのかもしれませんが、一つ一つの機能についての説明や方法は習って行けてると思いますが、それらをまとめて一つのwebアプリケーションにすることができない。と言うよりも、ゴールまでの指針が分からず足踏みをしてしまっている状態です。これが、まだ入門の本を読んでいるからなのか(他の本には各パーツを組み合わせて1つに出来るようになる方法が書かれている)、それとも独学の難しさの所以なのか(決して諦めるつもりはなく、目標に向かって行きたいと思ってます)、どのように勉強していけばいいのかご教授頂けたらと思います。

知りたいこと

1.大まかでいいので、laravelを用いたwebアプリケーションの開発における道筋(手順)が知りたいです。
各それぞれのパーツにおける役割や使い方は習うことが出来ましたが、これらをどのように組み立てるのかが分かりません。

2.laravel開発環境このサイトや公式を見て、開発環境を整えることは出来ましたがそれをどのように生かすのか書いてあるサイトが少なかった(見つけられませんでした)。これをどのように活用するのか知りたいです。

3.経験がある人に伺いたいのですが...そもそも独学で行けますか?やる気さえあれば、行ける。とかは、重々承知しており自分自身もそこは頑張りたいと考えてますが、本(これから他の本も買う予定です)でこれからも勉強して行こうと考えてますが、laravelなどのフレームワーク系の本は割と種類が少ないのかなと見てて思ってしまったりで、現実的に可能なのか知りたいです。

4.お勧めの本があったらご紹介して頂きたいです。現在私が見る限りでは、laravelなどのフレームワーク系の本は少ないのかなと思ったりもしました。勘違いかもしれません。その中でも、これを読めば全体像が見えてくるよ。とかお勧めの本を知りたいです。

まとめ

webサイトを作ろうと10月あたりから独学をしていますが、自分の勉強環境(特に教材)は良いのか、未だにwebサイトの全体像が見えなくどうすればいいのか、迷ってしまったので長文になってしまいましたが質問しようと思いました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

私は独学のみでやってきてますが、行けると思います。

まずは作りたいアプリの完成形を具体的にイメージするのが良いかと思います。
作りたいものが具体的に思い浮かばなかったら、最初はtwitterのクローンアプリや簡単な会員登録性の掲示板をイメージするのが良いかと思います。
それらのアプリに必要な画面や、移動する仕組みを簡単な絵で良いのでノート等の紙に書きながら考えてから作ると良いかと思います。
これらはワイヤーフレームと言い、以下の様なサイトを参考にするとよいかと思います。
WEB・アプリの設計図。ワイヤーフレームとは?
また、『画面遷移図』という言葉でネット検索をしても、具体的に作るものを最初に考える際の参考になるかと思います。

例えばメインの非ログインのユーザーが最初に見るページがあって、新規登録とログインがあって、
ログインした後にはこんなページがあって、と、四角い枠とボタンやリンクを文字や絵で描くことは出来るかと思います。
そこからさらにユーザーの視点で欲しい機能や画面を考えて行くと、自然と必要な画面や機能が見えて来るかと思います。
例えば書き込みをする画面、他の人の書き込みを見れる画面、自分の気に入った他のユーザーのみを表示させる画面、書き込みを編集や削除するための機能、もしくは画面、といった具合です。

あとはそれに従って、viewを作ってルーティングして、最低限のhtml画面を表示させ。入力フォームを作り、そこに入力した情報をコントローラーで受け取って、バリテーションしてDBに入れるまでの処理を書いて、エラーの時はメッセージを出して、正常ならDBに登録させた後に、ユーザーをこの画面に移動させて…。といった具合でしょうか?

ちなみに『PHPフレームワークLaravel入門』という青い本がアプリを作る際の基本的な部品となる各画面や機能の作り方を具体的に教えてくれていますので、これらを参考にするのも良いかと思います。

個人的には、まず最初はショボくて良いので、なるべく少ない画面数と機能で最低限動くものを作るのが良いかと思います。
がんばってください。

投稿2019/01/19 18:23

編集2019/01/19 18:31
sakamata

総合スコア203

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toto654

2019/01/20 02:36

回答ありがとうございます。私も「PHPフレームワークLaravel入門」の本で進めていますが、基本的な部品となる各画面や機能の作り方は学べましたが、それらの部品をどのように組み立てるべきかが載ってないのかなと思ってしまいました。仮に、組み立てあげたものが作れたとしてそれをでは次はどのような環境や方法で公開していくのか。もし、お勧めの本や知見がありましたら教えて頂きたいです。
sakamata

2019/01/20 06:08

自分が作ったアプリケーションを公開するには、Laravelとは違って、サーバーの環境構築の知識が必要となります。今はAWSやVPSなど様々な方法がありますが、共通するのはLinuxをOSとしたWebサーバーをリモートで環境構築する知識が必要になるかと思います。いわゆる黒い画面にコマンドだけでインストールをしたり、設定ファイルの一部を書き換える作業が必要になります。 VPSをするなら、例えばさくらサーバーさんの以下の記事を読むと具体的にすることがわかるかと思います。 [連載:「ネコでもわかる!さくらのVPS講座」の記事一覧](https://knowledge.sakura.ad.jp/serialization/understood-cats-vps/) また、Laravelの場合、vagrantやLaradock等の開発用仮想環境が既に作られていますが、練習のために、あえてVirtualBOX等でubuntuやcentos等をインストールして、そこにご自身で作ったアプリを動かす環境を一通り作る経験を先に積むと良いかと思います。具体的にはWebサーバーアプリのApacheやNginxの設定や、MySQLやMariaDB等のDBの設定がわかってからVPS環境等で同じような設定ができる様になると良いかと思います。
toto654

2019/01/20 13:16

まだまだ色々覚えることが多そうですね。ですが、少しずつ進めて行きたいと思います。今回のこの回答とURLは今から見ていきたいtと思います。ありがとうございました。
guest

0

むしろ本を読まないほうがいいのでは…。
Laravelに限らずPHPの本に間違いが多いのは昔から有名。
公式な情報より間違った本を信じ込むからおかしなことになる。

5年前は本なんかないのでその頃から使ってる人は公式ドキュメントだけで使えるようになってる。
幸い早々に日本語訳があったので。
Laravelの普及は確実に日本語版ドキュメントのおかげ。

当然ながらLaravel以前にPHPや他のフレームワークの経験がある上でだけど。
日本で話題になる1,2年前の記事検索すればZendからLaravelに乗り換えたみたいな海外の記事が見つかる。
https://yetanotherprogrammingblog.com/content/bye-bye-zend-framework-hello-laravel
https://mnshankar.wordpress.com/2013/04/17/moving-from-zend-framework-to-laravel-4/
他を知らないとLaravelの何が良いのかが理解できない。

Laravel4の頃まではまだシンプルだったけど5以降は複雑になってるから初心者には全くおすすめできない。
https://kore1server.com/370/Laravel%E3%82%92%E4%BD%BF%E3%81%86%E3%81%B9%E3%81%8D%E3%81%8B%E3%80%812017

投稿2019/01/20 01:58

kawax

総合スコア10377

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toto654

2019/01/20 02:30

回答ありがとうございます。本を読まない方が良いというのと、「Laravelを使うべきか」のURLの考え方を見るに進路変更をすべきかなと思ってしまいました。特に、本番環境についての説明は厳しいかなと思いました。では、データベースを用いたサイトを作る際に、どのように作るのがお勧めですか?
guest

0

初心者がアプリを作成しようとして躓くのは、多くの場合「設計」が出来ていないからです。
設計が出来ていないと「何を処理すればよいか」分からず、結果として「手が進まない」という事象が発生します。

アプリ開発の手法はいくつかありますが、ワリとわかりやすい手法として「ウォータフォールモデル」があるので、概要を学習してみてください。

アプリケーションの要件を「処理の最小単位」まで分解できるようになれば、「手が進む」状態を作り出せます。

経験を積めば、設計を雑にしても「処理の最小単位」の検討がつくようになるので、小規模なアプリではほとんど設計せず「さっさと手を動かす」ようになりますが、初心者こそ設計を重視するべきだと思ってます。

自身で最小単位まで分解できない場合、誰かに協力してもらうか、詳細設計まで終わっているアプリを実装してみると良いです。

まずは「最小単位に分解」してみると手が動かせる状態になることを実感してみてください。

投稿2019/01/20 00:54

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toto654

2019/01/20 02:42

回答ありがとうございます。だいたいこのようなものを作りたいと考えていましたが、根本的な考えとして設計をおろそかにしていたのか、もう一度設計を考えてみたいと思いました。また、やはり1人では難しそうであれば再度考えて行こうと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問