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

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

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

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

6回答

2314閲覧

JavaScriptの学習方法について。

YuichiKataoka

総合スコア216

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

1グッド

1クリップ

投稿2015/07/16 15:52

編集2015/07/16 16:00

当方Javascriptを学びたいのですが
書籍を2冊程度読んだり、少し使ってみたりしても簡単なモノは分かるようになりましたが、関数がめちゃくちゃ多い感じがするし、どんだけ奥が深いのかと日々感じています。

そこで、javascriptをマスターしている方たちは、どんな書籍を読んだりして
あるいは普段どんなscriptを書いて経験を積んでいるのでしょうか?

小生に経験者の方のオススメの書籍や、普段どんなプログラムを書いて経験を積んでいるのか教えて頂けると嬉しいです。よろしくお願い致します。

nnahito👍を押しています

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

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

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

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

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

guest

回答6

0

マスターしているというほどではなく私もまだまだ学習中ですが、
JavaScriptという言語には学びにくさがあると思うので、その部分をお答えします。

結論から言うと、JavaScript(以下長いのでJSと略)以外の言語を学ぶと、JSも分かってくると思います。
これについて、いやJSの学習法が知りたいのだ、と思うでしょうから、なぜそうなのかご説明します。

C++などもそうですが、JSはマルチパラダイム言語です。
手続き型、オブジェクト指向型、関数型と複数のパラダイムで書けます。
そのため書き方が複数あり、複雑で分かりにくくなっていると思います。
だからマルチパラダイム言語は、実用向きですが、学習向きではないと考えます。

JSがLL系言語なのに意外と難しく感じるのは、JS自体のトリッキーさもありますが、
背景のオブジェクト指向(以下OOと略)や関数型指向が難しく、
またマルチパラダイムのJSで意図的にひとつの指向で書くのが難しいのだと思います。

逆にひとつのパラダイムを中心にしている純粋型(に近い)言語は学習に向きます。
OOであれば、たとえばJavaのほうが学習しやすいです。
JavaがOO言語であること、OOPとJavaの普及期が重なるので、
学習書が豊富であること、などから学習しやすい環境があります。

JSはオブジェクトの書き方だけでも複数あって混乱します。
JSのプロトタイプベースのOOより、JavaのクラスベースのOOのほうが、
分かりやすいと思います。先にJavaでOO自体を身につけてからのほうが、
クラスとプロトタイプの違いだけに集中すればいいので、分かりやすいと思います。

>オススメの書籍
一般的には「サイ本」(オライリーの本)と言われています。

JSだけを知りたいなら、そうだと思いますが、
特定の言語の本だけでなく、OO、関数型など
アルゴリズムの本もたくさん読むのが、
遠回りなようで近道だと思います。

そして、JSだけだとそういう学習書が少ないので、
他言語を学ぶというのもひとつの手だと思います。

>どんなプログラムを書いて経験を積んでいるのか
私自身は、原点回帰の意味で、SmalltalkでOOPを、Lispで関数型指向を学んでいます。
それぞれの言語自体が難解なので、人にはあまりおすすめできませんが、
極端な例を示されるとかえって分かりやすいかと思って、例として挙げました。

投稿2015/07/16 18:30

LLman

総合スコア5592

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

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

YuichiKataoka

2015/07/17 15:18

>結論から言うと、JavaScript(以下長いのでJSと略)以外の言語を学ぶと、JSも分かってくると思います。 うーん、学びながら薄々感じてはいましたが、やはりレベルは高いモノなのですね。 地道に勉強して書いていきたいと思います。 ありがとうございました。
guest

0

こういう系の質問に、私は「おすすめする書籍はない」とお答えしております。
何故かと言うと、私の「オススメ」と貴方様の「オススメ」は別もの、つまり、私に「あう」書物が必ずしも貴方様に「あう」とは限らないからです。

例えば、世界でよく教科書として扱われている(らしい)、「O'Reilly」のJavaScriptを読むのが一番!とオススメしても、アナタに合うとは限りません。
(実際私はこの本の書き方が嫌いです。)
他にも「ドットインストール」で動画を見てみればよいのでは?
と言っても、この方法が気にいるかは貴方様次第ですね?

ですので、実際に書店に行き、パラパラとページを捲って「これなら読める!」と購入するのが一番だと思います。

次に私の勉強法(独学)は、とにかく「作る」ことだと思っています。

例えば、「非同期通信を行いたい!」と思うと、では「Ajaxを使ってみよう!」とその使い方の勉強を行えます。
そしてその時に、書物を読む、サイトを読むだけと言った勉強法は、身につきません。ええ、断じて身につきません。(言い過ぎ?)

