<?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>memo.393 &#187; Adapter</title>
	<atom:link href="http://memo.393.bz/archives/tag/adapter/feed" rel="self" type="application/rss+xml" />
	<link>http://memo.393.bz</link>
	<description>個人的メモです。間違いなどありましたらご指摘ください。。。</description>
	<lastBuildDate>Sat, 31 Jul 2010 13:55:47 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>[AS]デザインパターン「Adapter」の練習</title>
		<link>http://memo.393.bz/archives/604</link>
		<comments>http://memo.393.bz/archives/604#comments</comments>
		<pubDate>Mon, 01 Jun 2009 10:39:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Adapter]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[DesignPattern]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://memo.393.bz/?p=604</guid>
		<description><![CDATA[矢沢久雄の早わかりGoFデザインパターン(2) のAdapterの項をAS3で書いてみた。 こんなかんじでいいんだろうか？ Kyuuyoprog.as（ドキュメントクラス) package { import flash.display.Sprite; /** * ... * @author 393 */ public class KyuuyoProg extends Sprite { public function KyuuyoProg() { init(); } private function init():void{ var shacho:Shacho = new Shacho(10000); var shainAdapter:ShainAdapter = new ShainAdapter(shacho); var shachokyuuyo:Number = getKyuuyo(shainAdapter); var shain1:Shain = new Shain(90, 80); var kyuuyo:Number = getKyuuyo(shain1); trace( [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://itpro.nikkeibp.co.jp/article/COLUMN/20051201/225566/?ST=develop">矢沢久雄の早わかりGoFデザインパターン(2) </a>のAdapterの項をAS3で書いてみた。<br />
こんなかんじでいいんだろうか？</p>
<p>Kyuuyoprog.as（ドキュメントクラス)</p>
<pre name="code" class="as">

package  {
	import flash.display.Sprite;

	/**
	 * ...
	 * @author 393
	 */
	public class KyuuyoProg extends Sprite {

		public function KyuuyoProg() {
			init();
		}

		private function init():void{
			var shacho:Shacho = new Shacho(10000);
			var shainAdapter:ShainAdapter = new ShainAdapter(shacho);

			var shachokyuuyo:Number = getKyuuyo(shainAdapter);

			var shain1:Shain = new Shain(90, 80);

			var kyuuyo:Number = getKyuuyo(shain1);
			trace( &quot;shachokyuuyo : &quot; + shachokyuuyo );
                       //出力：shachokyuuyo : 10000
			trace( &quot;kyuuyo : &quot; + kyuuyo );
                       //出力：kyuuyo : 5670
		}

		private function getKyuuyo(obj:Shain):Number{
			return obj.getJikan() * obj.getJikyu();
		}

	}

}
</pre>
<p>Shain.as</p>
<pre name="code" class="as">

package  {

	/**
	 * ...
	 * @author 393
	 */
	public class Shain {
		private var _jikyu:Number;
		private var _jikan:Number;

		public function Shain(jikyu:Number = 0, jikan:Number = 0) {
			this._jikyu= jikyu;
			this._jikan= jikan;
		}
		public function getJikan():Number {
			//搾取
			return _jikan - 10;
		}
		public function getJikyu():Number {
			//搾取
			return _jikyu * 0.9;
		}

	}

}
</pre>
<p>Shacho.as</p>
<pre name="code" class="as">

package  {

	/**
	 * ...
	 * @author 393
	 */
	public class Shacho {
		private var _koteikyu:Number;

		public function Shacho(koteikyu:Number) {
			_koteikyu = koteikyu
		}

		public function get koteikyu():Number { return _koteikyu; }

	}

}
</pre>
<p>ShainAdapter.as（アダプタークラス）</p>
<pre name="code" class="as">

package  {

	/**
	 * ...
	 * @author 393
	 */
	public class ShainAdapter extends Shain {
		private var shachoObj:Shacho;

		public function ShainAdapter(obj:Shacho) {
			shachoObj = obj;
		}

		public override function getJikan():Number {
			return 1;
		}
		public override function getJikyu():Number {
			return shachoObj.koteikyu;
		}

	}

}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://memo.393.bz/archives/604/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
