トップページgamedev
1001コメント423KB

タスクシステム総合スレ part7

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/05/07(木) 13:33:06ID:u3YZJr5E
タスクシステムについての議論、相談、質問、雑談などのスレです

part6 http://pc11.2ch.net/test/read.cgi/gamedev/1238725539/
part5 http://pc11.2ch.net/test/read.cgi/gamedev/1234977661/
part4 http://pc11.2ch.net/test/read.cgi/gamedev/1233459490/
part3 http://pc11.2ch.net/test/read.cgi/gamedev/1226199100/
part2 http://pc11.2ch.net/test/read.cgi/gamedev/1196711513/
part1 http://pc11.2ch.net/test/read.cgi/gamedev/1173708588/


・タスクと呼ばれる実装は、非常に多岐に渡ります
 古典タスクシステムについての話題は「>>2」と明示してください
 そうでない場合はカスタム版であることを明示してください

・人を憎んで言語を憎まず
0184名前は開発中のものです。2009/06/06(土) 20:10:44ID:yoFXLlZ9
>182
呼び出す関数が1000個あるということは、呼び出し元が1000箇所か。
頑張って呼び分けてくれwww

それとも、それら上位に一つ関数を作ってそこでコンテキストを受け取って、その中で1000個の
ステータスごとの関数を呼び分けるつもりなのかな?

まぁ、どっちにしてもお疲れさんってことでwww

>178
> 論理的に成り立ってない

wwwww
>182を見習えよwww
0185名前は開発中のものです。2009/06/06(土) 20:11:37ID:yoFXLlZ9
>178じゃ事故レスじゃねぇかwww
>180だwww

>180
>182を見習えよwww
0186名前は開発中のものです。2009/06/06(土) 22:32:13ID:DjY3tAB7
>引数君
君のやり方は認めるから
実際に作った上でどうメリット・デメリットがあったか語ってくれ
0187名前は開発中のものです。2009/06/06(土) 23:19:34ID:qdRKJ34Y
まあ、引数分けはメリットないし、そもそも無理かな?
boost::variantとかで、十分安全に出来ると思うし
そっちで妥協して。
0188名前は開発中のものです。2009/06/07(日) 02:05:11ID:W179Gh2Y
引数君のやり方に従ってコーディングされている
プログラムを逆に見てみたいなぁ。
引数のうちの型が一つ変わっただけで
一体どれだけの修正の手間が掛かって
それをどうやって解消しているのだろう?
今の世にあるコードリファクタリング機構じゃ歯が立たないよ。
ゲーム開発なんて仕様変更は日常茶飯事なのになあ。
0189名前は開発中のものです。2009/06/07(日) 02:08:38ID:3ohyM900
>>186
ID:xh4G82o4だけど

メリットというか引数を無くすことがデメリットであって
メリットなんてない
引数無しは引数がないことによるデメリットが生まれるだけでメリットは一つもない
上のほうで馬鹿が何も考えずに「1000個用意するの?馬鹿じゃね?w」的に煽ってるけど
ぶっちゃけ代わらない
絶対に関数の中で分岐が必要になる
もし、なくしたらバグが止まらない
仮に開発資料でステータスごとの初期化パラメータ一覧を出せといわれたら
この馬鹿は何を出すのか?多分こいつのプログラムはすべての処理を追いかけて
やっと1つのステータスの初期化状態がわかるといったプログラムになってる
恐ろしいほどダサいソースになってるはず
0190名前は開発中のものです。2009/06/07(日) 02:09:50ID:3ohyM900
>>188
タスクなんて使わないで組めばいいよ
タスクを使わないバージョンは前にこのスレでも書いてあげたんだけど
参加してなかったんなら暇なときに比較ソースをあげるよ
0191名前は開発中のものです。2009/06/07(日) 02:27:59ID:atKK+Qwb
>>188は、クラスのメソッドにも同じことをしているの?
0192名前は開発中のものです。2009/06/07(日) 02:36:39ID:cdPek4Sb
クラスのメンバ変数は、自クラス内でグローバルだからな。
0193名前は開発中のものです。2009/06/07(日) 08:40:48ID:mwRZn/c6
引数君って発言を見る限りゲームはおろかまともな規模のプログラムを完成させたこともなさそう。
ゲームなり何なりを完成まで作ってみれば、ここにいる人たちの発言も理解できるようになるんだろうけど…
0194名前は開発中のものです。2009/06/07(日) 12:11:24ID:aehXa9i/
>189
> 引数無しは引数がないことによるデメリットが生まれるだけでメリットは一つもない
> 上のほうで馬鹿が何も考えずに「1000個用意するの?馬鹿じゃね?w」的に煽ってるけど
> ぶっちゃけ代わらない

