ページ 11

【雑談】境界はどこか?

Posted: 2013年11月08日(金) 22:43
by jay
これは多分正しい答えなんて存在しない質問だと思いますので
思ったことを書いて下さればと思います

ズバリ! ゲームプログラミングにおいて
初級者~中級者~上級者
これらの境界は何だと思いますか?

個人的には

初級者:言語の基本的な使い方(変数、関数、配列、構造体)が分かる程度
     ゲームとしてはじゃんけんゲームやインベーダーなど極めて簡単な物を作れる程度

中級者:サンプルとか見なくてもある程度頭の中でアルゴリズムを作ることが出来る
     アクションやSTGなど、多くのオブジェクトを同時に動かすゲームを作れる

上級者:AI・ネットワーク通信・3Dプログラミングなど、高度な開発ができる
     時間と素材さえあればRTSとか通信機能付きの格闘ゲームとか普通に作れる


と此処まで書いて、むしろこれ境界じなくて一般的なイメージなんじゃないかと気付く・・・。
さて、皆さんは初級者・中級者・上級者は何を持って分かれると思いますか?
別に3段階での格付けにこだわる必要はありませんが、最近雑談スレを見かけないので立ててみました・・・w

お暇な人は書きこんで下さるとうれしいです

Re: 【雑談】境界はどこか?

Posted: 2013年11月09日(土) 08:07
by beatle
何を持ってたら・持ってなかったらなんて考えたことないですね。
もしかしたら、どこかに「初級者とは〜である」などという明確な定義はあるのかもしれませんが、僕の中では非常に曖昧な分類でしかありません。
ゲームプログラミングと一括りにしているが、ではネットワーク通信はバリバリ書けるけどAIは書いたことないや、というのは何級者なのか。細かい分野毎にも習熟度がありますから、全体平均としての級分類がどこまで役に立つのかも疑問の余地はあります。

Re: 【雑談】境界はどこか?

Posted: 2013年11月09日(土) 12:01
by usao
オフトピック
「ゲームプログラミング」という話ではありませんが,
単に「プログラミング」と観点で考えると… なんていうかな,

たとえば,”騙し絵”ってありますよね.
実世界ではありえない立体物がそれらしく描かれているやつ.それを見たときに
「○○が××だからこの部分がおかしいのだ」っていうのが具体的にわかるよりも前に
なんとなく「何か変だな」って思う.

コードでも同じように,上級者というか熟練者は それを見たときに
問題のある,あるいはありそうな箇所 というのを「ん?」って感じることができるような,
そんな感じの特殊能力?を習得されているような気がします.

Re: 【雑談】境界はどこか?

Posted: 2013年11月09日(土) 14:26
by beatle
オフトピック
usao さんが書きました: コードでも同じように,上級者というか熟練者は それを見たときに
問題のある,あるいはありそうな箇所 というのを「ん?」って感じることができるような,
そんな感じの特殊能力?を習得されているような気がします.
コードスメルっていうやつですね。特殊能力というか、大量のソースコード(良い物と悪い物)に触れると身につく気がします。
パッと見たときに同じようなコード片が何箇所にも出てくると怪しいと感じたり、識別子が意味不明だったり。

Re: 【雑談】境界はどこか?

Posted: 2013年11月09日(土) 17:36
by jay
>>beatleさん
むしろAIとかネットワーク通信とかのプログラミングスキルに点数を割り振って
点数の合計で実力を測るという方法も面白いかもしれませんね
まぁ、面白いだけで意味はなさそうですが(苦笑)

実際やるとなるとアルゴリズム単位と言うか、スキルやテクニックかなり細分化して採点することになりそうなので
かなり面倒そうですけれどね


>>usaoさん
手元にある書籍に同じようなことが書いてありますね
但し考え方は人それぞれで
人によっては「上級者とは短くて読みやすいコードを書ける人」と考える人もいれば
「上級者とは使い回しがしやすいコードを書く人」と考える人もいるとか

まぁ、結局正しい答えはないってことなんでしょうけど(苦笑)

Re: 【雑談】境界はどこか?

Posted: 2013年11月09日(土) 18:16
by softya(ソフト屋)
初心者・中級者・上級者は明確な分類は難しいでしょうね。皆さんが心のなかに有る主観的な分類がそれですって感じです。
私の印象だと自分で色々な環境構築できたら中級者かなぁ。と言っても基本的なプログラムを組むのには困らない程度にスキルは必要。
中級と上級は更に曖昧かと。

Re: 【雑談】境界はどこか?

Posted: 2013年11月09日(土) 18:36
by ISLe
わたしは、インベーダーは(特に現代において)極めて高度な物だと思います。

ひとつの見方としてインベーダーだけに絞って分類するとしたら
#以下タイトーのスペースインベーダーを本物と表記

初級者:
サンプルプログラムをコピーして動かして満足する。
本物も同じプログラムで動いていると考える。

中級者:
本物はサンプルプログラムと違うと気付き、サンプルプログラムを改造する。
自分で考えてプログラミングできるようになる。

上級者:
本物を調査、理解し、資料を元にしてそっくりに動くプログラムを作ることができる。
要求される仕様に応じてプログラミングできるようになる。

という感じですかね。

Re: 【雑談】境界はどこか?

Posted: 2013年11月09日(土) 22:32
by jay
>>softyaさん
ゲームプログラミングに限らず
プログラミングって技量を計るのが難しいですよね
それがPG・SE業界のブラックなイメージを生み出す遠因になっていると何処かで聞いたことがありますが

softyaさんの考えで行けば僕も一応中級者にはなれそうですね
C++でもC#でも開発出来ますしw


>>ISLeさん
インベーダーだけじゃなくて
それっぽい物を作るだけならそこまで難しくは無いけど
拘ればキリが無いほど奥が深いゲームってそれなりにありますよね
STGとか、僕がいま作っているローグライクゲームとかまさにそうかもしれませんね


むしろ
一般の人がそのジャンルに抱くイメージを違和感のないレベルで再現できるようになったら
ゲームプログラミング上級者、という考えもありかと思いましたが
それってもっと抽象的になりますね(苦笑)