私は昨日中学生の男の子に、自分でゲームを作りたいのですがプログラミングが好きになりません。
どうすれば好きになりますか?
と相談されました。
理由は、プログラミングを学習する際に書籍とパソコンの画面の両方を長時間みたりするため
勉強がしずらいという理由らしいです。
またその子は、C言語とJavaScriptの勉強をされているようです。
(プログラミングを初めて4ヶ月くらいとの事でした。)
私は、それなら書籍を使わずにネットでC/JavaScriptが学べるサイトで学習したらどう?
と答えましたがどうも書籍を使ってやりたいようです...
(ネットの情報が信じられないからでしょうかね...ここは私もよくわかりません。)
今回の場合どうすれば良いと思いますでしょうか?
どなたか過去の経験で同じような事で悩まれた方いましたら教えていただけないでしょうか?
難しい質問ですがどうか宜しくお願いします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答16件
0
C言語とJavaScript・・・
初学者にはとても辛くなりそうな・・・
何年も前に友人にC++を教わったのですが、
コマンドプロンプトにびびったり、出力もあの黒い画面に・・・という感じで、
ごくたまにちょっとだけトライしてみて挫折してを繰り返していたのですが、ちょうど一年前に
HSPを触ってみたら、これがプログラミングか!と何か分かった気になれました。
- ウィンドウが作れる
- 付属のエディタがそれほど複雑ではない(VisualStudio等と比べて)
あたりが自分にそのように思わせた要因だと思います。
JavaScriptはhtmlの知識も必要になってきて、当時の自分にはハードルが高かったと記憶してます。
console.log等で出力を確認するのも、文字数がやや気になります。
HSPだけじゃダメだと思ってrubyに手を出した後は、ツイッターに直接コードを書いて、面白い結果になったよ!こうするとこうなるのか!というようにつぶやく楽しみ方もできるようになりました。いい仲間が周りにいてくれたおかげではあるのですが、プログラムの話をする仲間がいると、プログラミングが好きになれると思います。
その男の子はゲームを作りたいとのことですが、その子の興味の持ち方にもよると思います。
ゲーム製作がしたくて、将来、ゲーム製作の道に進みたいのなら、深くプログラミングを理解する必要はないと割り切って、簡単そうな言語で簡単なことができるようになることを目標としてすすめたりするのはどうでしょうか。
逆に、ゲーム製作を足がかりにプログラミングを学びたいというのなら、プログラミングが好きになれないのは死活問題になりかねません。この場合、ゲーム製作が上手くいったという経験がもとでプログラミングに愛着がわいてくるという可能性があります。なので、その子がしているゲーム製作が順調に進むようなアドバイスをしてあげるといいと思います。ゲームの規模が小さくして、そのゲーム内でのプログラミングの部分は少なく押さえられるのが鍵だと思います。
投稿2014/08/09 20:55
総合スコア145
0
基礎はやっぱり楽しくないので、欲しいものアプリを作るには「何を理解している必要があるか」というように遅延評価型勉強法でいくのもありだと思います。
また、プログラミングには適正が必要だと思っています。
その人はコードを書きたいのではなく、単純に「ゲーム開発に携わりたい」だけでなのではないでしょうか。
ディレクションとかシナリオライターなど色々なポジションがあるので、何をやりたいのかをもっと掘り下げる必要があると思いました。
投稿2014/08/08 16:23
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
自分の経験上、プログラミングが楽しいのは、作り終わって試す際の達成感だと思います。
中学生くらいの頃だと、真っ黒い画面に白い文字で結果が出るだけだと、つまんねッて思ってしまうかと思います。大昔だとbasicがあって、結構すぐ試せて、結果も派手目に見れましたけど現代だと、なかなか分かりづらいことが多いですよね。
今だとrasberypiとかでgpio制御とかが労力の低さの割に達成感があるかもしれません。
jsやCでgpio制御(ledを光らせる、モーターを動かす等)できてlinuxの基本的な使い方も学習できてお勧めです。
自治体で小中学校向けのワークショップもやっているので探してみるのも手かもしれません。
投稿2014/08/11 19:53
総合スコア708
0
プログラムを始めて最初の頃は、
何か画面上で動く様になると、途端に面白くなった気がします。
自分が指示(コーディング)した通りに動く事にワクワク感を覚えました。
10数年前の話ですが...
単純にゲームを作りたいのでしたら、
私の周りでは「Unity」が流行っています。
本格的な3Dゲームからカジュアルな2Dゲームまで作成出来るのでオススメです。
無料で使用出来ますので、先ずは試してみては如何でしょう。
投稿2014/08/18 13:36
総合スコア32
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/08/22 13:21
0
昔は、雑誌に投稿されて記事に掲載されたプログラムソースをパソコンで打ち込んで試して遊ぶ、
のような体験をして、少し改造して遊んでまた修正して遊んで…を繰り返して、プログラミングを
やってみよう、頑張って作ってみよう、になるものがあったと思いますが、最近は
「まずは作れ。話はそれからだ」なのでしょうか。だとすると敷居が高いですねぇ。
(まずはBASICだ、動作が遅いからC言語だ、コンパイルの過程で作られるアセンブラのソースを
いじればもっと速く動くはずだ…のような流れで機械語に親しみすぎて時代に取り残される体験
までは要らないでしょうが:p)
動画でプログラミングの実際を教えてくれるサイトなどもありますので、まずはそちらを見させて
何をどう作りたいかを学ばせるのも手かもしれませんが、いかがでしょうか。書籍も安くはないし
ある程度は興味が深まったタイミングで書籍を探すほうが挫折しにくいかと思います。
投稿2014/08/12 01:33
総合スコア28
0
ネットだけでCの学習となると、なかなか難しい部分があると思います。
ですから、本を利用するのは正しいでしょう。
ゲーム作成に関してですが、
趣味であれば確かにプログラミングする必要があると思いますが、
将来の夢(仕事としてやりたい)ならば、他の回答者さんがおっしゃる通り、プログラミングを学ぶ必要はゼロですね。
一応、どっちなのか聞いてみるとよいかもしれません。
制限はあるものの、プログラミングせずともゲームを作れるようなソフトもありますし、
そもそも、CとJSを学習しても、目的のゲームが作れない可能性あります。
(必要なのは__ゲームを作る__プログラミングの知識ですよね)
__「デバッグではじめるCプログラミング」__という書籍は、
Cを学ぶと同時に一本のゲームを完成させるというものです。
このような書籍やサイトを探すとよいかもしれません。CやJSをマスターしても、
ゲームを作るためにどうすればよいのかわからなくては元も子もないです。
(実際に、Cプログラマー全員がゲームを作れるわけではないはずです。
普段からゲームを作っている方でないと、厳しいところがあると思います)
おそらく現代の子供たちが言う"ゲーム"の定義はCGやBGMなどを用いるゲームを指すと思いますが、
そのあたりもちゃんと作るのでしょうか。
投稿2014/08/11 18:56
総合スコア14
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/08/22 13:08
0
ゲームを作るというのは、クリエイティビティーが求められる行為なので、
柔軟な思考が要ると思います。
なので、
本で学ばなければならない、C/JavaScriptでないといけない、好きにならないといけない
のような硬直した考えを捨てた方が良いです。
本が1種類だけなら、なぜその本を無条件で信頼しているのか謎です。
あらゆる本を読んで、その上でネットの情報「も」活用したほうが良いです。
また、どういうゲームを作りたいかにもよります。
本格的な今どきの3DCGのゲームなら、3Dの勉強が重要でしょうし、
ソーシャルゲームなら、C言語もJavaScriptも無しでサーバーサイドの
スクリプト言語でも書けます。
ノベルゲーなら、ゲーム用スクリプトエンジンを使えば作れます。
ツクール系とかもありますよね。
それを続けて行って、C/JavaScriptの必要性を感じたときにやれば良いです。
あと、何かの目的を達成するのに、その手段まで好きじゃないといけない、
というのは必須ではないと思います。
でも好きじゃないと続けるのは苦痛になりますね。
ゲームの何が楽しいのか、それとプログラミングが直結するような
訓練をするのが良いと思います。
投稿2014/08/09 01:34
総合スコア9394
0
私も中学生の頃ゲーム作りたかったです.結局プログラミングで現実を知りやめてしまいました.
私が言いたかったことをyamadaさんが言っていました.
どのようなゲームを作りたいのか聞いてみてはどうでしょうか.
例えば,RPGを作りたいと答えたのならばプログラミングというよりは設定を考えたいということですし,ぷよぷよなどどのように処理するかなどを考えたいとのことでしたらC言語やJavaでプログラミングの基礎を学ぶことはとても役に立つと思います.
投稿2014/08/08 16:39
総合スコア129
0
その少年は、ゲームを作るためにプログラム言語を学ぼうとしている…
彼はまさに私と同じような考えの持ち主だと思います。
実は私もゲームを作りたいがためにプログラム言語を学び始めた者です。
彼と違う点は、大学に入学してから、講義で勉強を始めたところですね。
私は本からではなく、人からの講義(+教科書)という形で勉強したので理解しやすかったですし、ゲームを作れるようになれるという実感を感じていたので勉強は全く苦ではありませんでした。教科書には課題があり、それを自分なりにコーディングし、思った通りの(課題として与えられた)動作をした時の達成感を何度も経験することで私はプログラム言語を勉強することがより好きになりました。
分からないことがあったら、教授や友人に質問したりしました。
また友人のコードを見て、「あっ、こんな書き方もあるんだ…」と感心する機会がありました。
プログラミングに関する話しができる人が身近にいることも大事だと思います。
文字のみだとどうしても苦痛に感じてしまって、プログラミングも好きになれないでいるのかも知れませんね。
正直、勉強をしないことにはプログラム言語の習得なんて出来ないんですから好きも嫌いも関係ないと思うんですが…
私もWebサイトより書籍見ながら派なので、Webサイトを見ながら勉強するのが嫌なのはなんとなく分かる気がします。
モニターが一枚でブラウザなんて開いたら
- エディタ小さい
- ブラウザ小さい
故に、スクロール多くてイライラ
という理由では?(これはあくまで私の感覚です)
この理由ならデュアルモニターにすれば解決なんですがね(笑)
投稿2014/08/20 09:12
総合スコア7
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/08/22 13:25
0
私がアルゴリズムを学んだのは、「RPGツクール」というゲームを作るソフトウェアでした。これにプログラミング要素あったっけ?って思う人もいるかもしれませんが、この中にはマクロ機能があり、
- Aというフィールドに、踏むと上に3歩進むマクロを設定
- Aの3歩上にフィールドBを設置
- Bというフィールドに、踏むと会話が始まるマクロを設定
といった感じにトリガーやアクションを設定していきます。はい・いいえの分岐を作ったりもでき、結果的にこれがアルゴリズムの勉強には役立ったと思います。簡単なオブジェクト指向の勉強にもなったかも。
FlashのActionScriptもわりとこの仕組みに似ています。RPGツクールで終わってしまうとゲーム開発は到底無理だと思いますが、きっかけにはいいかもしれません。
投稿2014/08/13 07:21
総合スコア81
0
いきなり動いているものをつくろうとしても出来ないもので、高い山を登るのを諦めて挫折します。
読む書籍のハードルを徐々に上げていくのがいいんじゃないかと思います。
私の場合、まずC/C++の猫でもわかるだとか優しいC++だとかから入りました。
そういう書籍は別にプログラムを書かなくても何を言っているのか理解できます。
もちろん実行しながら確かめたりもしますが、交互に見る必要はあまりありません。
そこから、独習C++などの少し詳細なものに飛んだりして、
自分の今まで本で学んだものは子供に掛け算を教える時にりんご何個で教えられたのと同じような例えであったんだと実感します。
詳細なC++の仕様の片鱗を味わいますが、いきなり読むよりはぐっとハードルは低くなっており
またこれらを理解することで自信にもつながります。
あとはもう概念的、理論的な書籍に移行したり、何か動くものをつくろうとしてみたり色々でしたね。
周りが教えてあげることも重要な要素です。書籍は一方通行なので、こちらの疑問には答えてくれません。
自分がどういうつもりでコードを書いているのかをレベルに合わせて解説すると、感覚もつかめていいんじゃないでしょうか。
投稿2014/10/20 16:25
総合スコア161
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/08/22 13:04