1000個の関数を呼び分けるのに、分岐を使わないのか。
スゲー、ミラクルテクニックだな。
0195名前は開発中のものです。2009/06/07(日) 12:15:45ID:aehXa9i/
あるいは、1000個の状態更新関数を、

 Task* t;

 Task_Update0( t, a, b );
 Task_Update1( t, b, c, d );
 ...
 Task_Update999( t, zxy, ztt, zbc );

と書いておいて、それぞれのTask_Update#(...)の中で、

void Task_Update0( Task* t, InfoA a, InfoB b )
{
  if ( t->state != 0 )
    return;
  // do something if state is 0
  ....
}

とかやるつもりなんだろうか?
0196名前は開発中のものです。2009/06/07(日) 12:20:43ID:kY8Q/AF4
>>194
いちいち煽らんでよろしい。
先のレスに「1000個の関数を呼び分けるのに、分岐を使わない」とは
一言も書いていない。
仮に1000の関数を省いたとしても、代わりに1000の分岐が生まれるんじゃ
余計に悪くなる、と書いている。

大体、1000の機能を提供するなら1000の関数が必要になるのは
当たり前。そこは問題じゃない。
0197名前は開発中のものです。2009/06/07(日) 12:28:41ID:m2Sg/1Dm
引数君って明らかに知障なんだが、どんなプログラムを書くんだろうか。

ブロック崩しぐらいでいいから書いたソース見てみたいな。
0198名前は開発中のものです。2009/06/07(日) 12:34:26ID:aehXa9i/
>196
オマエもバカのお仲間か。

> 仮に1000の関数を省いたとしても、代わりに1000の分岐が生まれるんじゃ
> 余計に悪くなる、と書いている。

引数の異なる1000個の関数を、分岐無しで呼び分ける方法を教えてくれ。
0199名前は開発中のものです。2009/06/07(日) 12:36:29ID:aehXa9i/
>196
あぁ、自分がこの点に粘着しているのは、引数クンの言う『異なるパラメータが必要な関数は
全て異なる関数として作る』という主張に沿っているだけだから。

引数でしかデータを渡したらいけない。グローバルなものは一切使わない。

まぁ、頑張って考えてみてくれよ。
0200名前は開発中のものです。2009/06/07(日) 12:39:07ID:QCME1dhS
ID:xh4G82o4 に聞きたいんだが

具体的に何を非難してるん?
下みたいな関数がアンチパターンだっつってんの?なんで?

void moveForward(SomeObject* obj);
void SomeObject::moveForward();

それとも単に古典タスクのTCB実装を非難してるん?
それなら>>1を読めよ
0201名前は開発中のものです。2009/06/07(日) 12:46:22ID:kY8Q/AF4
>>197
別に奴の主義は間違ってない。つーか、正しい。
ただ、今回のようなプログラムによる動的呼び出しには
組み込めないだけで。
だから、機知外の戯言的な受け取りは誤り。
0202名前は開発中のものです。2009/06/07(日) 12:58:44ID:m2Sg/1Dm
>>201
引数君はどう見ても知障。

あんたも、どうも言ってることがおかしい。
基地外同士、二人で仲良くやってなよ。
0203名前は開発中のものです。2009/06/07(日) 13:02:37ID:aehXa9i/
>201
> 別に奴の主義は間違ってない。つーか、正しい。

キチガイは、一匹見たら30匹は居ると思わないといけないのか?
0204名前は開発中のものです。2009/06/07(日) 13:16:25ID:m2Sg/1Dm
>>203
> キチガイは、一匹見たら30匹は居ると思わないといけないのか?

それだ!
0205名前は開発中のものです。2009/06/07(日) 14:11:07ID:kY8Q/AF4
まったく、
君らは、相手に何を伝えたいの?
自分の主張の正しさか?
それとも自分は負けてないってことか?
もうちょっと、大人になれよな。
まず、知障だの30匹だの
そういった言葉を外すところから始めるんだな。
0206名前は開発中のものです。2009/06/07(日) 14:18:06ID:aehXa9i/
>205
建設的な意見の一つも出せない池沼クンは、早くググって最適解でも見つけてきてください。
0207名前は開発中のものです。2009/06/07(日) 16:36:26ID:3ohyM900
ID:xh4G82o4だけど

