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

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

新規登録して質問してみよう
ただいま回答率
85.48%
プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

Q&A

解決済

6回答

208閲覧

最短で学習する為には?

sasuke_killer

総合スコア42

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

3グッド

2クリップ

投稿2018/08/13 02:11

編集2018/08/13 04:02

最短でプログラミングのスキルを身につけるにはどうすれば良いのでしょうか?

注目の質問にもありましたね。
しかし、内容をそのまんま受け取ってるからかもしれませんが、期待する回答が見られなかったので質問します。

質問本文

僕は、プログラミング初心者だからかもしれませんが、本当に効率的な勉強の方法を知りません。
そこで、先輩であるプログラマーの方に聞きたいです。

本を使った独学のプログラミング学習は、効率の悪い勉強法ではないですか?
とりあえずサンプルコードを写して、自分なりに手を加えることを繰り返すのは、無駄ではないのでしょうか?

回答お待ちしております。

余談

上の通り余談ですが、恐らく注目の質問にあった質問の「最短」というのは本当の意味での最短ではないかと。
要は、プログラミング初心者故に、インターネットや書籍に書かれている勉強法が無駄ではないのか、どのような勉強法なら無駄にならないのか、が不安なのです。
何も分からないで記事や文の言いなりになって、あとで「無駄だった!」と気付いたらとんでもない時間を無駄にしてますからね。

追記1

早速低評価がついていますね。
それなら、どこが低評価なのかを教えて頂けると有難いです。

追記2

皆様回答ありがとうございました。
大雑把な質問にも関わらず、学べたことが沢山あります。
ベストアンサー、4人ほど選びたいのですが無理ですねw

ありがとうございました!

DrqYuto👍を押しています

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

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

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

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

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

Zuishin

2018/08/13 03:56

質問が大雑把すぎるので大雑把な回答しかできません。言語と目標を定めた詳細な質問をすれば、より詳細な回答がつくと思います。注目の質問に上がっている同様の質問は全部同じに見えます。違うことを聞きたいなら質問自体をより具体的にする必要があります。同様の質問はこれまで何度も上がっていますので、これだけならわざわざ新しい質問にする意味はありません。そういう意味での低評価ではないでしょうか?
sasuke_killer

2018/08/13 03:59

なるほど。一応検索してから質問したのですが、何回もあったんですね。質問し直そうと思います。ご指摘ありがとうございました!
guest

回答6

0

ベストアンサー

まず大前提として、プログラマーとして生きていく以上は、基本的に学習に終わりはないと考えておいたほうがいいです。毎年のように新技術、消えていく技術がある環境なので、ついていけなければ今いる地位にしがみつくことしかできなくなります。

ということで、

どのような勉強法なら無駄にならないのか

その技術が廃れた際に無駄になるのを回避する方法はありません。

ただ、アルゴリズムや計算機科学といった基礎的な分野は、それこそチューリングマシン(半世紀以上)やニュートン法(数百年)、ユークリッドの互除法(2000年以上)のように、およそ書き換わることがないですので、このような「基礎体力」を身につけておけば、一生もののスキルにできることが見込めます。

そして、学習法は人それぞれですので、まずは自分に合った方法を見いだすことにも力を注いでみてください。前述のように、こちらも一生使うスキルです。

投稿2018/08/13 02:41

maisumakun

総合スコア145183

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

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

maisumakun

2018/08/13 02:50

昔から、「すぐに役に立つものは、すぐに役に立たなくなる」と言います。 基礎を後回しにして、無駄なく身につけたように見えるスキルも、環境が変化すれば一気にすべてが無駄となる危険があります。
sasuke_killer

2018/08/13 04:00

とても簡潔で素晴らしい回答でした。 ありがとうございました。
guest

0

本を使った独学のプログラミング学習は、効率の悪い勉強法ではないですか?

普通に学習能力のある人ならそんなことはないはずです。

自分が何をしたいのか目的を明確にしたうえで、その目的と自分の知識・スキルに合った本の選択して、体系的な勉強ができれば効果は十分得られると思いますよ。

要するに、効果があるか否かは (1) 目的の立て方、(2) 本の選び方、(3) 質問者さんの学習意欲次第だと思います。

分からなことがあったとき、本が相手では質問できないので困るということはあるかもしれませんが、それはまた別の問題かと思います。

投稿2018/08/13 02:40

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

最短を目指すのであれば、目的地がわからなければ最短は辿れないです。
・アプリを世に出したいのか?
・最速コーダになりたいのか?
・エンジニアとして有名になりたいのか?
・OS を作りたいのか?
等々、目標によって全然異なるアプローチが必要です。

とはいいつつ、最近注目した記事があったので紹介しますw
エッセンスですが、以下が公開されていて非常に面白かったです。

リクルートテクノロジーズ エンジニアコース新人研修の内容を公開します(2018年度版)

目標を「技術レベル/意識の適当に揃ったエンジニアを世に出す」場合に参考になる資料ですね。

投稿2018/08/13 02:50

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

