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

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

ただいまの
回答率

88.03%

学習サイトの作成方法について

解決済

回答 5

投稿

  • 評価
  • クリップ 2
  • VIEW 621

score 6

学習サイトの作成方法について 

最近HTMLなどのWebサイト作成の学習をしています。
プロゲートのような学習サイトを作りたいと思ったのですが、何を学習すればいいのかがわかりません。
抽象的な質問で申し訳ないのですが、ご回答いただければ幸いです。

目標物

ログイン機能を実装する。
4択式のテストが出来る。
テスト結果を学習者ごとに管理する
進捗度が学習者本人とサイト管理者が確認できるようにする。

もし可能なら、間違えた問題のみを復習する機能

質問詳細

学習者個人のデータを保存したいので、データベースに関する知識が必要なのかなと思ったのですが、言語やソフトなどが多くどれを学習したらいいのかわからなくなってしまいました。
Linuxの学習をしてから、何か他の言語やソフトの勉強をした方がいいのか、linuxなど学習しなくてもPHPの学習を進めれば実現可能なのか、そもそもデータベースを利用しなくとも作成することが出来るのか。
など色々考え、調べてはみたのですが解決できませんでした。

何をどのような順番で学習すればいいのか教えて下さい、よろしくお願い致します。

私の学習した内容

HTMLCSSお基本的な内容、java,javascript,rubyをプロゲートで学習。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • 退会済みユーザー

    2020/01/02 03:22

    複数のユーザーから「やってほしいことだけを記載した丸投げの質問」という意見がありました
    「質問を編集する」ボタンから編集を行い、調査したこと・試したことを記入していただくと、回答が得られやすくなります。

  • m.ts10806

    2020/01/02 04:56

    Java,Rubyとありますが、PHP含めてサーバーサイドの言語はどの程度できるのでしょうか。
    取り組もうとする姿勢はともかくとして、自身の現在地は把握しておかないために何もできてないように思います。

    キャンセル

  • tototogashi

    2020/01/02 12:05 編集

    抽象的で拙い質問にもかかわらずご回答いただきありがとうございます。

    皆さんの回答を見て改めて自分の出来ることできないことを洗い出しをして、もう少し具体的な質問ができるようになってから質問すべきだったかなと反省しております。

    キャンセル

回答 5

+4

もし「目標物」に書かれた項目が何1つとして実装イメージが沸かないのなら
沸くまでもっとミニマムで単体で動くようなプログラムで練習してイメージを沸くようになるまで学習を続けるべき・・・くらいのざっくりとしたアドバイスになります。

作りたいのはあなたです。回答者は「ちょっとした手助け」をする程度でしかありません。
としたら、質問するときもより具体的で詳細、問題も見えやすいものにすべきと思います。

「可不可」だけを聞くなら「可」としか言いようがないですしね。
具体的なアドバイスを得たいのでしたら質問内容ももっと具体的にすべきです。

「~~の作り方」というのを聞いて具体的な回答が返ってくることのほうが珍しいです
料理のレシピとは違います。それぞれがほぼオリジナルと思ってください。
(車輪の再開発、再発明という言葉を調べてみてください。)

もし「似たようなアプリケーションが既にある」のでしたら
動かしてみてそういう動きがどうやったらできるのかを想像するしかありません。
作っている人しか「どうやって作られているか」は知る由がないですからね(漏れたらセキュリティ事故です)

つまり「全く想像できないならまだ手を出せる段階ではない」とも言えます。
回答者も「おそらくこうだろう」という想像しかできません。
となると「質問者が作りたい、まだ何もできてないもの」に対してできるアドバイスってほとんどないわけです。

「”こうやったらできそう”イメージが沸くまで学習を続けてください」
までですね。

あとは「自分で製造までしたい」のか「どんな手段でもいいから作りたい」のかで違ってきます。
前者なら既に挙げた通り。後者ならお金払ってやってもらってください(ただし現在の要件の詰め具合だと引き受けてくれるところはなさそうです)

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/01/02 12:25

    抽象的で拙い質問にもかかわらず、ご回答いただきありがとうございます。

    イメージを働かせる努力、イメージが湧くまでの知識が不足しているという事に気が付かせて頂きました。
    学校で習っただけだと全く身につかないので、休みを使って一つ実際に作ってみようと考えていました。

    まずは完成までの道のりがイメージできる範囲の物を作成していきたいと思います。

    年始の貴重なお時間を頂きまして有難うございました。

    キャンセル

  • 2020/01/02 18:34

    最も良いのは「部品」として切り出して1つずつ単体で動くプログラムを作って動作確認をしていくことです。
    細分化できればできるほど良いです。
    「ログイン」1つとってもたくさんの道具で成り立っています。
    3つ4つにはわけられると思います。
    「入力フォームを送って結果を受け取る」
    「入力フォームの内容で検索をする」
    など。hello worldに近いレベルまで細分化していって繋げることでできるようになってきます。

    キャンセル

  • 2020/01/02 22:06

    一遍に完成形まで行こうとせずに、step by stepでといった感じですね。

    細分化をしてやってみます。
    ご回答いただきありがとうございました。

    キャンセル

checkベストアンサー

+2

質問者のレベルが不明なので、大きく予想したうえでの回答になります。

最近HTMLなどのWebサイト作成の学習をしています。