>>200
>>144>>160

レス読まないで書き込んだのか>>144>>160が理解できないのか
どっちなんだマジで?
0208名前は開発中のものです。2009/06/07(日) 17:18:05ID:IBZXm9gK
>>205
今まで何本ゲーム作った?
0209名前は開発中のものです。2009/06/07(日) 17:23:00ID:IBZXm9gK
>>207
あ、お前も何本ゲーム作った?
0210名前は開発中のものです。2009/06/07(日) 18:20:04ID:aehXa9i/
>207
オマエは、呼び出し側の実装PGに、『こっちで作った1000個の関数を、状態に応じて正しく呼び分けてくれ』、と
伝えるのか。

スゲー厚顔無恥だな。
0211名前は開発中のものです。2009/06/07(日) 18:21:24ID:3ohyM900
>>209
カウントに入れるのも微妙なのあるが5本ぐれーか?
中途半端に関わったのも入れると10本だ
もう30前半
0212名前は開発中のものです。2009/06/07(日) 18:29:25ID:3ohyM900
>>210
ステータスが1000個あったらそうなるね
回避は不可能
どう組もうがこれの省略はできない

ステータスが1000個あって1000個発動関数がない(もしくは分岐がない)プログラムは
なにかと何かのステータスの処理を暗黙に共有してるとかいう恐ろしいことになってる
せめて1000個の発動関数の中で共通なら共通なりの関数を呼ぶべきだろ
この1000個は絶対に省略できない処理だし、しても意味がない
0213名前は開発中のものです。2009/06/07(日) 18:35:15ID:aehXa9i/
引数クンの前提は、

1. 更新関数に渡す情報は、全て引数で渡さないといけない

であり、さらに、

いわゆるタスク(でも何でもいい、内部状態を持つ独立した何か)の更新処理について、
2. 1000個の状態があったら、それぞれの状態にあわせて1000個の更新関数を作る
2a. グローバル変数やそれに準ずるものの使用は不可
2b. コンテキストでまとめて、一つの引数として渡すことも不可

と主張し、しかも

3. 1000個の更新関数は、最悪の場合全て異なった引数を取る
3a. 1000個の更新関数は、内部状態に応じて正しく呼び分けなければいけない
3b. >182によると、内部で状態を見て分岐するのも不可

であるそうだ。

これを見て、ID:3ohyM900=ID:xh4G82o4がキチガイでないと思えるヤツは、センス無いとしか
言いようが無い。
0214名前は開発中のものです。2009/06/07(日) 20:13:20ID:3ohyM900
>>213
いいよ
そのまとめで問題ない
全部あってるよ
0215名前は開発中のものです。2009/06/07(日) 20:47:03ID:gdjwroFS
>>46
タスク絡みで読む価値があるのは
三宅さんが書いた黒須さんインタビュー記事だけだな
なかなか痛快な内容
0216名前は開発中のものです。2009/06/07(日) 21:22:45ID:gdjwroFS
>>58
preemptiveでない、協調的なマルチタスキング(マルチスレッディング)は
貧弱ターゲット向けの組み込みシステム、OSではわりと使われてると思う

>>59
RTOSのキューも基本的に同じ。というかマルチタスキングするOSのレディキューを
説明するときの概念図は基本的にリング状になってる。
「条件がそろうまでは残る感じ」の周期タスクは別段珍しいものではない
0217名前は開発中のものです。2009/06/07(日) 22:30:17ID:cdPek4Sb
>>213 をみて、終には擁護していた奴も逃げ出したな。
0218名前は開発中のものです。2009/06/07(日) 22:55:45ID:cdPek4Sb
とくにありえないのが、
 >2b. コンテキストでまとめて、一つの引数として渡すことも不可
で、

・コンパイラの型チェックの機能が死ぬ
・関数がネストすることを考えると、上位関数の引数の数がとんでもないことになる
・プログラマは大概intな途轍もない数の引数を間違えずに指定する必要がある
・呼び出し元は、呼び出し先モジュールの内部構造に依存したコードを書かされる
 →モジュール化、カプセル化不可能
・モジュール化、カプセル化出来てないから、バグがあった場合、
 それが呼び出し元のバグなのか、呼び出し先のバグなのか判断が付かない。
