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

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

ただいまの
回答率

88.03%

効率のよいプログラミングの教え方

解決済

回答 7

投稿

  • 評価
  • クリップ 12
  • VIEW 5,182

score 60

プログラミングの基礎知識を付けなければならない友人にプログラミングを教えているのですが、いまいち理解してくれないというか、覚えてくれません。
勉強に掛けられる時間も限られているので、手早く基本的な部分を理解させたいと思っています。
使用している言語はJavaですが、言語にこだわらずプログラミング全般に関してで良いので、効率のよい指導方法や教え方などありましたらお教え頂きたく存じます。
本来なら自分で勉強してくれたら良いのですが、苦手意識があるみたいで、プログラミングを嫌っているようです。
以上よろしくお願いします。
  • 気になる質問をクリップする

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

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

    クリップを取り消します

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

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

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

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

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

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

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

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

    質問の評価を下げる

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

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

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

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

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

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

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

    詳細な説明はこちら

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

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

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

回答 7

+9

苦手意識があるみたいで、プログラミングを嫌っているようです。 

ということであれば、教え方を考える前に、プログラミングを好きにさせることしか無いと思います。
その人の興味を持っていることにプログラミングをつなげてみるとか
そもそも何のためにプログラミングを学びたいと思ったのか深く考えさせるとか

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/07/04 15:32

    回答ありがとうございます。
    私もプログラミング好きなので、友人にも好きになってもらいたいです。
    目的意識を持たせるように再度考えさせてみます。

    キャンセル

+7

効果的な学習のためは、動機付けが重要です。
興味をもちさえすれば、子供は大人では太刀打ちできない学習能力を発揮するものです。

携帯関係のゲームをつくるとか、SNS への自動アクセスとか, 写真を加工するとか
日常 行っている行動をプログラミングで処理するとこんなことができる!
という例を示し、それを作っていくためには ... というようにすすめていくとよいかもしれません。

参考情報:
- 子供向けプログラミング絵本「Hello Ruby」の作者が語る、遊び心で子供にプログラムを教える方法とは  http://edmaps.co/moocsnews/helloruby01/
- 子供向けプログラミング教室を開催した中学1年生、大人たちにも知ってほしい新しい学習の形とは http://logmi.jp/64467

投稿

編集

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/07/04 15:33

    回答ありがとうございます。
    子供、という年齢でもないのですが、参考にさせて頂きます。

    キャンセル

checkベストアンサー

+3

こんにちわ。
あなたか、覚えさせようと必死になるのは解りますが、あなたが覚えるわけではないですよね。

覚えるのは友人なのですから、友人の立場を考えてみてください。
どのように指導しているのかはわかりませんが、

たとえば、教科書のようなものがあって、それを、学校でやるように先生か教えるように
やってはいませんか?

学校方式は、小学校1年生からの知識が積み重なってそれが基礎となり新しいことを
覚えていけるのだと思います。

全く、知識がない人に覚えてもらうには、体験させるのが一番早いです。
つまり、何かのテーマを与えて自分で解決させるようにします。

たとえば、ゲームです。簡単なゲームでもいいので、 
たとえばサイコロゲーム。コンピュータが1から6までの乱数をだし、それを何回で当てられるか
みたいな簡単なゲームから作らせる。
など。
そのとき、あなたから説明や解説は一切しません。
聞かれたら、教えるようにします。
わからないから、聞くのですから、聞かれたこと以外は答えないことです・
なぜなら、質問したと以外のことの答えが来ると混乱していまうからです。
また、そのような雰囲気を作ることも
大事だと思います。
いかがでしょうか?

投稿

編集

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/07/04 15:31

    回答ありがとうございます。
    今現在はJavaの入門書の内容をPDFにまとめたものを見せながら
    教えています。たしかに学校の先生が教える方法に似ていると思います。
    今後は、ご指導のように簡単なテーマを与えて自分で考えさせるように
    してみたいと思います。
    一番早く回答くださったので、この回答をベストアンサーとさせて頂きます。

    キャンセル