実際に、
読む→コピペで動かしてみる→値を変えて、関数などの動作を確認する
という作業が本当に身につきます。


さて、結論としてですが、

  • おすすめの書物はありません
  • 実際に実装して学んでいく
  • 分からなければ何度もググる

というのが私の回答です。

蛇足。
最近初めてLinuxのサーバというものを触ってみたのですが、
とりあえず動かす→「動いたー!」→放置→しばらくして起動→「げっ!?ブルートフォースアタックされてるやん!?」
ということがありました。
そこからFirewallの設定方法を調べたり、sshを切ったりと様々な設定を学びました。
やはり一度行ってみるということが大切だと思います。

投稿2015/07/16 17:33

nnahito

総合スコア2004

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

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

YuichiKataoka

2015/07/17 15:20

>実際に、 読む→コピペで動かしてみる→値を変えて、関数などの動作を確認する という作業が本当に身につきます。 これは、本当そうかもしれません。 道は長いですが。楽しんで学んでいければと思います。 ありがとうございました。
guest

0

ベストアンサー

下記の URL を開きます。

https://teratail.com/tags/JavaScript

「未解決」のタブを選択します。

JavaScript のコーディングに関する質問を探します。

質問を読んで、その回答を考えます。

もしわからなければググるなりして調べます。

回答を書き込みます。

他にも回答がついていれば、自分の回答との違いを見比べてみます。


これを繰り返せば、そのうちそこそこ書けるようになるかもしれません。

投稿2015/07/17 06:24

ngyuki

総合スコア4514

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

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

YuichiKataoka

2015/07/17 15:14

回答ありがとうございます。 明快だったのと、すぐに実践出来そうだったのでベストアンサーとさせて頂きました。 早速試してみたいと思います。
guest

0

関数が多いといってもESの範囲では100も無いでしょうし、これは自然と覚えることが出来ます。
各種WebAPIまで全部覚えることは不可能に近いですが、どんな機能のWebAPIがあったかだけでも覚えておけば困りません。
毎回調べていくうちによく使うAPIに関しては覚えられます。

まあ初心者のうちはなにか新しい物に出会ったり、疑問を持ったら検索して学ぶことの繰り返しで、勉強のネタは尽きないと思います。
脱初心者したかなと思ったら、MDNのようなまとめサイトやブログ等から吸収していくといいでしょう。
そして最終的には仕様書を読むことになります。

投稿2015/07/17 00:06

編集2015/07/17 00:12
jser

総合スコア100

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

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

YuichiKataoka

2015/07/17 15:17

回答ありがとうございました。 ESとは何でしょうか? 100程度でしたら大丈夫そうです。 ちなみに、APIというのはjavascriptのスキルはマストなのでしょうか?
guest

0

英語の書籍ですが、次のものをお勧めします。
A Smarter Way to Learn JavaScript http://www.amazon.co.jp/Smarter-Way-Learn-JavaScript-technology-ebook/dp/B00H1W9I6C/

amazon.com の レビューでは、 星5つ (855 レビュー) で評価がとても高いです。

あるいは 本屋にいって、いろいろな本を眺めてみて、自分にあっていそうな本を買ってくるとよいです。

ともかく 言語を学ぶときは、まずは 基本を書籍でじっくりと学ぶとよいです。

web での検索や github などでのコードを読むことも役に立ちます。
でも、まずは基礎をかためておかないと、それらの記事やコードの良し悪しを取り違えてしまうことがあります。

投稿2015/07/17 21:02

katoy

総合スコア22324

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

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

YuichiKataoka

2015/07/18 15:55

英語の書籍は読めないのですが、(^^) まずは書籍で基本を学んでみます。 ありがとうございます。
katoy

2015/07/18 23:51

> ... 英語の書籍は読めないのですが .. 日本語圏内からでれば、情報の取得量・質は大きく変わります。 英語情報の取得についてもプログラム言語の学習と同じようにトライすることをお勧めします。 (音楽をやる方が、楽譜を読めるが読めないかで大きく可能性が変わります。 楽譜が読めない/音楽理論を知らなくても 才能だけで進んでいける人は 天才と呼ばれます)
guest

0

自分は一部のソフトで自動化制御用にjavascriptを使った程度なのであまり参考にならないかもしれませんが、以下のサイトにまとめられているような事柄では結構悩みました。
ttp://www.yunabe.jp/docs/javascript_class_in_google.html

もしこのあたりのことをまだ意識されていないようでしたら、暇な時にでも調べてみることをお勧めしたいです。

投稿2015/07/16 17:27

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

YuichiKataoka

2015/07/17 15:22

参照しましたが、自分のレベルにはまだ早そうでしたww でも、回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問