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

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

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

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

3回答

4527閲覧

最速で検索サイトを作る方法は何でしょう?

html-man

総合スコア18

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2017/11/29 17:38

作りたいサイト:日本語学校を絞り込み検索ができるサイト。
例えば、プルダウンで「大阪」を選択し、検索ボタンを押すの大阪の日本語学校一覧が出てくると。

そういうものって、何の技術を学べばいいんでしょうか?
当方、HTML/CSSはみっちり入ってるんですが、JSやサーバーサイドはからっきし無知なんです…
検索!?サーバーサイド勉強しなきゃか?と思ったんですが大丈夫そうっぽいので。
ちなみにJSはちょっとPiogateで学んでたのであまり難しくなかったです。

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

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

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

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

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

guest

回答3

0

ベストアンサー

何の技術を学べばいいんでしょうか?
検索!?サーバーサイド勉強しなきゃか?と思ったんですが大丈夫そうっぽい

結論から言うと、検索サイトを作るには、サーバサイドの技術を学ぶ必要があります


非常に小規模な場合なら、クライアントサイドだけで検索を実現できなくもありません。
JavaScriptの中にデータを全部突っ込んでおくとかです。

しかし、データの規模が大きくなってくると、ページ読み込みの負荷も大きくなって、
だんだん現実的な選択肢ではなくなってきます。

サーバサイドを使うと何が違うかというと、
サーバからクライアントに必要な分だけデータを渡すことです。


まず、いっぺんに全部に読み込む必要がなくなるので、
最初に見るページの読み込みの負荷が軽くなります。

そして、ユーザによって、大阪だけ、東京だけとか、
必要なデータが異なるので、ムダな読み込みも減らせます。

また、データへのアクセスを制御できるので、
掲示板などの情報を共有するサイト、
会員制サイト、通販などの商用サイトには必須と考えていいです。

それらの機能をクライアントでやろうとすると、勝手にJavaScriptを書き換えて、
勝手に会員や価格などの情報を書き換えたりできるから、使い物になりません。
そして、サーバサイドを作るときにも、セキリュティの知識は必要です。


具体的な実装技術としては、クライアントサイド、つまりJavaScript
PHP(Python、Ruby)などのサーバサイド言語
ある程度規模が大きいなら、SQLなどのデータベース言語を学ぶ必要があります。

また、絶対必須でもないですが、LaravelやRailsのようなフレームワークも有用です。
それらが大枠で、あとは目的に応じて、ライブラリなどを追加で学んでいけばいいと思います。

それから、検索だけでいいなら、フリーの全文検索エンジンを利用するのが早いです。
また、WordPressの検索プラグインを使うと、早いだけなら早いです。

でも、それらをカスタマイズしたいなら、
結局やはりサーバサイドの知識が必要になってきます。

投稿2017/11/29 22:00

編集2017/11/30 00:19
LLman

総合スコア5592

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

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

html-man

2017/11/29 23:11

LLmanさま、とても丁寧で分かりやすいご回答ありがとうございます! やはりそうなんですね…笑 ちょっとググってみたらJs'の方が早い!」とか以前あるエンジニアさんが「JSは意外とサーバーサイドっぽいこともできてすごいよ!」なんて言ってたので、頭の中がごちゃごちゃになっていました。。。 私が基本web広告側の人間で、ページの見た目いじるためにHTML/CSS学んだだけなので、そこらへんはまだ全然なので。 以下、私のような人のために引用させて頂いておきます。とても助かりました!本当にありがとうございます。ググったりもしますが、自分のレベルだとまた失敗しそうなので笑、今日は本屋に行っていろいろと見てみます。 >>クライアントサイド、つまりJavaScript、 PHP(Python、Ruby)などのサーバサイド言語、 ある程度規模が大きいなら、SQLなどのデータベース言語を学ぶ必要があります。 また、絶対必須でもないですが、LaravelやRailsのようなフレームワークも有用です。 >>それから、検索だけでいいなら、フリーの検索エンジンを利用するのが早いです。
LLman

2017/11/30 00:16