+3

以前読んで、なるほどそうかも〜と思って読んだ記事を紹介しておきます。
やっと分かった。プログラムができるようになるためのたった一つの方法。プログラミング入門者に向けて。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/07/04 15:33

    回答ありがとうございます。
    参考リンクも見てみたいと思います。

    キャンセル

+2

こんにちは

今、小学生~高校生くらいの年齢向けにプログラミング教室が流行っていますね

教室によって様々ですが、いきなり言語を学習してコーディングするよりも「Scratch」などを使い「部品の組み立てだけでゲームをつくりながらロジカルな考え方を身につける」ことから始めているところが多いようです

大人でも、ゲームを入り口にすれば「もっとこうしたい!」「どうすれば面白くなる?」と積極的に学びたくなるかなと思います

どんな言語を使うにしても、順次処理、分岐、繰り返しを使うことは変わらないので、「1.考え方を身につける」「2.ターゲット言語でそれをコーディングし実体にする」という手順を追うことで、効率的な学習となるのではと思いました

以上、ご参考になりましたら

(追記)
もしもプログラミングを覚えたいその人の目的が「何かの期限に対して、学んだ言語を使ってその課題をクリアする」というものでしたら上記はとても遠回りです・・・「がんばって!」としか言えないかも
ちなみに「Scratch」以外にも「Googleブロックリー」「Viscuit」などもあります

投稿

編集

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/07/04 15:32

    回答ありがとうございます。
    本人のやる気が感じられないため、1.の考え方を身につけるの時点で
    詰まっているような気がします。実はC言語を一通り勉強しているはずですが(授業で)、
    全然身についていない感じです。
    > 「何かの期限に対して、学んだ言語を使ってその課題をクリアする」
    まさにこれですので、ブロック形式の教材を使って教えるという方法が時間的に
    無理な状況です。

    キャンセル

  • 2015/07/07 23:36 編集

    大丈夫、
    中学生だけどブロックとかやったことないからwww(ブロックも悪くはないと思うけど)
    もしブロックならhttps://www.google.co.jp/search?q=App+Inventor&oq=App+Inventor&aqs=chrome..69i57j69i61&sourceid=chrome&es_sm=91&ie=UTF-8とかどうですか?
    もっと楽観的に考えるといいと思う
    やる気がないときは僕は褒められるとやる気が出る

    キャンセル

0

1. 簡単なアプリ作りから初めてちょっとずつするのはどうですか?
きっと活用方法がわかってしばらくしたら自分で習ったことの組み合わせで作るようになると思います。
2. たまにテストをしてはどうですか?わからなかったらそこをもう一回書かせるとか・・
繰り返しが一番力がつくと思います 

ちなみにぼくはプログラムを習ってる側(android java)なんですが
わからないところはだいたい簡単な勘違いとかです。(だいたい時間が解決する(一週間ぐらい))
もしかしたらファイル構造がわかっていない可能性もなきにしもあらず(昔の俺がそうだった)

投稿

編集

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/07/04 15:33

    回答ありがとうございます。
    簡単な事を繰り返しテストさせて見たいと思います。
    確かに、スマホ世代なのでパソコンの構造もあやふやになっているかもしれません
    (1度は勉強しているはずなのですが…)。

    キャンセル

0

アルゴリズム問題集なんてどうでしょうか?
使わないようなシステム・アプリを作っても面白くないですし、正解不正解が出る問題集みたいのはモチベーションが上がりやすいかと思います。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/07/04 15:34

    回答ありがとうございます。
    まだ基本的な制御構造も使いこなせないレベルなので、アルゴリズム問題集となると
    難易度が高すぎてしまいます。個人的には早くそのレベルまで成長して欲しいものです。

    キャンセル

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

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

関連した質問

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