・とりあえず、今まで生きてきたなかで、
 そんな仕様のプログラムなりライブラリなりは見たことない。
0219名前は開発中のものです。2009/06/07(日) 23:02:46ID:cdPek4Sb
matrix_add( &m1_1, &m1_2, &m1_3, &m1_4, &m1_5, &m1_6, &m1_7, &m1_8, &m1_9, &m1_10, &m1_11, &m1_12, &m1_13, &m1_14, &m1_15, &m1_16,
m2_1, m2_2, m2_3, m2_4, m2_5, m2_6, m2_7, m2_8, m2_9, m2_10, m2_11, m2_12, m2_13, m2_14, m2_15, m2_16,
m3_1, m3_2, m3_3, m3_4, m3_5, m3_6, m3_7, m3_8, m3_9, m3_10, m3_11, m3_12, m3_13, m3_14, m3_15, m3_16);

うげげげげげ。
0220名前は開発中のものです。2009/06/07(日) 23:28:53ID:mwRZn/c6
そーいえば取引先中小デベロッパのプログラマで
変数名からクラス名まで全てをアルファベット1文字で書くのがいたなぁ…
class A { int B; void D(float E) { ... } }; とか。
周りがどんなに説得しても「コンパイラにかかる負荷が…」どーのこーの言って
けっして屈しないらしい。

普通ならそんな偏屈プログラマ、クビにして終わりなんだが、その中小デベロッパの社長が
人情の人でクビはしない主義らしいからまだプログラマ続けてるらしいけど…

引数君を見てたら彼を思い出した。
0221名前は開発中のものです。2009/06/07(日) 23:59:01ID:aehXa9i/
>214
> いいよ
> そのまとめで問題ない
> 全部あってるよ

こんなキチガイと一緒に仕事したくねぇwwwww
0222名前は開発中のものです。2009/06/08(月) 00:40:53ID:cRHoD8w8
>>219
それはちがくね?
まず

・MATRIX管理構造体の何か?
・MATRIX構造体

の2つがあってMATRIX構造体のほうにまず入れる必要があるんだよね?
だったらまずMATRIX構造体にmX_Xの変数を入れる処理がどっかにあるんだよね?

ところがそのコードはいきなりMATRIX管理構造体に突っ込む想定をしてるじゃん
0223名前は開発中のものです。2009/06/08(月) 01:52:36ID:wcKZ/hFx
>>222
何わけの分からないこと言ってるんだ?誰か解読してあげて。

ともかく、例の彼のやりかただと、
例え構造体使ったとしても、関数呼び出すたびに構造体のメンバがバラバラになるんだから、
初めから構造体なんて意味ない。だからきっと使わないのだろう。

こんなかんじで。

some_function(
 ・・・
 &m1_1, &m1_2, &m1_3, &m1_4, &m1_5, &m1_6, &m1_7, &m1_8, &m1_9, &m1_10, &m1_11, &m1_12, &m1_13, &m1_14, &m1_15, &m1_16,
 m2_1, m2_2, m2_3, m2_4, m2_5, m2_6, m2_7, m2_8, m2_9, m2_10, m2_11, m2_12, m2_13, m2_14, m2_15, m2_16,
 m3_1, m3_2, m3_3, m3_4, m3_5, m3_6, m3_7, m3_8, m3_9, m3_10, m3_11, m3_12, m3_13, m3_14, m3_15, m3_16
 ・・・)
{
  ・・・
  matrix_add( &m1_1, &m1_2, &m1_3, &m1_4, &m1_5, &m1_6, &m1_7, &m1_8, &m1_9, &m1_10, &m1_11, &m1_12, &m1_13, &m1_14, &m1_15, &m1_16,
  m2_1, m2_2, m2_3, m2_4, m2_5, m2_6, m2_7, m2_8, m2_9, m2_10, m2_11, m2_12, m2_13, m2_14, m2_15, m2_16,
  m3_1, m3_2, m3_3, m3_4, m3_5, m3_6, m3_7, m3_8, m3_9, m3_10, m3_11, m3_12, m3_13, m3_14, m3_15, m3_16);
  ・・・
}
0224名前は開発中のものです。2009/06/08(月) 02:00:16ID:cRHoD8w8
>>223
違うってよく考えろ
matrix_addなんて関数があったらそれにmatrix構造体の
メンバを突っ込むなんてプログラムスタイルがねーんだよ
無意味なことをやってる
おそらくmatrix_addでそんなメンバが用意されてるなんてのは
アフォな開発者が多分で便利であろうとでも思って用意したアフォ関数だろ
(DirectXでもありだけどなw)

