タスクシステム総合スレ part7
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2009/05/07(木) 13:33:06ID:u3YZJr5Epart6 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」と明示してください
そうでない場合はカスタム版であることを明示してください
・人を憎んで言語を憎まず
0117名前は開発中のものです。
2009/06/05(金) 00:25:08ID:LSp/f/Ff元の話と明らかに関係あるんだけど…
少しは脳みそ使ったほうがいいと思うぞ。
0118名前は開発中のものです。
2009/06/05(金) 00:27:16ID:/7CplWfLprintfやmallocの話はどこいったんだよ
そうやって関係ことがわからないから
実装してもまったく意味のないものに力を注ぎ続けて後戻りできなくなっちゃったんじゃないの?君?
ダサいよね
たった1回の間違えを認めないからここまで無意味なことに人生費やして虚しくない?
君のやってることってまったく意味がないんだよ
0119名前は開発中のものです。
2009/06/05(金) 00:28:20ID:iV7/c5CjGUIはいいけどここはゲームのタスクシステムの話ですよ
0120名前は開発中のものです。
2009/06/05(金) 00:28:53ID:2tFnphs7スクリプトの入出力を固定化して単純化するところにミソがある。
0121名前は開発中のものです。
2009/06/05(金) 00:32:34ID:/7CplWfLその「たとえば」って何につながってるのかさっぱりわからないんだけど?w
0122名前は開発中のものです。
2009/06/05(金) 00:33:35ID:LSp/f/Ffprintfやmallocをサービスとして抽象化して話してる例だが…
抽象的な話が理解できるようになるのは小学校3年生ぐらいからで
坊やにはまだ早かったのかもな。
0123名前は開発中のものです。
2009/06/05(金) 00:35:46ID:/7CplWfL>printfやmallocをサービスとして抽象化して話してる例だが…
は?なんかよくわからない話はじめたけど
なに?サービスって?なんのメリットがあって最終的な目的は何でそういう話をはじめたの?
まず、目的をいってくれない?
君の気まぐれで振る話題についていくほど暇じゃなくて
最終的に導き出したい答えをまずいってくれない?
0124名前は開発中のものです。
2009/06/05(金) 00:37:59ID:2tFnphs70125名前は開発中のものです。
2009/06/05(金) 00:38:06ID:LSp/f/Ff坊やは寝る時間だよ。
オネショしないように寝る前にトイレいくんだぞ。
おやすみ。
0126名前は開発中のものです。
2009/06/05(金) 00:42:25ID:/7CplWfLハハ、だっせw
逃げたよw
0127名前は開発中のものです。
2009/06/05(金) 00:47:01ID:/7CplWfLお前のこれまでやってきたことはなんの意味もない
これまでの人生もいっしょに意味がない
このレスのやりとりでもわかるように
全然脈絡のないことに気まぐれで飛びつくから最終的な答えをだすことができない
なぜそういう行動をとったのか?なぜそういう言動をしたのか?
すべてに理由がない
目的も理由もないから何をやっても無駄
たまたまやったことのメリットを探して他の人に触れ回る
ポリアンナ症候群の末期だな
ぶっちゃけお前技術者向いてないからw
一つ一つ積み上げていった人間に当たるとちっとも歯が立たない
お前のやってきたことなんてしょぼいんだよw
0128名前は開発中のものです。
2009/06/05(金) 00:52:53ID:2tFnphs70129名前は開発中のものです。
2009/06/05(金) 01:03:47ID:LSp/f/Ff自分の理解できない話なら無理にからまなければいいのに。
「は?理解できないんですけど」って自分の頭の悪さをわざわざ言いふらさなくても…
0130名前は開発中のものです。
2009/06/05(金) 02:09:43ID:sqtpmwaVつか過疎ってたように見えたけど意外と人いたんだな
0131名前は開発中のものです。
2009/06/05(金) 02:16:42ID:ykmxa4wCワロタ
0132名前は開発中のものです。
2009/06/05(金) 03:59:45ID:426pRQd2普通は言われたら傷つく言葉なのに
この子に言われると逆ににやけてしまう不思議
0133名前は開発中のものです。
2009/06/05(金) 04:26:28ID:GOddi5PD0134名前は開発中のものです。
2009/06/05(金) 07:26:02ID:ruoJTJVPフックするかロギングでいいじゃん。
「同じ引数を与え続ける限り、その関数の動きは変わらない」
故に
「引数を変えたとき、その関数の動きは変わる」
故に、関数は引数によって動きを制御すべきだ、
という論旨で、
即ち、引数によって変更を知ることができる。
ということが言いたいのはわかるけど
凝集度と疎結合を考えたとき、
引数は依存性を高める訳で、
あらゆることを常に引数でコントロールしなければならず、
その依存性を引き離せない。
独立したオブジェクトの自立駆動を考えるなら、
コンストラクト時の引数によって動きを制御し、
その後の引数に頼るべきではないと思うけど。
0135名前は開発中のものです。
2009/06/05(金) 08:34:06ID:PGMss8TE引数以外のアクセスを制限するためにやってんだから
こうすることで引数以外の心配をせずに済む
関数の入力と出力もはっきりする
これがデメリットとか言っちゃうの?(笑)
面倒臭いから引数通してないだけだろお前のプログラムって
0136名前は開発中のものです。
2009/06/05(金) 09:34:27ID:5cBLdNdXお前1人だけレベルが桁違いだわマジで
0137名前は開発中のものです。
2009/06/05(金) 11:30:37ID:iLixPBxc本当に彼は厨とキチガイを引きつける天才だな
0138名前は開発中のものです。
2009/06/05(金) 11:37:24ID:iV7/c5Cjとか工夫すればいいし、引数にこだわる人は頭固すぎ、あと挑発に乗りすぎ
みなさん大人げない
0139名前は開発中のものです。
2009/06/05(金) 11:48:46ID:ykmxa4wC> 本当に彼は厨とキチガイを引きつける天才だな
言い得て妙だな。まあ、氏は東大の大学院に行ける程度の天才(天災?)ではあるんだろうけど。
0140名前は開発中のものです。
2009/06/05(金) 12:57:27ID:PGMss8TE0141名前は開発中のものです。
2009/06/05(金) 20:24:30ID:q/V6VtMhknuth御大が本にしたら、アンチ派も転向したりするのかな?
0142名前は開発中のものです。
2009/06/05(金) 21:52:07ID:k3aCK9Tq引数中心のメリットはそこじゃなくて、
型やモジュールの直交性が高まるところにあると思う
なのでオブジェクトを引数に渡すのは上層以外はなるべく避ける
お互いの構造を詳しく記憶しておく必要のあるJavascriptやActionScriptは苦痛だなー
0143名前は開発中のものです。
2009/06/05(金) 23:54:01ID:2tFnphs7GetMessage( &dosv, &x86, &win32, &process, &thread, &queue, &msg, NULL, 0, 0 );
めんどくせーし、可読性も落ちる。バグの元だな。
0144名前は開発中のものです。
2009/06/06(土) 00:12:45ID:xh4G82o4>なのでオブジェクトを引数に渡すのは上層以外はなるべく避ける
は?
単純に引数無しの関数が山盛りのソースでさ
unko();
↑これで呼び出し側から何がわかるの?
この関数を実行することでどの変数を弄る可能性があるのかなんにもわからないじゃん
問題は変更するデータがわからないことなんだよ
プログラムを組む上でこれ以上困難なことってあるか?
この関数を実行することで変更されるデータがまったくわからないんだぞ
何が変更される?
どの変数がバグってる?
すべてがわからない
これを駄目だと思わない脳みそがすでに駄目だろお前等
0145名前は開発中のものです。
2009/06/06(土) 00:26:58ID:0TMMUW3y引数がないことに対するデメリットはわかります。
でも、あらゆる関数を引数必須にした場合、
classや状態すらつくれないですよね?
あと、
引数必須だとスレッドとか使えないですよ?
スレッドではなくても、
サウンドのストリーミングとか、
割り込みとかはどうするのでしょう?
そういうのはやっぱりなしですか?
何が変更されるか、どの変数がバグっているか
は引数がなくてもオブジェクトの凝集度を高めればわかりますよ。
0146名前は開発中のものです。
2009/06/06(土) 00:38:38ID:xh4G82o4そんなの必要になるのって限られたところだけだろ?
しかもなんで必要かってもとのシステム作ったやつが引数を頭に入れてねぇから
引数が入らないだけで別に自分で作ったもんなら引数付けられるんだから問題ないじゃん
全体の1%未満の例外もってきて反論してんなよ
引数使えるところは引数つけろよ
だからお前馬鹿だっていうんだぞ
だいたいそーゆー部分はライブラリなりヘルプもちゃんとある部分なんだからいいんだよ
(できればやってほしくはないが)
問題は自作でヘルプも満足にねーのにそんな構造にしちまうところだ
0147名前は開発中のものです。
2009/06/06(土) 00:44:48ID:IEIMR7tlグローバル変数ってことは、プロセスに一つしかないのだから、何が変更されるのかは明確だ。
0148名前は開発中のものです。
2009/06/06(土) 00:46:22ID:xh4G82o4いや、そういうギャグはもういいからw
0149名前は開発中のものです。
2009/06/06(土) 00:49:09ID:IEIMR7tl必要ないなら削った方が良い。
0150名前は開発中のものです。
2009/06/06(土) 00:54:53ID:xh4G82o4はぁ?関係ないだろ
chinko.x = 20;
chinko.y = 30;
chinko.z = 40;
chinko.a = 50;
chinko.b = 60;
unko();
とかやって構造体chinkoがunko関数の中身に影響があったら自由度云々に関しては
引数なくても中身に影響あるじゃん
意味不明なこと言ってんじゃねぇよ
ちなみに俺の希望としては
unko(&chinko);でなくてunko(x,y,z,a,b);とできるべきだと思ってる
0151名前は開発中のものです。
2009/06/06(土) 00:58:05ID:5AeUfGm+const修飾子すら知らなさそうだな
本当、話にならないような基地外だわ、こいつは
0152名前は開発中のものです。
2009/06/06(土) 00:58:58ID:IEIMR7tlそんなプログラム書く人居ないから問題ない。
全体の1%未満の例外もってきて反論しないでほしい。
0153名前は開発中のものです。
2009/06/06(土) 01:00:31ID:IEIMR7tl>unko(&chinko);でなくてunko(x,y,z,a,b);とできるべきだと思ってる
>>143
0154名前は開発中のものです。
2009/06/06(土) 01:02:48ID:xh4G82o4>>144
0155名前は開発中のものです。
2009/06/06(土) 01:05:51ID:IEIMR7tlお前なんかよりはマイクロソフトの社員の方が頭いいからな。
0156名前は開発中のものです。
2009/06/06(土) 01:07:34ID:WOc4dWi00157名前は開発中のものです。
2009/06/06(土) 01:09:57ID:xh4G82o4なってるじゃん
CreateWindowなんてすげー量の引数じゃん
RegisterClassも強引に引数1つにしてるけどぶっちゃけ何が設定足りないのかわかりずらいだけだよね
0158名前は開発中のものです。
2009/06/06(土) 01:13:57ID:IEIMR7tl引数が100個とか200個とかになるぞ。4x4マトリックスですら16個もメンバあるのに。
引数の指定ミスったらどうするんだよ。
オブジェクトや構造体はポインタでやりとりするのが普通だし、
OSのリソースはハンドルでやりとりする。
ファイルにはファイル名がある。
お前みたいなクズにだって親が名前を付けてくれていて、
普段はそれつかってコミュニケーションとってるだろ。
それと同じだ。
0159名前は開発中のものです。
2009/06/06(土) 01:14:44ID:IEIMR7tlでも一度作ったら、あとはハンドルでやり取りするだろ。
0160名前は開発中のものです。
2009/06/06(土) 01:18:28ID:xh4G82o4徹底すればプロジェクトでバグ数が1000とか4桁は
絶対にいかないようになるぐらい効果絶大俺オススメ
単純だけどプロの技術ですよ
まあ、これが一番大事かなぁ
後は、引数を通してはいるけど型を誤魔化してるってのもやらないほうがいいぞ
たしかに実装はほんのちょっと楽にはなるが
実行してみるまで何がくるのかわからないプログラムになってしまうぞ
ということはいくらコードレビューなんてやろうともソースを丁寧に整備しようと
そのプログラムは動かしてみるまでどうなってるのかほとんどわからない
プログラムになってしまう
汎用性をつけるっていってもそりゃMSが提供するライブラリならわかるけど
個人が作る関数にそんなもんいらないからはっきりいってやらないほうがいい
>>158
>引数の指定ミスったらどうするんだよ。
コンパイル時にエラーが出るんじゃない(笑)
0161名前は開発中のものです。
2009/06/06(土) 01:23:47ID:IEIMR7tl>コンパイル時にエラーが出るんじゃない(笑)
普通ならコンパイルエラーが出る筈だが、お前のやり方だと、
型として纏まってた筈のデータをintやcharに分解して引数で渡すから、
コンパイラの型チェックを殺してしまう。
0162名前は開発中のものです。
2009/06/06(土) 01:26:02ID:QPxFjGuq・
・
・
{
hoge(x1, x1, x3);
}
0163名前は開発中のものです。
2009/06/06(土) 01:26:24ID:C+Rvd4dM現代版の最強でない、シンプルなタスクシステムの代替アルゴリズムをみんなで考えろよw
最強を考え出すと喧嘩になるから
0164名前は開発中のものです。
2009/06/06(土) 01:28:49ID:YPKwIylLあぁ、標準入出力やヒープの概念を理解してないから
なんでグローバル変数と関係があるか、すらわからないか
0165名前は開発中のものです。
2009/06/06(土) 01:29:30ID:C+Rvd4dMそういうあおりはいらんというに
0166名前は開発中のものです。
2009/06/06(土) 01:38:04ID:C+Rvd4dM0167名前は開発中のものです。
2009/06/06(土) 01:44:47ID:IEIMR7tlシンプルなタスクシステムをお求めなら、型ごとにリストを持つスタイルがお勧め。
0168142
2009/06/06(土) 02:01:22ID:LkHpnJAV全く噛み合わないレス返されても困る。
俺はそんな所にふれてないしな
それともプリミティブとオブジェクトの区別もつかない人?
0169名前は開発中のものです。
2009/06/06(土) 02:06:35ID:5AeUfGm+0170名前は開発中のものです。
2009/06/06(土) 02:08:38ID:C+Rvd4dMこの際明確な答えを出す方がいい。
リスト、キュー、ソートなどなどのようなのに加えてしまえばいいだけ。
あとは自分なりにそこから派生として考えればいいだけ。
タスクシステムというのだって根本的な部分は動的に変化する
オブジェクトを効率よく管理するためのアルゴリズムでしかないんだし
0171名前は開発中のものです。
2009/06/06(土) 02:21:46ID:YPKwIylLまともな話をこのスレで初めてもおつむの弱い子たちのコンプレックスの餌食になるだけだ。
まぁ前スレでフルボッコにされたアンチタスクがゲ製作技術の別スレに逃げ出して
迷惑かけたみたいだから、逃げ出さない程度に加減して遊んでやろう。
0172名前は開発中のものです。
2009/06/06(土) 02:23:06ID:C+Rvd4dMアンチとは失敬な
名前が嫌いなだけで同様の手法は必要だと思ってるぞw
0173名前は開発中のものです。
2009/06/06(土) 09:36:40ID:qdRKJ34Y言っていることは、非常によくわかる。
これは、他人が作ったソースを読むときに
出てくるんであって、俺ソースのメンテナンスだけでは
わからない。
0174名前は開発中のものです。
2009/06/06(土) 10:57:01ID:yoFXLlZ9相変わらずの無能っぷりでワロタwwwww
0175名前は開発中のものです。
2009/06/06(土) 11:05:51ID:yoFXLlZ9ちょっとここでいわゆる『タスク』という言葉を使わせてもらうが、まぁ個々に内部状態を保持した
何かの動作単位だと思ってくれればいいよ。
タスクの内部の状態によって必要なパラメータが変わる場合は、その都度引数を変えた関数を用意
して、呼び出し側が『タスクの内部状態を参照』して呼び出す関数を変更するんですねwww
さすが、引数クンのそのストイックさにシビレル、アコガレルゥwww
0176名前は開発中のものです。
2009/06/06(土) 11:21:09ID:yoFXLlZ9×呼び出し側が『タスクの内部状態を参照』して
○『呼び出し側がタスクの内部状態を参照』して
こっちの方が通りがいいな。
さあ、引数クンのストイックさにあこがれて引数でパラメータを渡そうと思ってるオコチャマは、
ナニが問題なのかよ〜く考えてみようw
0177名前は開発中のものです。
2009/06/06(土) 15:47:20ID:LkHpnJAV> タスクの内部の状態によって必要なパラメータが変わる場合は、
問題になるほどこういう状況が発生していいのだろうか…?
それはタスクシステムを使った場合においても破綻するぞ
柔軟性の無い思考を否定するために自らが根本を間違えてしまうのはどうなの?
0178名前は開発中のものです。
2009/06/06(土) 17:14:27ID:yoFXLlZ9例) 状態Aでは外部情報a,b,cを参照して、状態Bでは外部情報a,c,d,eを参照する
なんていうのは、AI作ってれば(AIでなくとも)よくあることだよ。
その際、引数クンはそれぞれ異なった引数を持つ状態更新関数
UpdateWithStateA( a, b, c )
と
UpdateWithStateB( a, c, d, e )
を作成して、外から状態に応じて呼び分けるんだろ。
なにせ『引数しか使っちゃダメ』で、しかも『不必要な情報を引数で渡したらダメ。コンテキストをまとめて
渡すなんてもってのほか、誰がその情報を変更したか分からなくなるよ!!!』なんだからwwwww
0179名前は開発中のものです。
2009/06/06(土) 17:24:03ID:5AeUfGm+これなのだが、分からなくなっていいと思うのだが。
引数君は本当にプログラム1行でも書けるんだろうか…。
0180名前は開発中のものです。
2009/06/06(土) 17:42:40ID:LkHpnJAV論理的に成り立ってない
君はただの勝ち馬乗りだよ
間違いに間違いでの応酬は無意味
0181名前は開発中のものです。
2009/06/06(土) 17:45:47ID:LkHpnJAV初期のスレからずっとある
議論にならないのもよくわかる
しかもそういう奴に限って後出しのために含みを残している
これではコードも示せない
0182名前は開発中のものです。
2009/06/06(土) 19:08:52ID:xh4G82o4>>178
それであってるよ
ステータスが代わるなら呼び出す関数を替える
仮に
Q.ステータスが1000個あったらどうするか?
A.関数を1000個(および必要なもの)すべてを用意します(使いまわしは絶対にしません)
でFA
仮に引数を共通化して
//1つ目の引数はステータス、2つ目の引数はステータスに必要なデータの束
changeState(int state,void* date);
みたいなもんを使っても内部でswitchかそれに代わるものが絶対に必要になるから
こっちのがいい
もし、こうなっていない・これを面倒だと思うプログラムがあったら
それは非常に危険なコードを抱えてる可能性がある
0183名前は開発中のものです。
2009/06/06(土) 19:11:05ID:xh4G82o40184名前は開発中のものです。
2009/06/06(土) 20:10:44ID:yoFXLlZ9呼び出す関数が1000個あるということは、呼び出し元が1000箇所か。
頑張って呼び分けてくれwww
それとも、それら上位に一つ関数を作ってそこでコンテキストを受け取って、その中で1000個の
ステータスごとの関数を呼び分けるつもりなのかな?
まぁ、どっちにしてもお疲れさんってことでwww
>178
> 論理的に成り立ってない
wwwww
>182を見習えよwww
0185名前は開発中のものです。
2009/06/06(土) 20:11:37ID:yoFXLlZ9>180だwww
>180
>182を見習えよwww
0186名前は開発中のものです。
2009/06/06(土) 22:32:13ID:DjY3tAB7君のやり方は認めるから
実際に作った上でどうメリット・デメリットがあったか語ってくれ
0187名前は開発中のものです。
2009/06/06(土) 23:19:34ID:qdRKJ34Yboost::variantとかで、十分安全に出来ると思うし
そっちで妥協して。
0188名前は開発中のものです。
2009/06/07(日) 02:05:11ID:W179Gh2Yプログラムを逆に見てみたいなぁ。
引数のうちの型が一つ変わっただけで
一体どれだけの修正の手間が掛かって
それをどうやって解消しているのだろう?
今の世にあるコードリファクタリング機構じゃ歯が立たないよ。
ゲーム開発なんて仕様変更は日常茶飯事なのになあ。
0189名前は開発中のものです。
2009/06/07(日) 02:08:38ID:3ohyM900ID:xh4G82o4だけど
メリットというか引数を無くすことがデメリットであって
メリットなんてない
引数無しは引数がないことによるデメリットが生まれるだけでメリットは一つもない
上のほうで馬鹿が何も考えずに「1000個用意するの?馬鹿じゃね?w」的に煽ってるけど
ぶっちゃけ代わらない
絶対に関数の中で分岐が必要になる
もし、なくしたらバグが止まらない
仮に開発資料でステータスごとの初期化パラメータ一覧を出せといわれたら
この馬鹿は何を出すのか?多分こいつのプログラムはすべての処理を追いかけて
やっと1つのステータスの初期化状態がわかるといったプログラムになってる
恐ろしいほどダサいソースになってるはず
0190名前は開発中のものです。
2009/06/07(日) 02:09:50ID:3ohyM900タスクなんて使わないで組めばいいよ
タスクを使わないバージョンは前にこのスレでも書いてあげたんだけど
参加してなかったんなら暇なときに比較ソースをあげるよ
0191名前は開発中のものです。
2009/06/07(日) 02:27:59ID:atKK+Qwb0192名前は開発中のものです。
2009/06/07(日) 02:36:39ID:cdPek4Sb0193名前は開発中のものです。
2009/06/07(日) 08:40:48ID:mwRZn/c6ゲームなり何なりを完成まで作ってみれば、ここにいる人たちの発言も理解できるようになるんだろうけど…
0194名前は開発中のものです。
2009/06/07(日) 12:11:24ID:aehXa9i/> 引数無しは引数がないことによるデメリットが生まれるだけでメリットは一つもない
> 上のほうで馬鹿が何も考えずに「1000個用意するの?馬鹿じゃね?w」的に煽ってるけど
> ぶっちゃけ代わらない
1000個の関数を呼び分けるのに、分岐を使わないのか。
スゲー、ミラクルテクニックだな。
0195名前は開発中のものです。
2009/06/07(日) 12:15:45ID:aehXa9i/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いちいち煽らんでよろしい。
先のレスに「1000個の関数を呼び分けるのに、分岐を使わない」とは
一言も書いていない。
仮に1000の関数を省いたとしても、代わりに1000の分岐が生まれるんじゃ
余計に悪くなる、と書いている。
大体、1000の機能を提供するなら1000の関数が必要になるのは
当たり前。そこは問題じゃない。
0197名前は開発中のものです。
2009/06/07(日) 12:28:41ID:m2Sg/1Dmブロック崩しぐらいでいいから書いたソース見てみたいな。
0198名前は開発中のものです。
2009/06/07(日) 12:34:26ID:aehXa9i/オマエもバカのお仲間か。
> 仮に1000の関数を省いたとしても、代わりに1000の分岐が生まれるんじゃ
> 余計に悪くなる、と書いている。
引数の異なる1000個の関数を、分岐無しで呼び分ける方法を教えてくれ。
0199名前は開発中のものです。
2009/06/07(日) 12:36:29ID:aehXa9i/あぁ、自分がこの点に粘着しているのは、引数クンの言う『異なるパラメータが必要な関数は
全て異なる関数として作る』という主張に沿っているだけだから。
引数でしかデータを渡したらいけない。グローバルなものは一切使わない。
まぁ、頑張って考えてみてくれよ。
0200名前は開発中のものです。
2009/06/07(日) 12:39:07ID:QCME1dhS具体的に何を非難してるん?
下みたいな関数がアンチパターンだっつってんの?なんで?
void moveForward(SomeObject* obj);
void SomeObject::moveForward();
それとも単に古典タスクのTCB実装を非難してるん?
それなら>>1を読めよ
0201名前は開発中のものです。
2009/06/07(日) 12:46:22ID:kY8Q/AF4別に奴の主義は間違ってない。つーか、正しい。
ただ、今回のようなプログラムによる動的呼び出しには
組み込めないだけで。
だから、機知外の戯言的な受け取りは誤り。
0202名前は開発中のものです。
2009/06/07(日) 12:58:44ID:m2Sg/1Dm引数君はどう見ても知障。
あんたも、どうも言ってることがおかしい。
基地外同士、二人で仲良くやってなよ。
0203名前は開発中のものです。
2009/06/07(日) 13:02:37ID:aehXa9i/> 別に奴の主義は間違ってない。つーか、正しい。
キチガイは、一匹見たら30匹は居ると思わないといけないのか?
0204名前は開発中のものです。
2009/06/07(日) 13:16:25ID:m2Sg/1Dm> キチガイは、一匹見たら30匹は居ると思わないといけないのか?
それだ!
0205名前は開発中のものです。
2009/06/07(日) 14:11:07ID:kY8Q/AF4君らは、相手に何を伝えたいの?
自分の主張の正しさか?
それとも自分は負けてないってことか?
もうちょっと、大人になれよな。
まず、知障だの30匹だの
そういった言葉を外すところから始めるんだな。
0206名前は開発中のものです。
2009/06/07(日) 14:18:06ID:aehXa9i/建設的な意見の一つも出せない池沼クンは、早くググって最適解でも見つけてきてください。
0207名前は開発中のものです。
2009/06/07(日) 16:36:26ID:3ohyM900>>200
>>144と>>160な
レス読まないで書き込んだのか>>144と>>160が理解できないのか
どっちなんだマジで?
0208名前は開発中のものです。
2009/06/07(日) 17:18:05ID:IBZXm9gK今まで何本ゲーム作った?
0209名前は開発中のものです。
2009/06/07(日) 17:23:00ID:IBZXm9gKあ、お前も何本ゲーム作った?
0210名前は開発中のものです。
2009/06/07(日) 18:20:04ID:aehXa9i/オマエは、呼び出し側の実装PGに、『こっちで作った1000個の関数を、状態に応じて正しく呼び分けてくれ』、と
伝えるのか。
スゲー厚顔無恥だな。
0211名前は開発中のものです。
2009/06/07(日) 18:21:24ID:3ohyM900カウントに入れるのも微妙なのあるが5本ぐれーか?
中途半端に関わったのも入れると10本だ
もう30前半
0212名前は開発中のものです。
2009/06/07(日) 18:29:25ID:3ohyM900ステータスが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いいよ
そのまとめで問題ない
全部あってるよ
0215名前は開発中のものです。
2009/06/07(日) 20:47:03ID:gdjwroFSタスク絡みで読む価値があるのは
三宅さんが書いた黒須さんインタビュー記事だけだな
なかなか痛快な内容
0216名前は開発中のものです。
2009/06/07(日) 21:22:45ID:gdjwroFSpreemptiveでない、協調的なマルチタスキング(マルチスレッディング)は
貧弱ターゲット向けの組み込みシステム、OSではわりと使われてると思う
>>59
RTOSのキューも基本的に同じ。というかマルチタスキングするOSのレディキューを
説明するときの概念図は基本的にリング状になってる。
「条件がそろうまでは残る感じ」の周期タスクは別段珍しいものではない
■ このスレッドは過去ログ倉庫に格納されています