####最初に

最短でプログラミングのスキルを身につける方法…ですか。
まず、ゴールを決めるべきです。

全てのプログラマに言えることですが、
情報の取捨選択、優先度を決めることは絶対に必要な能力です。

あなたがもし全ての情報を把握できるのなら、
全てのプログラミング言語を1個1個理解していけばいいはずです。

####本題
さて、プログラミングといっても多種多様です。
ゲームや機械学習、Web、OS開発、etc..

上を懸念し、言語を決めたことを前提に自分が思う最短ルートを以下に記載してみます。

①どういうプログラムを作るか決める
※自分がギリギリ作れそうだと思えるレベルのプログラムを書けることを目標にする

②そのプログラムを作るために以下のことを着目する

  • そのプログラムを作る環境は何か?
  • また、その環境は現在整っているか?
  • 手をつける際に、知らない知識や概念がないか?
  • また、それ等の情報は把握できているか?

③ 実際に作る

  • 分からないことは、まず検索エンジンで情報を集める

※これはかなりプログラミングのスキルと直結している

  • 今までの情報を整理して、具体的に人へ聞いてみる

※身内に詳しい人が居れば聞くもあり、teratailを使うのもあり


この①~③を早く繰り返せる人が最短で学習できると思います。
また、書籍はあくまで③をするための手段でしかないです。

####最後に
プログラミング学習は、

  • 情報を集める力
  • インプット(学習)とアウトプット(コードを打つ)の的確さ
  • 情報を整理する速度

上記3点の能力に直結するので、
根本として上記3点が出来てさえいれば、
自然とプログラミングのスキルを身につけることが早くなります。

例えば
「ただ書籍を読めばプログラミングを覚える」という認識は間違いなことが多く、
結局原因として、上記のように

  • 買う書籍がおかしい(情報を集められていない)
  • 文章をちゃんと読んでおらず、覚え方がズレている(インプットがおかしい)
  • 学習できていないので、変なコードを打ったりする(アウトプットがおかしい)
  • 本の通りにやっているだけでその本の本質を理解していない(情報が整理できていない)

などに繋がっています。

なので、
ある意味では本題に書いた内容よりも、
最後の内容を意識して取り組むべきだと私は思います。

※ちなみに、低評価なのは内容に具体性がなく、プログラミングの質問というよりはもっと根本的な内容をteratailで書いているからかと思います。こういった話はもっと内容を具体的にするか、知恵袋で質問したほうが良いと思います。

投稿2018/08/13 03:04

編集2018/08/13 03:37
BluOxy

総合スコア2663

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

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

0

人によるとしか言いようがないです。
論理的思考力があって、記憶力もある人なら、書籍を読むのが一番早いと思います。目と頭だけで出来る。
良い入門書をどうやって見つけるかという問題はありますが。これが一番難問か。

そうでない人の場合は、最短ということでは、どこが理解できていないかを見つけてくれるような、良い教師を探すのが一番ですが、なかなかそういう人は見つからない(もしくは高価)ですよね。

とりあえずサンプルコードを写して、自分なりに手を加えることを繰り返すのは、無駄ではないのでしょうか?

そういう事をしないと理解できないレベルの記述しかない本だと、確かに面倒ですね。
あるいは、記述してあっても、読解力がないと読み取れない。

投稿2018/08/13 03:48

otn

総合スコア84505

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

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

0

こんにちは。

プログラミングのスキルを身につけるにはどうすれば良いのでしょうか?

ほぼ全てのスキルに言えることですが、経験を積むことです。
(「最短で」は人によって最短な手法は異なるため回答不可能ですから意図的に外しました。質問の主旨は効率的な学習方法と受け取っています。)

本当に効率的な勉強の方法を知りません。

他の人の評価を受けることができるようなプログラムを開発することで力が付きます。
評価する作業そのものがかなりの手間ですから、なかなか練習や趣味で作ったプログラムを評価して貰うことは困難ですが、仕事で開発したプログラムは評価して貰えます。本当に力がつくのは練習ではなく本番なのですよ。

理不尽な評価もあり得るので発注者を的確に選ぶ必要がありますが、例えばクラウド・ソーシングで受注者からの評価の高いクライアントが発注している仕事から選ぶのも1つかも知れません。選んで貰える確率は決して高くはないのでメゲない精神力は必要ですが、力は付きます。

何も分からないで記事や文の言いなりになって、あとで「無駄だった!」と気付いたらとんでもない時間を無駄にしてますからね。

つまり、よく解っていない人が書いた記事や文を鵜呑みにしてしまうことが怖いということですね。確かに時として説得力があるけど的外れな記事や文を散見しますしね。
これはご自身の経験で判断するしかないと思います。良いなと思ったら実践してみて、その良さを実感できたらそれは適切な記事だったということです。良さを実感できなかったら以後スルーするのもありです。鵜呑みにせず良い悪いを実地の場で確認することが重要なのです。

投稿2018/08/13 03:31

Chironian

総合スコア23272

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問