必ず、@「matrix構造体にセットする関数を実行」してから
A「matrix管理構造体にセット」する流れになる

自分のプログラムみてみろ絶対にそうなってる
なってなかったら無駄プログラム

そのスタイルも別にいいっちゃいいけど
構造体の中に内包するものが増えるたびに同じ引数を延々と書かなきゃいけなくなるぜ
0225名前は開発中のものです。2009/06/08(月) 02:00:41ID:wcKZ/hFx
>まず

>・MATRIX管理構造体の何か?
>・MATRIX構造体

>の2つがあって

まず、この時点で意味不明なんだが。C言語or日本語が不自由なの?
なんでmatrixに管理構造体が必要なの?キャッシュ?メモリプール?何を管理するの?
0226名前は開発中のものです。2009/06/08(月) 02:03:43ID:674pJASz
抽象化の苦手な人間はどこにでもいる
0227名前は開発中のものです。2009/06/08(月) 02:04:44ID:cRHoD8w8
>>225
matrix_addってことはmatrix構造体をなにかに登録してるんだよね?
って意味でmatrix_addがmatrix構造体の管理下にないって意味で書いた
0228名前は開発中のものです。2009/06/08(月) 02:05:18ID:wcKZ/hFx
>必ず、@「matrix構造体にセットする関数を実行」してから
>A「matrix管理構造体にセット」する流れになる

>自分のプログラムみてみろ絶対にそうなってる
>なってなかったら無駄プログラム

意味分からん。ひぃ〜〜助けて。
0229名前は開発中のものです。2009/06/08(月) 02:06:22ID:bPMhUw6r
前々前向きじゃないなあ・・・
時間があったらソース書くとか言った人も来てないのか・・・

0230名前は開発中のものです。2009/06/08(月) 02:07:19ID:wcKZ/hFx
>>227
アフォすぎて話にもならない。
普通 matrix_add っつったら足し算だろ。
0231名前は開発中のものです。2009/06/08(月) 02:23:19ID:bPMhUw6r
ゲームでいうタスクシステム(笑)って下手すると引数なし関数が
処理順で積まれてるだけとかそんなんでしょ?
OSのような物を設計するわけじゃないんだし、お互いの主張を言い合っても無駄なような。
むしろ言い合うってことはすでに2ケースに対する表現方法が違うんだし
その2方式の雛形にでもなるようなのを出してしまえばそれで終わる気がするんだが。
0232名前は開発中のものです。2009/06/08(月) 02:38:00ID:52Y54V93
取り敢えず引数君は>>218の指摘に答えを出したほうがいいよ。
MATRIX管理構造体が何かをまず皆に理解させたりするより絶対手っ取り早いよ?
0233名前は開発中のものです。2009/06/08(月) 05:42:45ID:ivE9pf3b
引数君は日本語の不自由な知障だから触らないほうがいいよ。
0234名前は開発中のものです。2009/06/08(月) 06:54:34ID:cRHoD8w8
>>230
え?w
ノードでも追加するのかと思ったw

でもだったら

matrix_add(&mat,足すヤツ);

でよくね?
別に型も誤魔化してないじゃん
俺の言ってること違ったっけ?
0235名前は開発中のものです。2009/06/08(月) 08:28:28ID:rJj1ChuH
なんで全部展開する話になったんだ?
0236名前は開発中のものです。2009/06/08(月) 08:54:31ID:RKbP76xN
>>235
オブジェクト指向のカプセル化とか隠蔽化を理解できないから。
0237名前は開発中のものです。2009/06/08(月) 08:55:36ID:nNQXSyqJ
>>220
お前騙されてて
オブファスケータ使った後のソースしか見せられてないんじゃね
0238名前は開発中のものです。2009/06/08(月) 21:32:36ID:wcKZ/hFx
>>234
それはそうなんだが、>>213を主張する通称引数君が現れてだな・・・。
>>219は反面教師的な意味で書いたコードなんだ。

