セガが「ぷよぷよ」のソースコードを使ったプログラミング教材を公開 40
ストーリー by nagazou
修行は若いうちから 部門より
修行は若いうちから 部門より
セガとWebシステムの開発を手掛けるアシアルが「ぷよぷよ」をプログラミングの学習教材として提供する「ぷよぷよプログラミング」を開始したそうだ。
「ぷよぷよ」のソースコードを使ってプログラミングが学習できるとされる。サービスは26日から提供されており、会費等はなく無料で使えるとのこと。プログラミング学習環境「Monaca Education」上で使える教材で、ネットがあればOSに関係なく利用できる。利用者は、HTML5やJavaScriptで記述されたソースコードを書き写す作業(写経)を通して、実際に『ぷよぷよ』のプレイ画面を確認しながらコーディングができる。「ぷよぷよ」の製品版と同じ画像素材も使えるそうだ。
正確に書き写すことでコーディングのルールを知り、小さなミスを自分で直す能力などを身につけることで、プログラムに慣れていくことを目的としている。コードの入力量によって初級・中級・上級の3つのコースが用意されている模様(「ぷよぷよプログラミング」サポートページ 、GAME Watch、ITmedia、ファミ通.com)。
「ぷよぷよ」のソースコードを使ってプログラミングが学習できるとされる。サービスは26日から提供されており、会費等はなく無料で使えるとのこと。プログラミング学習環境「Monaca Education」上で使える教材で、ネットがあればOSに関係なく利用できる。利用者は、HTML5やJavaScriptで記述されたソースコードを書き写す作業(写経)を通して、実際に『ぷよぷよ』のプレイ画面を確認しながらコーディングができる。「ぷよぷよ」の製品版と同じ画像素材も使えるそうだ。
正確に書き写すことでコーディングのルールを知り、小さなミスを自分で直す能力などを身につけることで、プログラムに慣れていくことを目的としている。コードの入力量によって初級・中級・上級の3つのコースが用意されている模様(「ぷよぷよプログラミング」サポートページ 、GAME Watch、ITmedia、ファミ通.com)。
コンパイル無しにぷよぷよができます! (スコア:5, おもしろおかしい)
(他意はありません!!!!
Re:コンパイル無しにぷよぷよができます! (スコア:1)
コンパイルがなかったらぷよぷよは(以下略
Re: (スコア:0)
のーみそコネコネする必要もありませんか?
Re: (スコア:0)
今時コンパイルしなくても動くなんて珍しくもないと思ったがそういう話ではないのか。
もにょる (スコア:1)
> 正確に書き写すことでコーディングのルールを知り、小さなミスを自分で直す能力などを身につける
プログラミングってそういうものでしたっけ?
この考え方で身につくのは所謂本物のプログラマーではなくて下流の末端コーダー
Re:もにょる (スコア:2, すばらしい洞察)
訓練ってそういうもの。
走り込みやノックをみて「野球ってそういうものでしたっけ?」って言っているようなもん。
Re:もにょる (スコア:1)
個人的にこのコメントが一番納得した
野球選手の育成に特訓は有効だけど、特訓そのものは野球ではないということね
Re:もにょる (スコア:1)
ワシはベーマガで育ったので写経が悪いとは思わないな。
芸事でも守破離って言うし。
Re:もにょる (スコア:1)
ちょっと間違えたら動かなくなる、融通の効かない世界であることは理解して貰えるんじゃないかな。
Re: (スコア:0)
libc関数を他の言語系に一から作るなんてトレーニングはあったなあ
写経の効果 (スコア:0)
写経でループの括弧閉じとか意識できるんでしょうか。C言語で済まんが
for(i=0;in;i++){
for(j=0;jm;j++){
(数十行)
}
}
なんてのは、
for(){
}
で括られているのを意識しているから意味のあるコードで、
for(i=0;in;i++){
for(j=0;jm;j++){
(数十行)
を写経しているときには意味が分からんと思うのですが。
Re:写経の効果 (スコア:1)
後からfor文を勉強した時に、中カッコの価値に気付くのでも良いと思いますよ。
おそらくこの教材の意図している所では、プログラムの意味を理解させるレベルは大方捨てていると思います。
プログラミングはこういう作業で、正確性が必要で、コードを書き換えると結果の動きが変わる事がわかれば上々。
プラスアルファで学習者自身がプログラムリストから何か学ぶものがあれば花丸、ぐらいかと。
Re: (スコア:0)
プログラミングってそういうものでしたっけ?
この考え方で身につくのは所謂本物のプログラマーではなくて下流の末端コーダー
同意
問題集の回答一覧を写経しても
リレーションのないデータが蓄積されるだけで
知性の足しにはならないですね
# この学習方法ならプログラマーAIを作るほうが合ってそう
Re: (スコア:0)
置くべきぷよ位置が半透明で表示される、
あの練習モードを流用したのかな?
Re: (スコア:0)
初心者向けなんだから、最初はそんなもんじゃない?
いわゆるチュートリアルだって、普通はコピペから始めるだろ。
別にプロを目指すわけじゃないんだから、先ずはやってみれば良い。
そこから先に進むかどうかは、本人次第でしょ。
Re: (スコア:0)
プログラムはJavaScriptの打ち込みから始めたタイプだけど、
最初の最初は本に書いてあるサンプルコードを丸パクリして、それを少し改造して挙動変わることでプログラムの楽しさを覚えた。
いきなりプログラムの入門書から始めたら出力がつまらないし嫌いになるんじゃ?
Re: (スコア:0)
その思いは多分、プログラム学習の道に教育機関から入った人と、ゲーム作成とか自分で興味を持って始めた人とで異なる気がする。
やっぱりゲーム開発者とかは後者が多いんではないかな。
Re: (スコア:0)
動作・ライセンスに問題無いなら素直にコピペしてくれる方が・・・
あなたの職場にもいませんか?
無駄に改変してバグ仕込む、ライセンスに問題あるのを理解しているので改行や変数名などを変えて爆弾を仕込む人々
Re: (スコア:0)
とあるAPIが使いたくて検索して見つけたAPIサンプルをコピーして、
動くの確認してから自分用に書き換えようと思ってたらなぜか動かない
なぜかlを1にしてあったり、Oを0にしてあった
サンプルとして公開してるくせになんでこういう罠を載せてあったんだろう
理解できない。俺はAPIの動作サンプルがほしかったのであって人のコードのデバッグをしたかったわけじゃない
Re: (スコア:0)
書籍をOCRしたものだった可能性。
Re: (スコア:0)
APIがなんたるかを理解せずコピペする馬鹿だからじゃね。
要求される引数の型の違いも判らずコピペするだけのやつが動かないって言ってもね。
ソース読むなら (スコア:0)
これはこれ用途に書き下ろしたソースだと思います
実際に動くゲーム読むならgoogleのPACMANもいいかもしれない
読めるようにするのが大変だが(整形とか)
Re: (スコア:0)
同じく、実際のゲームはもっと複雑なので、これ用に作られたものだと思う。
実際は、コンパイル時代から代々継ぎ足されてきた秘伝のソースでできているんじゃないかな。
Re: (スコア:0)
秘伝のソースは、一か月で元のソースが無くなります。
Re: (スコア:0)
ぷよぷよの処理論理自体は簡単だから、随時書き直してると思う。
改版でルールがかなり変わるから、過去のコードを維持する理由は殆ど無いと思う。
一寸動く分だけ写経を繰り返す (スコア:0)
だといいな。小さな喜びが積み重なって、言語嫌いにならないかも知れない。
マイコンBASICマガジンの思い出 (スコア:0)
あの頃,ゲームの入手手段といえば,雑誌の紙面に印刷された「プログラムリスト」であった。
Re:マイコンBASICマガジンの思い出 (スコア:1)
大量の意味不明のDATA文がぁぁぁ
Re:マイコンBASICマガジンの思い出 (スコア:2)
DATA文でも、テキスト画面の逆スクロールのためにブロック転送するZ80のマシン語は暗記しちゃってたPC-6001ユーザー。
Re: (スコア:0)
MSXFANの思い出
大量の意味不明のGraph文字が!
テトリスが定番 (スコア:0)
あらゆる言語・プラットホームで大抵テトリスだれか作ってるよね
なかにはマクロでテトリス作ってる人もいる
正確に書き写すのも勉強にはなるのだろうが (スコア:0)
なにもないところから「ぷよぷよ」が動くところまでコツコツと自分で考えて作っていくのが醍醐味じゃないのか?
Re: (スコア:0)
そう思う人が勝手にそうすればいいだけじゃないかな
この教材を使うのは義務じゃないんだし
javascriptは辛い (スコア:0)
教えるためには使いにくくてね。今までも色々扱ってきたけど、数年前からpython一辺倒です。
文部科学省もそう考えているようです。教員研修用教材 [mext.go.jp]
JavaScript、VBA、ドリトル、swiftもありますけどね。
Re: (スコア:0)
Pythonを教えるとき、ブロックの始まりを示すコロン(:)について、どう教えますか?
いや、そういうもんだ、というしかないのは分かりますが、:がどうして必要なのか、無いと何が困るのかが説明できなくて釈然としていません。
# ほかの言語でもそんなのはたくさんあるからPythonだけの問題じゃないけど
Re: (スコア:0)
多分それもあって「写経のススメ」になった気がする。
JSはCと何らかのオブジェクト指向言語の知識があれば文法理解には困らず、
組み込み関数はあんま良くないけどライブラリやAltJSで利用幅が広がる、
そんで入門者がやりたそうなことはHTML/CSSの知識も要る、てな感じでしっくり来ないのはなんかわかる。
Pythonは教育用に妥当だと思うけど、実務寄りなんだよね。あとC文法圏からは外れていて他言語の習得の足掛かりにはなりにくい。
ゲームを作りたい子に与える言語として、言語も実行環境も汎用的で、コード編集から実行までのオーバーヘッドが少ないものとなると、
満点ではないけどJavaScriptが候補に挙がるのは苦渋の選択というか、悩ましさを感じる。
Re:HTML5アプリ開発ツールMonacaを使って「ぷよぷよ」のプログラミングに挑戦しよう (スコア:1)
ソースコードはこちらからどうぞ。
http://puyo.sega.jp/program_2020/ [puyo.sega.jp]
「ぷよぷよ プログラミング」ソースコード一式というリンクから取得できます。
写経しやすいようにPDFで提供されています。Monacaを利用されないとのことで動作環境はご用意ください。
Re: (スコア:0)
> あと写経はviでするからスパッとソースコードだけ出してもらえます?
プログラマなら、ぷよぷよぐらい自分で書けるでしょ
書けないなら素直にツールをインストールして勉強してください
Re: (スコア:0)
デバッガーアプリについては
パソコン上のみで「ぷよぷよ」を動かす場合は不要です。
と書かれているので、その条件内でならインストールを強制されるのはChromeかEdgeとかいうやつだけらしいですよ。