>エンジニアさんが「JSは意外とサーバーサイドっぽいこともできてすごいよ!」 それはたぶん「Node.js」のことです。同じJSでもクライアントとサーバサイドでは違います。 野球でピッチャーもバッターになって打席に立てるみたいなことです。 それで、Node.jsは高機能ですが、サーバ構築なども含めて、使いこなすのが難しいです。 PHPの方が、安いレンタルサーバに最初から入っているなど手軽なので、入門向きです。 改めてまとめると、さしあたりJavaScriptと、PHPなどのサーバサイド言語の学習が必要です。
html-man

2017/11/30 00:27

そうなのですね。 確かにレンタルサーバーにはPHP対応!とか書いてありますね。ありがとうございます。
guest

0

※この道に入って間もない輩の回答ですのであしからず

すべてクライアントサイド(javascript)で実現することもできなくはないと思いますが、クライアントサイドはユーザーから全て見えてしまうので普通にそのままパクられるとおもいます。
(そんなことなかったらすみません)

すぐ思いつくのは、

  • ウェブアプリケーション(素のPHPやWordpressのようなCMS、rails, django, laravelなどのフレームワーク)
  • 学校データを入れるデータベース(MySQL, PostgreSQLなど)
  • UI/UXを作り出すHTML/CSS/JS

の辺じゃないでしょうか。
あとサーバーをどうするかですが、レンサバにしてもVPSやクラウドにしてもある程度のサーバーの知識も必要かと思います。
あとドメインも取ったり。

順番的には
0. サーバー立てる
0. とりあえずページをつくる
0. データをDBに突っ込む
0. フォームをつくる
0. ロジックを書く

という感じでしょうか。

サーバー側でページを組み立てるときにDBからデータを取得して、例えば<form><select>に突っ込みます。
そのフォームでGETリクエスト投げさせて(プルダウンで-とおっしゃっている部分です)
サーバーでリクエストを受けたら、DBへのクエリ発行はSQLインジェクションに注意してサーバーサイドで行います。
取得した結果でページを構築するという感じの手法です。

Wordpressが導入は簡単でいいんじゃないでしょうか。レンサバでもかんたんに動きますし。
PHPでできてるのでページの構築もある程度は直感でできると思います。(Wordpressの用意している関数が膨大なのでそれを覚える必要はあると思いますが)

Wordpressでやる場合、

  • HTML/CSS/JS
  • PHP
  • MySQL

の知識がアレばできると思います。

※学校データはすでに何かしらの媒体で持っているものとしています。

追記

javascriptを主要言語としてやっていきたいのであれば、node.jsとかもいいと思います。
node.jsはサーバーサイドのjavascriptです。
これはこれで言語仕様として難しい部分もあるかと思いますが・・・
node.jsがインストールできる環境ならできます。
ただ、PHP以外の言語でアプリケーションを作るとなるとネットワークやwebサーバー(Apacheやnginx)の知識が不可欠です。
(この辺は私もまだまだ勉強中です・・・)

投稿2017/11/29 18:21

編集2017/11/29 18:32
kurosuke___

総合スコア217

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

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

html-man

2017/11/29 23:18

E3KUROSUKEさま ご回答ありがとうございます! >>クライアントサイドはユーザーから全て見えてしまうので普通にそのままパクられるとおもいます。 →言われてみたら確かにそうですね。どうなっているかが全て見えるのは気持ち悪いです…笑 >>順番的には 1.サーバー立てる 2.とりあえずページをつくる 3.データをDBに突っ込む 4.フォームをつくる 5.ロジックを書く という感じでしょうか。 →こちらの流れ、とても分かりやすく助かります!今は2.まで終わっている状況です。ここからは勉強しながら進めていきたいです。 ありがとうございました。
guest

0

理想の機能が作れたら、ここに「実際に何を学んで、どのような流れで開発できたか」を書こうと思います。

投稿2017/11/29 23:18

html-man

総合スコア18

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

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

html-man

2019/01/16 02:31

こちら結局、PHP / Laravelを学んで、Laravel使いの友人と開発しました。 回答いただいた方々、ほんとうにありがとうございました。
html-man

2019/01/16 02:32

JS(jQuery)も使っていますがほんの一部です。
ko.tu

2019/01/16 10:13

(...今はVue.jsとかNuxt.jsとか便利なJavaScript系のフレームワークがあって、JavaScriptだけでサーバーサイドをあまり気にしなくてよさそうですよ) 今更かもしれませんが
html-man

2019/01/17 03:27

そうかもしれませんね。それはケースバイケースですが。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問