ところで今思ったんだけど、
・すべての情報は引数で渡す
・構造体で渡すのは禁止
ってことは、処理に必要な情報は、一時的にでもすべてスタックに乗せる必要があるよな。
スタックオーバーフローとか大丈夫なんだろうか。
画像とか音楽とか、どうやって関数に渡すつもりなんだろう。
0239名前は開発中のものです。2009/06/08(月) 21:57:45ID:cRHoD8w8
>>238
>・構造体で渡すのは禁止
マジで?w
型を誤魔化すなとは言ったが・・・
でもまあ、ある意味それもアリなんだよね
ちょっと複雑な言い分になるけど
0240名前は開発中のものです。2009/06/08(月) 21:58:56ID:ivE9pf3b
構造体渡すの禁止とか言ってる奴、頭おかしいから触らないほうがいいよ。

そいつプログラム1行も書けない。
02412132009/06/08(月) 22:01:21ID:iv6sA5z4
>238
いやいや、幾らなんでもそれは無い…、と信じたい。

『コンテキストとしてまとめたモノがダメ』というのは、『そのコンテキストの中に処理に関係ない情報が
混ざっているのがダメ』という意味らしいから、matrix_addみたいなのは構造体そのまま引渡しできる…、
と信じたい。そして全てが引数で渡される必要があるからといって、全てを代入渡ししなければいけない
ワケではない…、と信じたい。参照渡しを禁止したりはしないだろう…、と信じたい。
0242名前は開発中のものです。2009/06/08(月) 22:23:28ID:dIDrAXVe
どうせこんな言動とプログラミング能力じゃ
社会人としてやっていけないから何も心配することはない。
放っておいても現実に被害を被る事なんてないさ。
そんな能力なんて無いよ。
0243名前は開発中のものです。2009/06/08(月) 23:50:28ID:cRHoD8w8
>>241
その通りだけど
なんか構造体渡し禁止になってるんだよね
余計なものを渡すのが駄目ってことなんだけどね
0244名前は開発中のものです。2009/06/08(月) 23:51:54ID:cRHoD8w8
>>242
そうやって人格否定から入って相手の発言を潰すくせどうにかならんの?
0245名前は開発中のものです。2009/06/09(火) 00:22:09ID:Klhc/GyU
引数君みたいな基地外、まともに相手するだけ無駄。

引数君みたいなプログラムが1行も書けない基地外の議論が
有意義だと思ってる時点で ID:cRHoD8w8も頭おかしい。

プログラムが1行も書けない自称プログラマはすみやかにお引き取りください。
0246名前は開発中のものです。2009/06/09(火) 00:33:30ID:cuID72xD
一行も書けないのはさすがにその人がクズw
0247名前は開発中のものです。2009/06/09(火) 00:33:30ID:MBMwWKo7
>>245
でも面倒臭い(かもしれないイメージが強い)以外に欠点ってないでしょ?
引数無しにするのは「面倒臭い」からでしかないでしょ?
これを諦めたプログラムってやっぱり制御不能になりやすいと思うんだよね

引数は大事だよ
無視してしまったらそもそも制御なんてしなくていいじゃん
ヘッダファイルもマスターヘッダ作って全部インクルードして
構造体も全部そこで定義してすべてをまとめたもん作って
インスタンスホルダーに対して読み書きって作り方ってもう駄目なのわかるじゃん

もうそろそろ汎用化できない処理と汎用化できる処理の判別がついてもいいころだと思うのよ
タスク信者もさ
いつまでもおっさんみたいにそこで足踏みしてるとスキルあがらないぜ
大事なのは書き比べて検証して自分なりの答えを出すことだと思うけどね
引数をなくしても結局手間は変わらないってすぐに理解できる
0248名前は開発中のものです。2009/06/09(火) 00:55:18ID:Klhc/GyU
>>247
> でも面倒臭い(かもしれないイメージが強い)以外に欠点ってないでしょ?

本当にあんた、プログラム、1行でも書けるのか?全然話にならないんだが。

> ヘッダファイルもマスターヘッダ作って全部インクルードして

あ!お前、このスレのpart3当たりに居た、総合ヘッダ君か。通りで言ってることがおかしいと思った。

