<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>いちばんやさしいゲームの作り方 &#187; クラス</title>
	<atom:link href="http://www.game-create.com/archives/tag/%e3%82%af%e3%83%a9%e3%82%b9/feed" rel="self" type="application/rss+xml" />
	<link>http://www.game-create.com</link>
	<description>文系の人でも、数理学がわからない人でもゲームプログラミングをマスターできるブログ</description>
	<lastBuildDate>Tue, 08 Jun 2010 01:28:47 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>ぷらがぶる</title>
		<link>http://www.game-create.com/archives/3440</link>
		<comments>http://www.game-create.com/archives/3440#comments</comments>
		<pubDate>Tue, 01 Jun 2010 14:18:20 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[インタフェース]]></category>
		<category><![CDATA[オブジェクト指向]]></category>
		<category><![CDATA[クラス]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3440</guid>
		<description><![CDATA[ゲームの設計をしていて、オブジェクトの特性を簡単に足せたら楽だなぁ、と思います。 C/C++ ではどうやるのがベターなんでしょうか。

簡単にとはいきませんが、インタフェース（実際にはインタフェースっぽい実装なきクラスで [...]]]></description>
			<content:encoded><![CDATA[<p>ゲームの設計をしていて、オブジェクトの特性を簡単に足せたら楽だなぁ、と思います。 C/C++ ではどうやるのがベターなんでしょうか。</p>
<p><span id="more-3440"></span></p>
<p>簡単にとはいきませんが、インタフェース（実際にはインタフェースっぽい実装なきクラスですが）とそのインタフェースの代表的な実装（特性オブジェクト）を用意しておいて、クラスに実装＋内包させるという方法がひとつ思い浮かびます。</p>
<p>また、ただ単に振る舞いが増えるだけだと実用性に限界がありそうですので、既存の振る舞いに変化が加えられると嬉しいのかな、とも思います。ただ、そうすると、「変化させてもいいよ」というポイントを（少なくとも特性オブジェクトには）公開しないといけませんね。</p>
<p>…というのを CakePHP を見ながら考えました。 attach() メソッドの手法なら C/C++ でもやってやれないことはないのか。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3440/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>やはり王道の学習法が良いよ、失敗から学んだりね…</title>
		<link>http://www.game-create.com/archives/3348</link>
		<comments>http://www.game-create.com/archives/3348#comments</comments>
		<pubDate>Wed, 19 May 2010 14:24:18 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[オブジェクト指向]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[仕事]]></category>
		<category><![CDATA[勉強]]></category>
		<category><![CDATA[月月火水木金金]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3348</guid>
		<description><![CDATA[クソみたいなクラスを作ってしまって、カプセル化の利点を理解。いまさら…

仕事のやつなのでダメな例として公開できないのが辛いところですが、趣味のゲーム制作の前で個人的には助かったかもしれません。仕事のノウハウを趣味にフィ [...]]]></description>
			<content:encoded><![CDATA[<p>クソみたいなクラスを作ってしまって、カプセル化の利点を理解。いまさら…</p>
<p><span id="more-3348"></span></p>
<p>仕事のやつなのでダメな例として公開できないのが辛いところですが、趣味のゲーム制作の前で個人的には助かったかもしれません。仕事のノウハウを趣味にフィードバックし、その逆もまたあるというのが今の生活の良いところかもしれません。</p>
<p>タイトルはですね、別に失敗から学ぶのが嫌とかダメというワケではないんです。ただ、当たり前すぎて声高に言うのもどうかと思うのと、逆に成功から学ぶということに目が向かないんじゃないかと思っておった次第なのです。</p>
<p>結果からしてその基本というやつがおろそかだったなぁ、と思ったのが今日です。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3348/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs 23.2 がリリースになったようです</title>
		<link>http://www.game-create.com/archives/3308</link>
		<comments>http://www.game-create.com/archives/3308#comments</comments>
		<pubDate>Tue, 11 May 2010 09:13:06 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ウェブログ]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[make]]></category>
		<category><![CDATA[UML]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[エディタ]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[コンパイラ]]></category>
		<category><![CDATA[関数]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3308</guid>
		<description><![CDATA[「お前もプログラマーならまともなエディタを使いたまえ」とは先輩の言葉です。 Emacs がまともかどうかはわかりませんが、すっかり手放せないツールです。
Emacs 23.2リリース、入力補完やクラスブラウザなどを備えた [...]]]></description>
			<content:encoded><![CDATA[<p>「お前もプログラマーならまともなエディタを使いたまえ」とは先輩の言葉です。 Emacs がまともかどうかはわかりませんが、すっかり手放せないツールです。</p>
<p><a href="http://sourceforge.jp/magazine/10/05/10/0748222" class="external">Emacs 23.2リリース、入力補完やクラスブラウザなどを備えたプログラミング支援ツール「CEDET」を標準搭載 &#8211; SourceForge.JP Magazine : オープンソースの話題満載</a></p>
<p><span id="more-3308"></span></p>
<p><a href="http://cedet.sourceforge.net/" class="external">CEDET</a> が標準搭載され、配置するだけで次の機能が使えるとのことです。</p>
<ul>
<li>Makefile作成ツール</li>
<li>コンパイラ実行スクリプト</li>
<li>入力補完/支援機能</li>
<li>ヘルプ/リファレンス参照機能</li>
<li>自動コード生成</li>
<li>UMLダイアグラム作成機能</li>
</ul>
<p>未確認で申し訳ないです。「こういう仕事は IDE でやればいいや」って感じでいつも進めてしまうんです。ただ、 UML ダイアグラム作成機能というのはちと気になります。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3308/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ようやっと落ち着いてきそうかな…</title>
		<link>http://www.game-create.com/archives/3226</link>
		<comments>http://www.game-create.com/archives/3226#comments</comments>
		<pubDate>Mon, 26 Apr 2010 14:52:13 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[ソースコード]]></category>
		<category><![CDATA[月月火水木金金]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3226</guid>
		<description><![CDATA[やっと最後のヤマに取り掛かろうというところです。今回の仕事ラッシュも長かったなぁ、こんちくしょう。

前も同じようなこと書いた記憶があるのですが、なんか仕事が増えたんです。ひとつひとつが特に関連あるわけではないのに仕事が [...]]]></description>
			<content:encoded><![CDATA[<p>やっと最後のヤマに取り掛かろうというところです。今回の仕事ラッシュも長かったなぁ、こんちくしょう。</p>
<p><span id="more-3226"></span></p>
<p>前も同じようなこと書いた記憶があるのですが、なんか仕事が増えたんです。ひとつひとつが特に関連あるわけではないのに仕事が舞い降りてくるという不況とは信じられない世界です。ゴールデンウィークが明けたら少しは楽になりそうですが、疲れました…</p>
<p>今日は他人のソースコードを見ていてラッパークラスの意義について考えさせられました。 DB のレコードを UPDATE してるのに影響を与えた行数が取れないというブレイバーメソッドにはちょっと手を入れる必要があるかもしれません。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3226/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>山越えてほいほい</title>
		<link>http://www.game-create.com/archives/3103</link>
		<comments>http://www.game-create.com/archives/3103#comments</comments>
		<pubDate>Fri, 02 Apr 2010 14:24:03 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[BUMP OF CHICKEN]]></category>
		<category><![CDATA[iPod]]></category>
		<category><![CDATA[インタフェース]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[仕事]]></category>
		<category><![CDATA[月月火水木金金]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3103</guid>
		<description><![CDATA[打ち上げのお誘いがあったのに予定が入っていたためリスケジュールいただくことに。なんだか、ことごとくタイミングが悪いってのありますよね…

気分は BUMP OF CHICKEN のホリデイ。前にも書いたような気がしますが [...]]]></description>
			<content:encoded><![CDATA[<p>打ち上げのお誘いがあったのに予定が入っていたためリスケジュールいただくことに。なんだか、ことごとくタイミングが悪いってのありますよね…</p>
<p><span id="more-3103"></span></p>
<p>気分は BUMP OF CHICKEN のホリデイ。前にも書いたような気がしますが…</p>
<p>BUMP OF CHICKEN の楽曲は抽象クラスやインタフェースのような感じがして心に染み入りやすく思います。実装は自分たちでやりたまえ、みたいな。具体的な内容のほうが理解しやすいんですけど、境遇に合わない部分があると iPod と同期する候補から外れちゃったりしますので、ああいう曲のほうが聴いていて元気になれます。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3103/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>インターバルつき２徹</title>
		<link>http://www.game-create.com/archives/2987</link>
		<comments>http://www.game-create.com/archives/2987#comments</comments>
		<pubDate>Fri, 05 Mar 2010 14:35:13 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[仕事]]></category>
		<category><![CDATA[月月火水木金金]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2987</guid>
		<description><![CDATA[アラサーのおっさんにはきつい…

普段、無償版ばっかり使ってるとわからないのですが、 Visual Studio にクラスデザイナという機能があるらしいです。仕事で使えそうなら思い切って用意してもいいなぁ、と思います。
 [...]]]></description>
			<content:encoded><![CDATA[<p>アラサーのおっさんにはきつい…</p>
<p><span id="more-2987"></span></p>
<p>普段、無償版ばっかり使ってるとわからないのですが、 Visual Studio にクラスデザイナという機能があるらしいです。仕事で使えそうなら思い切って用意してもいいなぁ、と思います。</p>
<p>ちょっとでも効率化できるところはしておかないと時間がもったいなく感じます。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2987/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>指示かメッセージか振るまいか</title>
		<link>http://www.game-create.com/archives/2937</link>
		<comments>http://www.game-create.com/archives/2937#comments</comments>
		<pubDate>Tue, 23 Feb 2010 01:38:38 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[オブジェクト指向]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[メッセージ]]></category>
		<category><![CDATA[備忘録]]></category>
		<category><![CDATA[関数]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2937</guid>
		<description><![CDATA[クラス作ってクラス関数を作って名前つけることが日常ですが、この名前ってどうしようか悩みます。このロジックは指示かメッセージか振るまいか。

クラスの設計中はクラスの性質を考えようかとも思うのですが、あとから見ると「あ、こ [...]]]></description>
			<content:encoded><![CDATA[<p>クラス作ってクラス関数を作って名前つけることが日常ですが、この名前ってどうしようか悩みます。このロジックは指示かメッセージか振るまいか。</p>
<p><span id="more-2937"></span></p>
<p>クラスの設計中はクラスの性質を考えようかとも思うのですが、あとから見ると「あ、これは指示か」とか思うこともあります。ほとんどの場合、指示と指示を受けての振る舞いが近いのであんまり気にならないのですが、なんだか性質を考えていることになるのか疑問に感じるようになります。</p>
<p>噂によると、メッセージと振る舞いとを別に記述できる言語もあるそうですが、どんなんでしょう。考えようによっては Windows もメッセージを受けて処理を決定するという点では別に記述しているような気もします（やたら入力を拒否する反抗的なテキストボックスとかも作れるみたいです）。</p>
<p>時間があったら調べてみたいと思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2937/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>クラス設計が年内にかたつきそう…</title>
		<link>http://www.game-create.com/archives/2650</link>
		<comments>http://www.game-create.com/archives/2650#comments</comments>
		<pubDate>Mon, 28 Dec 2009 14:52:54 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[オリジナルゲーム制作]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[SQLite]]></category>
		<category><![CDATA[イベント]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[まどか]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2650</guid>
		<description><![CDATA[ゲーム作るのに色々悩んでいたクラス設計ですが、残す課題があとひとつになりました。

現在、アニメーションデータを DB から取得してメモリに格納する方向で考えているのですが、キーフレームに設定したイベントハンドラを実行す [...]]]></description>
			<content:encoded><![CDATA[<p>ゲーム作るのに色々悩んでいたクラス設計ですが、残す課題があとひとつになりました。</p>
<p><span id="more-2650"></span></p>
<p>現在、アニメーションデータを DB から取得してメモリに格納する方向で考えているのですが、キーフレームに設定したイベントハンドラを実行する方法で悩んでいました。</p>
<p>DB から文字列でイベントハンドラの名前を取得しても、 C++ はリフレクションがないのでどうやってメソッドをコールさせればいいのかがネックだったのですが、とりあえず std::map で、文字列とメソッドへのポインタをあらかじめ格納しておく方向になりそうです。</p>
<p>あとは実用に耐える速度にするためのチューンですが、まずはインタフェースだけ決めてその後に考えます。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2650/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>後輩にアドバイスをもらう同人ゲーム制作</title>
		<link>http://www.game-create.com/archives/2608</link>
		<comments>http://www.game-create.com/archives/2608#comments</comments>
		<pubDate>Thu, 17 Dec 2009 15:29:31 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[オリジナルゲーム制作]]></category>
		<category><![CDATA[インタフェース]]></category>
		<category><![CDATA[オブジェクト指向]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[同人ゲーム]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2608</guid>
		<description><![CDATA[以前よりだいぶまとまってきましたが、まだ、クラスツリーを考えています。

パフォーマンスまで考慮すると色々考えないといけないことがありまして、インタフェースをこねくり回しているのですが、後輩に「実装を意識させるインタフェ [...]]]></description>
			<content:encoded><![CDATA[<p>以前よりだいぶまとまってきましたが、まだ、クラスツリーを考えています。</p>
<p><span id="more-2608"></span></p>
<p>パフォーマンスまで考慮すると色々考えないといけないことがありまして、インタフェースをこねくり回しているのですが、後輩に「実装を意識させるインタフェースはだめです」との指摘をいただきまして、インタフェースはすっきり落ち着きました。</p>
<p>んー、もうちょいです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2608/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>インタフェースの頭に I をつけるか否かで８年くらい悩んでおりましたが、ついに決着</title>
		<link>http://www.game-create.com/archives/2496</link>
		<comments>http://www.game-create.com/archives/2496#comments</comments>
		<pubDate>Mon, 23 Nov 2009 02:30:02 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[インタフェース]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[命名規則]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2496</guid>
		<description><![CDATA[つけることになりました。

いや、たいした理由はないのですが、インタフェースを実装した抽象クラスを作りたいことがありまして、なるべく簡素な名前にしたいと考えたとき、インタフェースと抽象クラスの名前がバッティングしてしまっ [...]]]></description>
			<content:encoded><![CDATA[<p>つけることになりました。</p>
<p><span id="more-2496"></span></p>
<p>いや、たいした理由はないのですが、インタフェースを実装した抽象クラスを作りたいことがありまして、なるべく簡素な名前にしたいと考えたとき、インタフェースと抽象クラスの名前がバッティングしてしまったためです。</p>
<div class="hl-surround" ><div class="hl-main"><pre><span class="hl-types">class </span><span class="hl-identifier">Device</span><span class="hl-default"> : </span><span class="hl-reserved">public </span><span class="hl-identifier">Device </span><span class="hl-comment">// ←おうぁぁあ
</span><span class="hl-brackets">{
  </span><span class="hl-comment">// 中は抽象クラス
</span><span class="hl-brackets">}</span></pre></div></div>
<p>命名の善し悪しはあるでしょうが、とりあえず前に進んでよかったよかった。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2496/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