とのことから、スキルはHTML/CSSのみ&制作未経験レベルという前提です。
とすると、それぞれに必要な技術の前に、どういうことがしたいときにどういった知識が必要になるか、という知識を身につける必要があるとおもうので、それについて回答いたします。

HTML/CSS
ブラウザに表示するものを作成する場合、必須です。
HTMLやCSSを使用しないで作成してあるサイトはありませんし、
あったとしてもHTMLの知識があることを前提に作成していく形になるとおもいます。

JavaScript
ブラウザでプログラム(HTMLとCSSでは出来ないことの全て)を実装するにはJavaScriptが必要になります。
JavaScriptというのはブラウザ用のプログラミング言語、つまりクライアントサイド言語ということになります。
ボタンをクリックしたときに○○する、など、基本的な処理ですらJavaScriptを使用しない例はほとんど無いと思います。

サーバーサイド言語
PHP、Ruby、Python、Node.jsなどと呼ばれる言語のことです。他にもたくさんあります。
ブラウザの一画面で完結できないことを実装したり、ユーザーのPCからは見られたくない処理やデータがある際にはサーバーサイド言語が必要になります。
データの保存・共有・参照などや、JavaScriptとデータベースの橋渡しをするためにも必要になってきます。
ブラウザの一画面だけで解決できないプログラムは全てサーバーとサーバーサイド言語を使うことになります。

データベース
MySQLやSQLiteなどのシステムのことです。他にもたくさんあります。
サーバーに保存したデータを効率よく保存、取り出し、管理などするためにデータベースの知識が必要になります。
つまりログイン認証だろうが、間違えた問題の復習だろうが、それ自体のデータが管理されていないとどうにもならないことにはだいたい必要になってきます。

Linux
サーバーを作るときに必要になります。
サーバーを自分で構築せずに、あらかじめ簡単に作成できるように提供してくれてるサービスを使うのであれば、不要な場合もありますが、それを使うならそのサービスについての勉強は必要になります。
なんにせよ、他の言語より先に覚えなくてはいけないというパターンは少ないと思います。

何をどのような順番で学習すればいいのか教えて下さい、よろしくお願い致します。

ひとまずは
HTML/CSS → JavaScript と勉強して、まずはブラウザの一画面で完結できるシステムを作れるようになってから、PHPやLinuxやデータベースなどについて学んだ方が良いと思います。
もちろん、これが絶対的な答えというわけではありませんし、PHPの代わりに他のサーバーサイド言語を使用するのも全然ありだと思います。

今回の目的においてはJavaの知識はなくても実装できると思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/01/02 12:20 編集

    抽象的で拙い質問にもかかわらず、丁寧に回答いただきありがとうございます。

    色々触ってはみたものの、自分の作りたいものが今学習している言語で作れるか分からず不安になっている状態でした。回答を拝見させて頂いて、どの言語を深めていけば良いか理解できました。本を買って調べるにも一冊が高いので、これから深めるべき分野が分かり助かりました。

    アドバイス通りまずはJavascript等を使って、1ページで完結したサイトを作成していきたいと思います。
    その後はPHP、Linuxの学習を進めていきます。

    年始の貴重なお時間を頂きまして有難うございました。

    キャンセル

+2

学習サイトの作成方法について

ざっくりと以下が最低限必要かと

・学習カリキュラムを作る
・カリキュラムに応じたコンテンツを作る
・会員制 Web サイトを作る
・会員制 Web サイトを運営する

記述されてない内容としては

・集客手法
・課金システム

等々。

一般的な Web システムでは

・調査/企画
・要件定義
・設計
・開発
・テスト
・リリース
・運用

のステップを踏みます。

いきなり設計や開発を考えているようですが、調査/企画が不十分なので、立ち戻ってください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/01/02 12:08 編集

    抽象的で拙い質問にもかかわらず、ご回答いただきありがとうございます。

    まだまだ考え切れていないことがあることに気が付かされました。調査企画という方面でも調べて学習を進めていきたいと思います。
    年始の貴重なお時間を頂きまして有難うございました。

    キャンセル

+1

あとは Webプログラミングと、DBプログラミング じゃないでしょうかね。
お好みの言語で基本的な部分を習得したら、何かしらのフレームワークの学習をすればいいと思います。

データベースを使うのは方向性としてはいいと思います。
Linuxの学習も並行して進めるといいと思いますが、HerokuなどのPaaSを利用すれば、それほど深掘りしなくても良い気がしますので検討してみてください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/01/02 12:30

    抽象的で拙い質問にもかかわらず、ご回答いただきありがとうございます。

    DBプログラミングという言葉すら知りませんでした。フレームワークを使うという考え方はありませんでした。参考にさせて頂きます。

    Heroku、PaaS、についても調べてみます。

    年始の貴重なお時間を頂きまして有難うございました。

    キャンセル

-3

失礼ながらあなたの現段階のレベルでは不可能だと思うのでwebサイトの模写をし、フロントの基礎をやったあとにlaravelみたいなフレームワーク勉強してからのほうがいいとおもいます。たぶん...

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/01/02 12:34

    抽象的な質問でしたがご回答いただきありがとうございます。

    webサイトの模写はjavascriptの理解が薄かったので、避けてしまっていました。きちんと基礎を学習して挑戦していきます。

    laravelというフレームワークがあるんですね。参考にしてみます。

    キャンセル

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

  • ただいまの回答率 88.03%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る