このスレ、引数君と総合ヘッダ君が居なくなれば、まともなスレなんだろうけどな。
この二人の基地外のせいでレベルが大幅ダウンだよ。
0249名前は開発中のものです。2009/06/09(火) 00:56:29ID:7ufIYPer
つーか前向きになれw
0250名前は開発中のものです。2009/06/09(火) 01:27:18ID:GsDiyf17
引数君と総合ヘッダ君って同一人物じゃなかったの?
0251名前は開発中のものです。2009/06/09(火) 05:02:55ID:X2fb91bq
その人ってそれが駄目って言ってんじゃん
総合ヘッダ君じゃないんでは
0252名前は開発中のものです。2009/06/09(火) 05:42:54ID:Klhc/GyU
>>251
むむ・・そうかも知れん。だとしたらその件についてはID:MBMwWKo7に謝る。スマソ。
0253名前は開発中のものです。2009/06/09(火) 06:42:20ID:MBMwWKo7
>>252
お前、読解力0だろw
0254名前は開発中のものです。2009/06/09(火) 06:44:33ID:SajZ+q78
総合ヘッダ君は、何でもかんでもぶち込んだ総合ヘッダを使うしか方法を知らないから総合ヘッダ君
だったような気がする。公開用のヘッダファイルとプライベートヘッダに分ける方法を知らない。

その意味で行けば、>247も充分総合ヘッダ君と同等だと思うけどね。
0255名前は開発中のものです。2009/06/09(火) 07:07:38ID:MBMwWKo7
>>254
はぁ?
0256名前は開発中のものです。2009/06/09(火) 07:08:40ID:s3lVRyLD
お前らつまらん

0257名前は開発中のものです。2009/06/09(火) 07:26:35ID:7ptmeyyR
馬鹿よりましだろ
0258名前は開発中のものです。2009/06/09(火) 12:43:14ID:4xDwQnN3
人はこんなピンポイントで争えるんだぜ
0259名前は開発中のものです。2009/06/09(火) 19:38:02ID:CxjpUjFg
どっちにしても、
hoge_update( &hoge.x, &hoge.y );
はキモイ
0260名前は開発中のものです。2009/06/09(火) 19:46:12ID:CxjpUjFg
ああ、違った。こうか。
switch( hoge.state )
{
  case: hoge_update_01( &hoge.x, &hoge.y ); break;
  case: hoge_update_02( &hoge.state, &hoge.x, &hoge.y ); break;
  case: hoge_update_03(); break;
  default: break;
}
0261名前は開発中のものです。2009/06/09(火) 19:56:38ID:CxjpUjFg
言っとくが、嫌なのは面倒だからじゃないぞ。
切り分けが悪いからだ。
0262オガワン2009/06/09(火) 20:01:01ID:FN5e4dU7
俺は関数をほぼ使わないプログラミングを心掛けている。その場で
for分で回すようにしてる。
何システムと呼べはいいんだろうか?
関数ってジャンプだから使わないほうが見通しいいもんね。
どのテキストにも始めの方に「関数を使うべし」って書いてあると
おもうけど、それが大きな誤りだと思う。
0263名前は開発中のものです。2009/06/09(火) 21:40:16ID:SajZ+q78
いや、ワシはローカル変数ちゅうモンこそ悪じゃと感じとる。
全部グローバルの方が見通しがいいじゃろ。
0264名前は開発中のものです。2009/06/09(火) 22:20:42ID:peLfYxeX
>>261
いや、面倒だからだろ
仮に一瞬で記述してくれるもん(未来ツール?(笑))があったらわざわざ使わないだろ?

>>263
>>144の問題は気力と体力でぶっちぎる?
0265名前は開発中のものです。2009/06/09(火) 22:21:55ID:iIbCi5/r
お前らはカプセル化と言う言葉をしらんのか!
俺は、たった一つのクラスに総てをカプセル化するプログラミングが至高だ。
0266名前は開発中のものです。2009/06/09(火) 22:48:22ID:SajZ+q78
>264
いやいや、ジョークだからw

古老コボラーっぼく書いてみたんだけど、分かりにくかったか。
勘違いさせてスマン。
0267名前は開発中のものです。2009/06/09(火) 23:29:56ID:CxjpUjFg
>>264
>>260をみて、「状態で分岐する部分」と「状態遷移を行う部分」が別々のところにあるなんて、おかしいと思わないのか?
下手したら、会社間跨るぞ。
0268名前は開発中のものです。2009/06/10(水) 00:47:13ID:wAmVh6WC
>>267
何が言いたいのかさっぱりわからないのでちゃんと
宣言してから詳細な説明に入れよ
説明下手糞だなお前w

俺のはもっとわかりやすかっただろ?
・引数を使わないヤツは駄目だ
・型誤魔化してるヤツも駄目だ
って

お前、まず自分の出した結論をはっきりいえよ
0269名前は開発中のものです。2009/06/10(水) 00:53:06ID:XvIYvkVn
>>267-268
お前ら、基地外同士、仲良くやれよ。
0270名前は開発中のものです。2009/06/10(水) 01:06:36ID:UNU3sz5V
クラス化したら引数なくてもできるんじゃね
0271名前は開発中のものです。2009/06/10(水) 01:08:36ID:wAmVh6WC
>>270
何が?
0272名前は開発中のものです。2009/06/10(水) 02:41:39ID:zs5qgmGz
>>268
分かりやすくない。
お前のせいで認識の相違による100以上の無意味なレスが消費された。
お前の周りの人間のために言う。お前の文章に説得力は無い。
お前の文章は感情が篭り過ぎていてノイズだらけだ。
本当に技術者なら曖昧性の無い表現を使うよう心掛けろ。
あと、俺は偉そうだと思うか?
そう思える心がもしあれば自分の文章を見直してみろ。
句点の無いレスを抽出すれば大体お前のだ。

何度も言うが、お前の周りの人間が可哀想でならない。
0273名前は開発中のものです。2009/06/10(水) 04:21:23ID:JvEYnujc
配列さんごめんなさい。
連結リストでは遅すぎた。当たり前だけど。
動的に確保したバイト列を配列のように使ったら激速だった。
配列さんごめんなさい。
0274名前は開発中のものです。2009/06/10(水) 06:20:14ID:wAmVh6WC
>>272
ハイハイw
で?何が言いたかったの?w
0275名前は開発中のものです。2009/06/11(木) 21:14:27ID:TGzW5zV2
組み込み系の仕事してきたけどタスクシステムまみれで吐きそうだった
状態遷移をもっと綺麗に書く方法ってないの?
0276名前は開発中のものです。2009/06/11(木) 21:18:38ID:W/H+Ljkx
>>275
ないんじゃない?
これだけスレが荒れてもこれといった正解が無いんだし。
第一タスクシステム(笑)が発案された時代の若い層が今はおっさんになって
ある程度の決定権持ってる以上はそのおっさんの気持ち次第でしょ・・・
0277名前は開発中のものです。2009/06/11(木) 21:31:29ID:SdeQz0G7
>>275
http://naoyuki.hirayama.googlepages.com/smg.html

こんなんどうよ?
0278名前は開発中のものです。2009/06/11(木) 22:20:58ID:e4PlV843
>>275
引数通せよ
変数が変わる瞬間がわからないから頭痛くなるんだろ
糞関数に勝手に変数を変更させるな
必ず引数とおすように強制しろ
それだけですべてが解決する

問題はシステムや仕組みじゃない
馬鹿が勝手に書き換えるからだ
0279名前は開発中のものです。2009/06/11(木) 22:55:11ID:3+5xLdPK
>278
オマエは何も分かっちゃいないwww
0280名前は開発中のものです。2009/06/11(木) 22:59:24ID:e4PlV843
>>279
絶対そうだって
後は余計な仕組み一切なくして
switch caseでとにかくコピペでソースに一覧作ったほうが絶対管理しやすい
ちゃんと引数通せばステータスが引数に自然に組み込まれるから
見えない自体にはならないからお勧め
0281名前は開発中のものです。2009/06/11(木) 23:28:59ID:qshLfubq
なんかもう、可哀相に思えてくる
0282名前は開発中のものです。2009/06/11(木) 23:32:44ID:Bcb3dkoa
>>275
ちょっとびっくりだな…
組み込みシステムの開発ツールは沢山あるわけだが
それにタスクシステムなんて言葉は聞きなれないしな

どんなツールを試用・使用してどんな不満を持った?

比較的名前が知られてる開発ツールならたとえばZ○○Cとか。
社内で評価した人間いるんじゃないか?業界に身をおくなら
おそらく上の伏字は埋められるはずだ



0283名前は開発中のものです。2009/06/11(木) 23:48:41ID:Bcb3dkoa
>>276
5年近く前に足を洗ってしまったので最近のゲーム開発現場のこた知らんが
色んなモデルベースの開発ツールは当時からすでにあった。売り物、内製の物。
売り物はよく知らんが、内製のものはゲームワールド内の各種要素の状態遷移を
可視化・編集する各種ツール、プラグインを作ってた

そうしたものが実用に耐えないとして滅び、いきなりコードにべた書きする
原始時代に戻ったとは考えにくいんだが…

■ このスレッドは過去ログ倉庫に格納されています