<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>웹눈 이야기</title>
		<link>http://webnoon.net/</link>
		<description>재미를 넘어서자</description>
		<language>ko</language>
		<pubDate>Mon, 12 Mar 2012 22:17:48 +0900</pubDate>
		<generator>Tistory 1.1 (http://www.tistory.com/)</generator>
		<managingEditor>웹눈</managingEditor>
		<image>
		<title>웹눈 이야기</title>
		<url><![CDATA[http://cfile25.uf.tistory.com/image/1346F4464F545C511FD5F1]]></url>
		<link>http://webnoon.net/</link>
		<description>재미를 넘어서자</description>
		</image>
		<item>
			<title>빌 로퍼</title>
			<link>http://webnoon.net/entry/%EB%B9%8C-%EB%A1%9C%ED%8D%BC</link>
			<description>&lt;p&gt;&lt;a href=&quot;http://cfile26.uf.tistory.com/image/180F723C4F5DF27C3299EF&quot;&gt;&lt;img style=&quot;background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px&quot; title=&quot;FxCam_1331525891099&quot; border=&quot;0&quot; alt=&quot;FxCam_1331525891099&quot; src=&quot;http://cfile2.uf.tistory.com/image/135D8A374F5DF27C1F5B57&quot; width=&quot;164&quot; height=&quot;244&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;(빌 로퍼는 스타크레프트, 워크레프트, 디아블로 등을 개발한 스타 개발자이다.)&lt;/p&gt;  &lt;p&gt;어려운 환경을 이겨내고 성공하는 스토리는 언제나 재밌다.&lt;/p&gt;</description>
			<category>book</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/269</guid>
			<comments>http://webnoon.net/entry/%EB%B9%8C-%EB%A1%9C%ED%8D%BC#entry269comment</comments>
			<pubDate>Mon, 12 Mar 2012 21:56:28 +0900</pubDate>
		</item>
		<item>
			<title>C++ Template을 활용한 FactoryPattern 일반화 하기</title>
			<link>http://webnoon.net/entry/C-Template%EC%9D%84-%ED%99%9C%EC%9A%A9%ED%95%9C-FactoryPattern-%EC%9D%BC%EB%B0%98%ED%99%94-%ED%95%98%EA%B8%B0</link>
			<description>&lt;p&gt;&amp;nbsp; 저는 같은 카테고리에 속하는 다양한 Device들의 인터페이스를 일반화 하고 생성 함수를 만들어서 클라이언트 코드가 특정 구현객체에 의존하지 않을 수 있도록 하기 위해 Factory Pattern을 사용합니다. 주로 사용성은 아래와 같습니다.&lt;/p&gt;
  &lt;p&gt;&amp;nbsp;&lt;/p&gt;
  &lt;div class=&quot;csharpcode&quot;&gt;
   &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   1:  &lt;/span&gt;&lt;span class=&quot;rem&quot;&gt;//Radiometer 카테고리의 디바이스.&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   2:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

  &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   3:  &lt;/span&gt;DevRadiometer* radiometer = DevRadiometerCreator::Instance().Create( “K6485” );&lt;/pre&gt;

  &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   4:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

  &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   5:  &lt;/span&gt;DevRadiometer* radiometerEmul = DevRadiometerCreator:Instance().Create( “emulator” );&lt;/pre&gt;

  &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   6:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

  &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   7:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   8:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

  &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   9:  &lt;/span&gt;&lt;span class=&quot;rem&quot;&gt;//Thermometer 카테고리의 디바이스.&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  10:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

  &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  11:  &lt;/span&gt;DevThermometer* thermometer = DevThermometerCreator::Instance().Create( “pk2000” );&lt;/pre&gt;

  &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  12:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

  &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  13:  &lt;/span&gt;DevThermometer* themometerEmul = DevThermometerCreator::Instance().Create( “emulator” );&lt;/pre&gt;

  &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  14:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;
&lt;/div&gt;
&lt;style type=&quot;text/css&quot;&gt;
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &quot;Courier New&quot;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;

&lt;p&gt;&amp;nbsp; 위와 같이 Device 종류 별로 Factory 클래스를 만들어서 사용을 해 왔었는데요. 각각의 Factory 클래스 마다 반환하는 특정 클래스를 제외하면 구현 내용은 중복이 되었습니다. 이러한 중복을 제거하기 위해서 Template을 사용하여 Factory 자체를 일반화 하는 것을 구상해 보았습니다. 사용성은 아래와 같습니다.&lt;/p&gt;

&lt;p&gt;
  &lt;/p&gt;
&lt;div class=&quot;csharpcode&quot;&gt;
    &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   1:  &lt;/span&gt;DevRadiometer* radiometer = Factory&amp;lt;DevRadiometer&amp;gt;::Instance().Create( “K6480” );&lt;/pre&gt;

    &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   2:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

    &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   3:  &lt;/span&gt;DevRadiometer* radiometerEmul = Factory&amp;lt;DevRadiometer&amp;gt;::Instance().Create( “emulator” );&lt;/pre&gt;

    &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   4:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

    &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   5:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

    &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   6:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

    &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   7:  &lt;/span&gt;DevThermometer* thermometer = Factory&amp;lt;DevThermometer&amp;gt;::Instance().Create( “pk2000” );&lt;/pre&gt;

    &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   8:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;

    &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   9:  &lt;/span&gt;DevThermometer* thermometerEmul = Factory&amp;lt;DevThermometer&amp;gt;::Instance().Create( “emulator” );&lt;/pre&gt;

    &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  10:  &lt;/span&gt;&amp;nbsp;&lt;/pre&gt;
  &lt;/div&gt;
  &lt;style type=&quot;text/css&quot;&gt;
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &quot;Courier New&quot;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;&amp;nbsp; 위와 같이 Factory Template 클래스를 한번 구현해 놓으니 수정이나 기타 구현이 필요 없이 재사용이 가능한 것 같습니다. 구현 코드는 파일로 첨부 하였습니다.&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://webnoon.tistory.com/attachment/cfile2.uf@124AB4444EF8838E0A64A5.h&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; DevFactory.h&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;p&gt;&lt;/p&gt;</description>
			<category>Visual C++ / OpenGL</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/267</guid>
			<comments>http://webnoon.net/entry/C-Template%EC%9D%84-%ED%99%9C%EC%9A%A9%ED%95%9C-FactoryPattern-%EC%9D%BC%EB%B0%98%ED%99%94-%ED%95%98%EA%B8%B0#entry267comment</comments>
			<pubDate>Mon, 26 Dec 2011 23:17:00 +0900</pubDate>
		</item>
		<item>
			<title>Verlet Integration - 게임에 어울리는 객체 운동 시뮬레이션</title>
			<link>http://webnoon.net/entry/Verlet-Integration-%EA%B2%8C%EC%9E%84%EC%97%90-%EC%96%B4%EC%9A%B8%EB%A6%AC%EB%8A%94-%EA%B0%9D%EC%B2%B4-%EC%9A%B4%EB%8F%99-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98</link>
			<description>&lt;p&gt;&amp;nbsp; &lt;a href=&quot;http://codeflow.org/entries/2010/nov/29/verlet-collision-with-impulse-preservation/&quot;&gt;이곳&lt;/a&gt;에 가시면 Verlet Inegration의 구현에 대해 매우 상세히 설명되어 있는 글을 보실 수 있습니다. 설명되어 있는 예제가 html5의 Canvas를 이용하였기 때문에, 크롬 브라우저나 파이어폭스 혹은 익스 9 버전으로 확인 하셔야 합니다.&lt;/p&gt;
  &lt;p&gt;&lt;br /&gt;
&lt;embed width=&quot;700&quot; height=&quot;525&quot; src=&quot;/attachment/cfile29.uf@1359CC414E08352C3208AD.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;/p&gt;
  &lt;p&gt;위의 예제는 Verlet Integration을 이용하여 구현해본 것입니다.&amp;nbsp; 전에 Euler Integration을 사용하여 &lt;a href=&quot;http://webnoon.net/entry/ActionScript-30-%EC%8A%A4%ED%94%84%EB%A7%81-%ED%83%84%EC%84%B1%EC%9A%B4%EB%8F%99&quot;&gt;비슷한걸&lt;/a&gt; 구현해 본적이 있는데요. Verlet Integration을 이용하면 놀라울 정도로 간단히 구현할 수 있습니다.&lt;/p&gt;</description>
			<category>Actionscript3.0</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/264</guid>
			<comments>http://webnoon.net/entry/Verlet-Integration-%EA%B2%8C%EC%9E%84%EC%97%90-%EC%96%B4%EC%9A%B8%EB%A6%AC%EB%8A%94-%EA%B0%9D%EC%B2%B4-%EC%9A%B4%EB%8F%99-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98#entry264comment</comments>
			<pubDate>Mon, 27 Jun 2011 16:43:09 +0900</pubDate>
		</item>
		<item>
			<title>Begginning Android Games-안드로이드 게임 개발서</title>
			<link>http://webnoon.net/entry/Begginning-Android-Games-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EA%B2%8C%EC%9E%84-%EA%B0%9C%EB%B0%9C%EC%84%9C</link>
			<description>&lt;p&gt;&lt;a href=&quot;http://cfile6.uf.tistory.com/image/154F1B494E036CC71B9D75&quot;&gt;&lt;img style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px&quot; title=&quot;41NPP4q1GSL._SL500_AA300_&quot; border=&quot;0&quot; alt=&quot;41NPP4q1GSL._SL500_AA300_&quot; src=&quot;http://cfile29.uf.tistory.com/image/205C694E4E036CC7178F6C&quot; width=&quot;244&quot; height=&quot;244&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160; 게임 제작을 위해서 무엇이 필요하며, 어떻게 준비해야 하는지에 대해서 필요한 만큼만 잘 설명된 책인 것 같습니다. Chapter 3 에서는 게임 개론을 다루면서 게임 제작에 뼈대가 되는 프레임웍 개발을 예제를 통해 친절히 설명( 너무 친절하게.. ) 하고 있으므로, 플래쉬 환경에서 게임 제작을 원하시는 분들에게도 많은 도움이 될 것 같습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;목록&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Android, the New Kid on the Block &lt;/li&gt;    &lt;li&gt;First Steps with the Android SDK &lt;/li&gt;    &lt;li&gt;Game Development 101 &lt;/li&gt;    &lt;li&gt;Android for Game Developers &lt;/li&gt;    &lt;li&gt;An Android Game Development Framework &lt;/li&gt;    &lt;li&gt;Mr. Nom Invades Android &lt;/li&gt;    &lt;li&gt;OpenGL ES: A Gentle Introduction &lt;/li&gt;    &lt;li&gt;2D Game Programming Tricks &lt;/li&gt;    &lt;li&gt;Super Jumper: A 2D OpenGL ES Game &lt;/li&gt;    &lt;li&gt;OpenGL ES: Going 3D &lt;/li&gt;    &lt;li&gt;3D Programming Tricks &lt;/li&gt;    &lt;li&gt;Droid Invaders: the Grand Finale &lt;/li&gt;    &lt;li&gt;Publishing Your Game &lt;/li&gt;    &lt;li&gt;What’s Next?&lt;/li&gt; &lt;/ol&gt;</description>
			<category>book</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/263</guid>
			<comments>http://webnoon.net/entry/Begginning-Android-Games-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EA%B2%8C%EC%9E%84-%EA%B0%9C%EB%B0%9C%EC%84%9C#entry263comment</comments>
			<pubDate>Fri, 24 Jun 2011 01:41:43 +0900</pubDate>
		</item>
		<item>
			<title>Lissajous</title>
			<link>http://webnoon.net/entry/Lissajous</link>
			<description>&lt;embed width=&quot;600&quot; height=&quot;400&quot; src=&quot;/attachment/cfile7.uf@1320EC0B4CC6F507751978.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-258-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-258-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-258-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>수학</category>
			<category>actionscript 3.0</category>
			<category>Lissajous</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/258</guid>
			<comments>http://webnoon.net/entry/Lissajous#entry258comment</comments>
			<pubDate>Wed, 27 Oct 2010 00:35:46 +0900</pubDate>
		</item>
		<item>
			<title>구속 운동방정식을 이용한 모션 : Constrained Dynamics</title>
			<link>http://webnoon.net/entry/%EA%B5%AC%EC%86%8D-%EC%9A%B4%EB%8F%99%EB%B0%A9%EC%A0%95%EC%8B%9D%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EB%AA%A8%EC%85%98-Constrained-Dynamics</link>
			<description>&lt;embed width=&quot;550&quot; height=&quot;400&quot; src=&quot;/attachment/cfile25.uf@1208D7204CC30ADA16104E.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;a href=&quot;http://www.diebuster.com/&quot; target=&quot;_blank&quot; title=&quot;[http://www.diebuster.com/]로 이동합니다.&quot;&gt;히카&lt;/a&gt;님이 내주신 숙제가 있어서 여러 방면으로 공부를 하다(?)보니 &lt;a href=&quot;http://www.cs.cmu.edu/~baraff/sigcourse/notesf.pdf&quot; target=&quot;_blank&quot; title=&quot;[http://www.cs.cmu.edu/~baraff/sigcourse/notesf.pdf]로 이동합니다.&quot;&gt;Constrained Dynamics&lt;/a&gt; 라는 자료가 눈에 들어와서 만들어 보았습니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
이것이 무엇이냐 하면, 운동을 하는 파티클을 구속하는 상황에서 어떻게 운동을 할지 그 운동 방정식을 구하는 방법입니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
활용하는 관점에서 살펴본다면 어떠한 대상이 어떠한 궤도를 만족하면서 지나가게 하고 싶은데, 이러한 운동을 자연법칙에 입각해서 아주 자연스럽게 구현 할 수 있습니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
위 플래시에서는 간단한 원궤도에 구속되어 있는 파티클이&amp;nbsp;초기 위치는 원의 꼭대기, 초기 속도는 우측으로 주어지고&amp;nbsp;중력장과 같은 외력이 가해지는 상황에서 어떻게 운동을 하게 되는지 그에 대한 운동방정식을 구하여서 구현한 것입니다.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
컨셉은 간단합니다. 파티클에 가해지는 외력과 구속력의 총합은 파티클을 구속 운동하게 만들어야 하는데, 이 조건을 만족시는 구속력을 구하기 위해서, 구속 방정식 C 를 구하고, 이 구속방정식을 만족하면서 동시에 구속력은 일을 하지 않는다라는 포인트를 이용합니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
p.s -&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
구해진 운동방정식을 시뮬레이션 하는데, 오일러 메소드를 사용했더니 금방 오차가 커져버려서 궤도를 이탈해 버립니다.&lt;/div&gt;
&lt;div&gt;
그래서 오일러-가우스 메소드를 사용해서 시뮬레이션 했더니 그래도 2~3 주기를 넘기질 못하네요.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
결국에는 계산 결과 후 생성되는 오차를 억지로 맞춰주었습니다. (구속 방정식을 만족시켜줌..)&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
자료를 보시다 보면 구속력은 속도의 방향과 일치한다고 나오는데 이것은 원운동일 때만 만족하는 조건입니다. 참고하세요..&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-257-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-257-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-257-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>수학</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/257</guid>
			<comments>http://webnoon.net/entry/%EA%B5%AC%EC%86%8D-%EC%9A%B4%EB%8F%99%EB%B0%A9%EC%A0%95%EC%8B%9D%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EB%AA%A8%EC%85%98-Constrained-Dynamics#entry257comment</comments>
			<pubDate>Sun, 24 Oct 2010 01:07:02 +0900</pubDate>
		</item>
		<item>
			<title>3D 농구게임 - 플래시</title>
			<link>http://webnoon.net/entry/3D-%EB%86%8D%EA%B5%AC%EA%B2%8C%EC%9E%84-%ED%94%8C%EB%9E%98%EC%8B%9C</link>
			<description>&lt;embed width=&quot;550&quot; height=&quot;400&quot; src=&quot;/attachment/cfile7.uf@17033B1F4CBF00E52D9833.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;br /&gt;
( 위 아래 화살표로 화면 회전 가능합니다 )&lt;br /&gt;
&lt;div&gt;
3D 링과 백보드 충돌 테스트를 해볼겸 만들었던 것입니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
회전력에 대한 운동도 구현해 보아야 겠습니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-256-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-256-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-256-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Actionscript3.0</category>
			<category>actionscipt 3</category>
			<category>플래시</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/256</guid>
			<comments>http://webnoon.net/entry/3D-%EB%86%8D%EA%B5%AC%EA%B2%8C%EC%9E%84-%ED%94%8C%EB%9E%98%EC%8B%9C#entry256comment</comments>
			<pubDate>Wed, 20 Oct 2010 23:49:00 +0900</pubDate>
		</item>
		<item>
			<title>Bisection Method - 방정식의 근 찾기</title>
			<link>http://webnoon.net/entry/Bisection-Method-%EB%B0%A9%EC%A0%95%EC%8B%9D%EC%9D%98-%EA%B7%BC-%EC%B0%BE%EA%B8%B0</link>
			<description>&lt;embed width=&quot;500&quot; height=&quot;500&quot; src=&quot;/attachment/cfile10.uf@1723CA354CA344C19CA7BF.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;방정식 ( 예 : x^5 -3*x^4 - 5*x^3 + x^2 + x + 3 &amp;nbsp;= 0 ) 의 근을 찾는 메소드입니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
함수 f(x) =&amp;nbsp;x^5 -3*x^4 - 5*x^3 + x^2 + x + 3 라고 놓고, 적당한 구간 [a, b]를 선택 합니다.&lt;/div&gt;
&lt;div&gt;그래프 상으로 확인해보면 대략 구간 [-2, -1], [0, 1]에 근이 있음을 알 수 있습니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
구간의 중간값을 x0라고 정의하면, x0 = ( a + b ) / 2 이고,&lt;/div&gt;
&lt;div&gt;f(a)*f(x0) 의 결과값이 0 보다 작으면 구간 b를 x0으로 재정의 하고, 0보다 크면 구간 a를 x0로 재정의 합니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
이러한 계산을 | a - b | 가 적당한 오차범위 내에 들때까지 반복하면 방정식의 해는 ( a + b ) / 2 가 되게 됩니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-255-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-255-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-255-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>수학</category>
			<category>bisection</category>
			<category>전산물리</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/255</guid>
			<comments>http://webnoon.net/entry/Bisection-Method-%EB%B0%A9%EC%A0%95%EC%8B%9D%EC%9D%98-%EA%B7%BC-%EC%B0%BE%EA%B8%B0#entry255comment</comments>
			<pubDate>Wed, 29 Sep 2010 23:01:29 +0900</pubDate>
		</item>
		<item>
			<title>몬테카를로 시뮬레이션 - 파이 구하기</title>
			<link>http://webnoon.net/entry/%EB%AA%AC%ED%85%8C%EC%B9%B4%EB%A5%BC%EB%A1%9C-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98-%ED%8C%8C%EC%9D%B4-%EA%B5%AC%ED%95%98%EA%B8%B0</link>
			<description>&lt;embed width=&quot;680&quot; height=&quot;600&quot; src=&quot;/attachment/cfile7.uf@13777F304C8F80FA1ACC14.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
바늘을 떨어뜨리는 시행을 반복하여 바늘이 두 평행선에 맞닿을 확률을 이용하여 파이를 구하는 시뮬레이션.&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-254-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-254-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-254-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>수학</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/254</guid>
			<comments>http://webnoon.net/entry/%EB%AA%AC%ED%85%8C%EC%B9%B4%EB%A5%BC%EB%A1%9C-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98-%ED%8C%8C%EC%9D%B4-%EA%B5%AC%ED%95%98%EA%B8%B0#entry254comment</comments>
			<pubDate>Tue, 14 Sep 2010 23:07:41 +0900</pubDate>
		</item>
		<item>
			<title>Feigenbaum senario</title>
			<link>http://webnoon.net/entry/Feigenbaum-senario</link>
			<description>&lt;embed width=&quot;550&quot; height=&quot;400&quot; src=&quot;/attachment/cfile23.uf@17237A144C86487B645037.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-253-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-253-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-253-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>수학</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/253</guid>
			<comments>http://webnoon.net/entry/Feigenbaum-senario#entry253comment</comments>
			<pubDate>Tue, 07 Sep 2010 23:13:20 +0900</pubDate>
		</item>
		<item>
			<title>유머나라에 올라간 예전에 만들었던 플래시</title>
			<link>http://webnoon.net/entry/%EC%9C%A0%EB%A8%B8%EB%82%98%EB%9D%BC%EC%97%90-%EC%98%AC%EB%9D%BC%EA%B0%84-%EC%98%88%EC%A0%84%EC%97%90-%EB%A7%8C%EB%93%A4%EC%97%88%EB%8D%98-%ED%94%8C%EB%9E%98%EC%8B%9C</link>
			<description>&lt;p&gt;&lt;a href=&quot;http://cfile8.uf.tistory.com/image/1101EE2F4C48F84E8AB80E&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;10만개 파티클&quot; border=&quot;0&quot; alt=&quot;10만개 파티클&quot; src=&quot;http://cfile7.uf.tistory.com/image/132DF2374C48F84F9BB701&quot; width=&quot;554&quot; height=&quot;348&quot; /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;제가 만든게 웹상에 돌아다니니까 신기하네요.. 지돌스타님이 손봐주신거지만.. ㅋㅋ&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://webnoon.net/entry/%ED%94%8C%EB%A0%88%EC%8B%9C-Actionscript-30-10%EB%A7%8C%EA%B0%9C-%ED%8C%8C%ED%8B%B0%ED%81%B4-%ED%85%8C%EC%8A%A4%ED%8A%B8-mouseX%EC%9D%98-%EB%B9%84%EC%9A%A9-%EC%B2%B4%ED%97%98&quot;&gt;http://webnoon.net/entry/플레시-Actionscript-30-10만개-파티클-테스트-mouseX의-비용-체험&lt;/a&gt;&lt;/p&gt;</description>
			<category>Actionscript3.0</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/252</guid>
			<comments>http://webnoon.net/entry/%EC%9C%A0%EB%A8%B8%EB%82%98%EB%9D%BC%EC%97%90-%EC%98%AC%EB%9D%BC%EA%B0%84-%EC%98%88%EC%A0%84%EC%97%90-%EB%A7%8C%EB%93%A4%EC%97%88%EB%8D%98-%ED%94%8C%EB%9E%98%EC%8B%9C#entry252comment</comments>
			<pubDate>Fri, 23 Jul 2010 11:02:56 +0900</pubDate>
		</item>
		<item>
			<title>3D in Flash 도착</title>
			<link>http://webnoon.net/entry/3D-in-Flash-%EB%8F%84%EC%B0%A9</link>
			<description>&lt;p&gt;&lt;a href=&quot;http://cfile28.uf.tistory.com/image/12465C254C3AB3B7942E97&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;3D is Flash&quot; border=&quot;0&quot; alt=&quot;3D is Flash&quot; src=&quot;http://cfile25.uf.tistory.com/image/1658770C4C3AB3B72DD9C3&quot; width=&quot;369&quot; height=&quot;278&quot; /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;택배아저씨는 언제나 책을 마당에 휙~ 던져버리시곤 한다. 가뜩이나 먼길 오느라 고생했을텐데 마지막까지…ㅡㅡ;&lt;/p&gt;  &lt;p&gt;Away3D 엔진을 제대로 활용하려면 모델링하는 방법도 공부해야하는데.. Max도 한번..&lt;/p&gt;</description>
			<category>book</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/251</guid>
			<comments>http://webnoon.net/entry/3D-in-Flash-%EB%8F%84%EC%B0%A9#entry251comment</comments>
			<pubDate>Mon, 12 Jul 2010 15:18:32 +0900</pubDate>
		</item>
		<item>
			<title>Actionscript 3 - 읽기쉬운 프로그래밍 하기</title>
			<link>http://webnoon.net/entry/Actionscript-3-%EC%9D%BD%EA%B8%B0%EC%89%AC%EC%9A%B4-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%ED%95%98%EA%B8%B0</link>
			<description>&lt;p&gt;Actionscript 3 로 만든 프로그램을 이해하기 위해서는 프로그램의 수행흐름을 따라가야 합니다. 즉, 머리속에 현재 프로그램의 수행상태, 제어흐름, 데이터 흐름등을 파악하고 있어야 합니다.&lt;/p&gt;  &lt;p&gt;저는 플래시 프로그래밍을 하다보면, 이벤트 모델의 사용으로 인해 수많은 함수 분기가 일어나서 나중에 그 프로그램을 다시 보았을때 수행흐름을 파악하는데 어려움을 겪었습니다.&lt;/p&gt;  &lt;p&gt;즉, 제가 원했던 것은 아래와 같은 수행흐름을 이해하기 편한 표현방법 이었다면,&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile28.uf.tistory.com/image/191DFC0B4C3547D45C13A3&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;이해하기 쉬운 플래시 프로그래밍 하기&quot; border=&quot;0&quot; alt=&quot;이해하기 쉬운 플래시 프로그래밍 하기&quot; src=&quot;http://cfile25.uf.tistory.com/image/1515F60C4C3547D4434678&quot; width=&quot;254&quot; height=&quot;119&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;실제로는 아래와 같이 되는게 일반적이였습니다.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile29.uf.tistory.com/image/182830124C3547D46E19ED&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;읽기 쉬운 프로그래밍 하기&quot; border=&quot;0&quot; alt=&quot;읽기 쉬운 프로그래밍 하기&quot; src=&quot;http://cfile27.uf.tistory.com/image/1511E00E4C3547D4426896&quot; width=&quot;454&quot; height=&quot;397&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;이렇게 되면 구현내용을 일일이 파악해야지 이 프로그램이 무엇을 하는것인지 이해가 가능할것입니다.&lt;/p&gt;  &lt;p&gt;이런 어려움을 겪고 있던 저는 얼마전 구세주와 같은 해결방법을 보게되었습니다. 바로 &lt;a href=&quot;http://diebuster.com&quot; target=&quot;_blank&quot;&gt;hika&lt;/a&gt;님이 포스팅 하신 “&lt;a href=&quot;http://www.diebuster.com/?cat=72&quot; target=&quot;_blank&quot;&gt;Message Queueing 서비스&lt;/a&gt;” 라는 포스트입니다. hika님이 알려주신 팁을 적용하면, 위와 같은 문제점은 대략 아래와 같이 해결가능해졌습니다.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile29.uf.tistory.com/image/112F2B104C3547D52BF327&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;이해하기 쉬운 플래시 프로그래밍 하기&quot; border=&quot;0&quot; alt=&quot;이해하기 쉬운 플래시 프로그래밍 하기&quot; src=&quot;http://cfile27.uf.tistory.com/image/20508B0F4C3547D556B6A8&quot; width=&quot;554&quot; height=&quot;477&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;(위에 예를든 프로그램과 별개입니다. 헷갈리실수도 ^^;) 아래는 디버그 결과입니다.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile27.uf.tistory.com/image/1431B20D4C3548837015E1&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;이해하기 쉬운 프로그래밍 - 디버그 결과&quot; border=&quot;0&quot; alt=&quot;이해하기 쉬운 프로그래밍 - 디버그 결과&quot; src=&quot;http://cfile24.uf.tistory.com/image/1111D20E4C354883764C8A&quot; width=&quot;244&quot; height=&quot;120&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;init 함수 안에 이 프로그램에 대한 수행흐름을 모두 나타낼수 있었습니다. 이로써 자세한 구현사항을 파악하지 않아도 이 프로그램이 무엇을 하는 프로그램인지 보다 쉽게 이해가 가능해진것 같습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;p.s - 제목은 마치 읽기쉬운 프로그래밍을 할수 있는 방법을 제시할것처럼 해놓았지만 결국은 “&lt;a href=&quot;http://www.diebuster.com/?cat=72&quot; target=&quot;_blank&quot;&gt;Message Queueing 서비스&lt;/a&gt;”에 대한 저의 감상문 정도의 글이 였습니다. ^^; 개인적으로 이런 훌륭한 팁을 마구마구 알려주시는 hika님께 매우 감사드린다는… 아무튼, 보다 구체적이고 원론적인 내용을 원하시는 분들은 위에 언급한 포스트를 읽어보세요.&lt;/p&gt;  &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:2bb9a0c0-e171-4af6-87c3-ca49081825d2&quot; class=&quot;wlWriterEditableSmartContent&quot;&gt;Tistory 태그: &lt;a href=&quot;http://tistory.com/search/tag/actionscript+3?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;actionscript 3&lt;/a&gt;,&lt;a href=&quot;http://tistory.com/search/tag/%c7%c1%b7%ce%b1%d7%b7%a1%b9%d6+%c0%cc%c7%d8%c7%cf%b1%e2?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;프로그래밍 이해하기&lt;/a&gt;,&lt;a href=&quot;http://tistory.com/search/tag/actionscript+%c6%c1?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;actionscript 팁&lt;/a&gt;&lt;/div&gt;</description>
			<category>Actionscript3.0</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/250</guid>
			<comments>http://webnoon.net/entry/Actionscript-3-%EC%9D%BD%EA%B8%B0%EC%89%AC%EC%9A%B4-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%ED%95%98%EA%B8%B0#entry250comment</comments>
			<pubDate>Thu, 08 Jul 2010 12:36:53 +0900</pubDate>
		</item>
		<item>
			<title>플렉스로 만든 웹기반 그래픽 저작 툴 &amp;ndash; Sumo Paint</title>
			<link>http://webnoon.net/entry/%ED%94%8C%EB%A0%89%EC%8A%A4%EB%A1%9C-%EB%A7%8C%EB%93%A0-%EC%9B%B9%EA%B8%B0%EB%B0%98-%EA%B7%B8%EB%9E%98%ED%94%BD-%EC%A0%80%EC%9E%91-%ED%88%B4-ndash-Sumo-Paint</link>
			<description>&lt;p&gt;웹기반 소프트웨어에 대한 자료를 조사하던중 플렉스로 제작된 그래픽 저작툴을 발견하였습니다. 아무래도 포토샵에 비해서는 기능이 부족해보이지만 플렉스로 이런 소프트웨어를 만들었다는 자체가 저에게는 놀랍기만 하네요.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.sumopaint.com/pro/&quot; target=&quot;_blank&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;플렉스로 만든 그래픽 저작툴 - sumo paint&quot; border=&quot;0&quot; alt=&quot;플렉스로 만든 그래픽 저작툴 - sumo paint&quot; src=&quot;http://cfile1.uf.tistory.com/image/122445024C2EE8A21146BA&quot; width=&quot;561&quot; height=&quot;344&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.sumopaint.com/pro/&quot; target=&quot;_blank&quot;&gt;Sumo Paint&lt;/a&gt;는 보시는 바와같이 무료는 아니지만 Try Online 버튼을 클릭하시면 테스트하실수 있습니다. 아래는 테스트 화면입니다.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile24.uf.tistory.com/image/133BBD0F4C2EE8A28157BA&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;Sumo Paint 실행화면 - 플렉스로 만든 웹기반 소프트웨어&quot; border=&quot;0&quot; alt=&quot;Sumo Paint 실행화면 - 플렉스로 만든 웹기반 소프트웨어&quot; src=&quot;http://cfile8.uf.tistory.com/image/166A84284C2EE8A370A139&quot; width=&quot;561&quot; height=&quot;343&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:6ab79450-64a0-4c05-933f-8b49e9130f14&quot; class=&quot;wlWriterEditableSmartContent&quot;&gt;Tistory 태그: &lt;a href=&quot;http://tistory.com/search/tag/%c0%a5%b1%e2%b9%dd+%bc%d2%c7%c1%c6%ae%bf%fe%be%ee?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;웹기반 소프트웨어&lt;/a&gt;,&lt;a href=&quot;http://tistory.com/search/tag/%c7%c3%b7%ba%bd%ba?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;플렉스&lt;/a&gt;&lt;/div&gt;</description>
			<category>Actionscript3.0</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/249</guid>
			<comments>http://webnoon.net/entry/%ED%94%8C%EB%A0%89%EC%8A%A4%EB%A1%9C-%EB%A7%8C%EB%93%A0-%EC%9B%B9%EA%B8%B0%EB%B0%98-%EA%B7%B8%EB%9E%98%ED%94%BD-%EC%A0%80%EC%9E%91-%ED%88%B4-ndash-Sumo-Paint#entry249comment</comments>
			<pubDate>Sat, 03 Jul 2010 16:37:07 +0900</pubDate>
		</item>
		<item>
			<title>중복을 최소로 하는 프로그래밍 하기</title>
			<link>http://webnoon.net/entry/%EC%A4%91%EB%B3%B5%EC%9D%84-%EC%B5%9C%EC%86%8C%EB%A1%9C-%ED%95%98%EB%8A%94-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%ED%95%98%EA%B8%B0</link>
			<description>&lt;p&gt;&lt;a href=&quot;http://cfile7.uf.tistory.com/image/166CD8144C2B661D2E172A&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;리팩토링전의 클래스 다이어그램&quot; border=&quot;0&quot; alt=&quot;리팩토링전의 클래스 다이어그램&quot; src=&quot;http://cfile23.uf.tistory.com/image/1338A90C4C2B661D1E943E&quot; width=&quot;565&quot; height=&quot;287&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;위의 클래스 다이어그램은 리팩토링 하기전의 클래스 다이어그램 입니다. 언뜻보기에는 문제가 없어보이지만, AlphaStyleSoftJob과 AlphaStyleHard 클래스에서 AlphaStyle에 관한 코드가 있을듯 합니다. 또한 BetaStyleSoftJob과 BetaStyleHardJob도 마찬가지로 BetStyle에 관한 코드가 있을것 같습니다.&lt;/p&gt;  &lt;p&gt;이러한 것을 리팩토링에서는 {중복된 코드}라는 코드의 악취라고 합니다.&lt;/p&gt;  &lt;p&gt;중복이 발생하게 되면 유지보수 단계에서 많은 비용이 발생하게 됩니다. 위의 예로, AlphaStyle에 대한 속성값을 변경할라치면 AlphaStyleSoftJob과 AlphaStyleHardJob이라는 두개의 클래스 모두 변경이 필요합니다.&lt;/p&gt;  &lt;p&gt;“켄트 벡의 구현 패턴” 에서는 위와 같은 중복을 없애는 한가지 방법으로 프로그램을 여러가지 작은 부분 – 짧은 구문, 짧은 메소드, 작은 객체, 작은 패키지 – 으로 나누라고 하고 있습니다.&lt;/p&gt;  &lt;p&gt;위의 클래스 다이어그램에서 보이는 하위 클래스 AlphaStyleSoftJob에는 두개의 개념이 포함되어 있습니다. 이러한 부분을 두가지 개념으로 나누어서 개념의 중복을 없애 보면, Style과 Job 으로 나눌수 있을것 같습니다.&lt;/p&gt;  &lt;p&gt;이렇게 나누어진 개념으로 다시 상속구조를 다이어그램으로 나타내어 본것은 아래와 같습니다.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile10.uf.tistory.com/image/14396F0C4C2B661D1997AB&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://cfile29.uf.tistory.com/image/122FCE0C4C2B661D22AC9D&quot; width=&quot;579&quot; height=&quot;310&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;위와 같은 구조에서는 대부분의 코드 변경이 지역적으로 일어날 것을 알수 있습니다.&lt;/p&gt;</description>
			<category>프로그래밍</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/248</guid>
			<comments>http://webnoon.net/entry/%EC%A4%91%EB%B3%B5%EC%9D%84-%EC%B5%9C%EC%86%8C%EB%A1%9C-%ED%95%98%EB%8A%94-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%ED%95%98%EA%B8%B0#entry248comment</comments>
			<pubDate>Thu, 01 Jul 2010 00:43:25 +0900</pubDate>
		</item>
		<item>
			<title>플래시의 uint 표현방법</title>
			<link>http://webnoon.net/entry/%ED%94%8C%EB%9E%98%EC%8B%9C%EC%9D%98-uint-%ED%91%9C%ED%98%84%EB%B0%A9%EB%B2%95</link>
			<description>&lt;p&gt;저번에 “&lt;a href=&quot;http://webnoon.net/entry/%ED%94%8C%EB%9E%98%EC%8B%9C%EC%9D%98-%EC%A0%95%EC%88%98-%ED%91%9C%ED%98%84-%EB%B0%A9%EB%B2%95&quot;&gt;플래시의 정수 표현방법 - 2의 보수표기법&lt;/a&gt;” 이라는 제목으로 포스팅한 적이 있습니다. 그 포스트에 &lt;a href=&quot;http://www.diebuster.com/&quot; target=&quot;_blank&quot;&gt;hika&lt;/a&gt; 님이 uint 에 관해서도 진리표 작성을 권유(?) 하셔서 한번 삽질을 해보았습니다.&lt;/p&gt;  &lt;p&gt;우선 uint는 양의 정수만을 표현할때 사용하는 기본형으로, 32비트를 사용하여 양의 정수를 표현한다고 레퍼런스에 나와있습니다. 최대값이 int 형의 두배가 된다고도 나와있는데 (즉, 2^32&amp;#160; – 1 ,정확히 두배는 아니…음..) 여기에서 32비트 전부를 수를 표현하는데 사용한다는걸 알수 있었습니다.&lt;/p&gt;  &lt;p&gt;그럼 간단히 테스트를 해본 결과를 보겠습니다.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile24.uf.tistory.com/image/194ECC274C28BA9092132F&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;플래시의 uint 표현방법&quot; border=&quot;0&quot; alt=&quot;플래시의 uint 표현방법&quot; src=&quot;http://cfile7.uf.tistory.com/image/1855CF0C4C28BA912941CE&quot; width=&quot;506&quot; height=&quot;366&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;위 그림과 같이 255 크기의 uint 를 byteArray에 쓰고, 한 바이트씩 읽었습니다.&lt;/p&gt;  &lt;p&gt;여기서 4번째 바이트를 읽어왔을때 반환값이 –1 인것을 볼수 있는데, 이것은 ByteArray의 readByte() 메소드는 int형을 반환하고, 2의 보수표기법을 사용하는 int형은 비트열 11111111 을 -1로 표현한다는것을 알수 있습니다.&lt;/p&gt;  &lt;p&gt;따라서 플래시의 uint형은 비트열의 32비트열의 2진 체계를 그대로 10진법으로 변환하여 표현해주는 방식을 사용한다고 볼수 있겠습니다.&lt;/p&gt;</description>
			<category>Actionscript3.0</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/247</guid>
			<comments>http://webnoon.net/entry/%ED%94%8C%EB%9E%98%EC%8B%9C%EC%9D%98-uint-%ED%91%9C%ED%98%84%EB%B0%A9%EB%B2%95#entry247comment</comments>
			<pubDate>Tue, 29 Jun 2010 00:06:57 +0900</pubDate>
		</item>
		<item>
			<title>Actionscript Project 로 Air 프로그래밍 하기</title>
			<link>http://webnoon.net/entry/Actionscript-Project-%EB%A1%9C-Air-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%ED%95%98%EA%B8%B0</link>
			<description>&lt;p&gt;플래시 빌더4를 사용해서 Actionscript Project 형식으로 Air 프로젝트를 생성 하는 방법을 알아보겠습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;1. File &amp;gt; New &amp;gt; &amp;quot;Flex Project&amp;quot;   &lt;br /&gt;2. 프로젝트 이름을 입력합니다. 예로, “Foo”    &lt;br /&gt;3. &amp;quot;Desktop (runs in Adobe AIR)&amp;quot; 를 선택합니다.    &lt;br /&gt;4. &amp;quot;Finish&amp;quot; 버튼을 클릭.    &lt;br /&gt;5. &amp;quot;Foo.mxml&amp;quot; 지웁니다.    &lt;br /&gt;6. File &amp;gt; New &amp;gt; ActionScript Class 에서 Sprite 를 상속받는 Foo.as 파일을 생성합니다.    &lt;br /&gt;7. 완료 버튼 클릭.    &lt;br /&gt;8. &amp;quot;Foo.as&amp;quot; 파일에 마우스 우측 버튼을 클릭후,&amp;#160; &amp;quot;Set as Default Application&amp;quot; 를 선택합니다.    &lt;br /&gt;9. Foo.as 생성자에 다음과 같이 입력합니다. &amp;quot;this.stage.nativeWindow.visible = true;&amp;quot;    &lt;br /&gt;10. Run &amp;amp; Done!&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://cfile4.uf.tistory.com/image/1643C2144C2586D94A2E79&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://cfile24.uf.tistory.com/image/151FFE054C2586D902484C&quot; width=&quot;366&quot; height=&quot;390&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
			<category>Actionscript3.0</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/246</guid>
			<comments>http://webnoon.net/entry/Actionscript-Project-%EB%A1%9C-Air-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%ED%95%98%EA%B8%B0#entry246comment</comments>
			<pubDate>Sat, 26 Jun 2010 13:49:29 +0900</pubDate>
		</item>
		<item>
			<title>켄트 벡의 구현패턴</title>
			<link>http://webnoon.net/entry/%EC%BC%84%ED%8A%B8-%EB%B2%A1%EC%9D%98-%EA%B5%AC%ED%98%84%ED%8C%A8%ED%84%B4</link>
			<description>&lt;p&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;켄트 벡의 구현패턴&quot; border=&quot;0&quot; alt=&quot;켄트 벡의 구현패턴&quot; src=&quot;http://cfile24.uf.tistory.com/image/1978B1104C25415744AC5D&quot; width=&quot;393&quot; height=&quot;342&quot; /&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;스터디 교제로 사용될 책.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;“여러분은 프로그래머로서 시간과 재능과 돈과 기회를 부여 받았다. 이러한 자원들을 책임감 있게 잘 사용하려면 어떻게 해야 하는가? &lt;u&gt;이 책은 이러한 고민에 대한 나의 답이다&lt;/u&gt;. “ – 켄트 벡&lt;/p&gt;</description>
			<category>book</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/245</guid>
			<comments>http://webnoon.net/entry/%EC%BC%84%ED%8A%B8-%EB%B2%A1%EC%9D%98-%EA%B5%AC%ED%98%84%ED%8C%A8%ED%84%B4#entry245comment</comments>
			<pubDate>Sat, 26 Jun 2010 08:52:55 +0900</pubDate>
		</item>
		<item>
			<title>데이터 통신과 네트워킹</title>
			<link>http://webnoon.net/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%86%B5%EC%8B%A0%EA%B3%BC-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%82%B9</link>
			<description>&lt;p&gt;&lt;a href=&quot;http://cfile25.uf.tistory.com/image/156B900B4C1BE62C413554&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;2_66101098122449.92&quot; border=&quot;0&quot; alt=&quot;2_66101098122449.92&quot; src=&quot;http://cfile9.uf.tistory.com/image/2002EB114C1BE62C26AEC2&quot; width=&quot;387&quot; height=&quot;291&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;얕게, 말초적이고 소모적이게만 간보고 다니면 결국은 소모품 이하도 이상도 아니게 된다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;역자 말을 빌면, 이 책을 통해 데이터 통신과 컴퓨터 네트워킹에 필요한 전반적인 지식을 얻을수 있다고 말하고 있다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;저자는 본 교재의 뼈대로 5계층 인터넷 모델을 사용하였는데, 이는 이 모델을 철저히 이해해야만 현대 네트워크 이론을 바로 이해하게 되기 때문이라고 말하고 있다.&lt;/p&gt;</description>
			<category>book</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/243</guid>
			<comments>http://webnoon.net/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%86%B5%EC%8B%A0%EA%B3%BC-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%82%B9#entry243comment</comments>
			<pubDate>Sat, 19 Jun 2010 06:23:00 +0900</pubDate>
		</item>
		<item>
			<title>플래시의 정수 표현 방법 - 2의 보수 표기법</title>
			<link>http://webnoon.net/entry/%ED%94%8C%EB%9E%98%EC%8B%9C%EC%9D%98-%EC%A0%95%EC%88%98-%ED%91%9C%ED%98%84-%EB%B0%A9%EB%B2%95</link>
			<description>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;플래시에서 정수를 표현하기 위해 어떤 비트패턴을 사용하는지 알아보고 정수를 사용할 때 나타날수 있는 이슈사항들에 대해 알아보도록 하겠습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;1. 컴퓨터의 정수표현 - 2의 보수 표기법&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;2의 보수 표기법(two’s complement) 은 컴퓨터에서 정수 표현에 사용되는 표기법이며 다른 표기법으로는 초과 표기법이 있습니다.&lt;/p&gt;  &lt;p&gt;이 글에서는 플래시에서 정수를 표현하는데 사용되는 2의 보수 표기법에 대해서 알아보도록 하겠습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;현재 플래시는 길이가 32인 비트패턴을 사용하여 정수를 표현하고 있습니다. 여기서는 2의 보수 표기법이 무엇인지 설명하기 위해 내용전달이 충분히 가능면서 보다 설명하기 편한 길이가 4인 비트패턴을 사용하겠습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;2의 보수 표기법은 양수와 음수의 정보를 나타내는 하나의 최상위 비트와 나머지 값을 나타내는 비트들로 이루어져 있습니다. 길이가 4인 비트패턴으로 예를 들면 아래 표와 같습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table border=&quot;1&quot; cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;215&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;106&quot;&gt;         &lt;p align=&quot;center&quot;&gt;비트 패턴&lt;/p&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;107&quot;&gt;         &lt;p align=&quot;center&quot;&gt;표현 값&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;106&quot;&gt;         &lt;p align=&quot;center&quot;&gt;0111            &lt;br /&gt;0110             &lt;br /&gt;0101             &lt;br /&gt;0100             &lt;br /&gt;0011             &lt;br /&gt;0010             &lt;br /&gt;0001             &lt;br /&gt;0000             &lt;br /&gt;1111             &lt;br /&gt;1110             &lt;br /&gt;1101             &lt;br /&gt;1100             &lt;br /&gt;1011             &lt;br /&gt;1010             &lt;br /&gt;1001             &lt;br /&gt;1000&lt;/p&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;107&quot;&gt;         &lt;p align=&quot;center&quot;&gt;7            &lt;br /&gt;6             &lt;br /&gt;5             &lt;br /&gt;4             &lt;br /&gt;3             &lt;br /&gt;2             &lt;br /&gt;1             &lt;br /&gt;0             &lt;br /&gt;-1             &lt;br /&gt;-2             &lt;br /&gt;-3             &lt;br /&gt;-4             &lt;br /&gt;-5             &lt;br /&gt;-6             &lt;br /&gt;-7             &lt;br /&gt;-8&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;2의 보수 표기법에서 최상위 비트(제일 왼쪽 비트) 0은 양수를 , 1은 음수를 표현합니다. 이는 부호비트(sign bit) 라고 불립니다. 나머지 3비트는 정수의 크기를 나타내는데, 양수 표현에서는 일반 2진 체계로 정수를 나타내는 방법과 동일합니다. 즉, 정수 3은 2진 체계로 010 의 값으로 나타낼수 있습니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;여기서 음의 정수를 표현한 비트패턴과 양의 정수를 표현한 피트패턴 사이에는 재미있는 규칙이 있습니다. 양의 정수 비트패턴을 오른쪽에서 왼쪽으로 읽어나갈 때 처음으로 1이 나오는 부분까지는 양과 음의 비트패턴이 같고, 나머지는 양의 정수 비트패턴과 보수관계 입니다. 예를 들어 정수 2와 -2의 비트 패턴을 살펴보면, 비트 패턴의 오른쪽으로 부터 2번째에 처음으로 1이 나오고, 3번째 부터는 양수와 음수의 비트패턴이 보수관계에 있는것을 볼수 있습니다. (보수 관계란 1은 0 , 0은 1 이 되는것을 말함.)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;위의 보수 관계를 이용하면 음의 정수 7의 비트패턴을 양의 정수 7의 비트패턴을 이용하여 구할수가 있는데, 다음과 같이 양의 정수 7의 비트패턴을 구하고 (0111), 오른쪽으로부터 처음으로 1이 나오는 자리 다음부터 보수를 취하면 됩니다. (1001)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;2. 플래시의 int 를 사용할때 나타날수 있는 이슈사항&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;정수를 표현하기 위해 이용하는 비트의 자리수에 따라 표현할수 있는 정수의 최대값과 최소값이 정해지는데, 위의 4비트로 예를 들면, 부호 비트 하나를 제외한 나머지 비트열들의 경우의 수 만큼 정수를 표현할수 있습니다( 즉, 양수는 2^3 –1 , 음수는 - 2^3 ).&amp;#160; 플래시는 정수를 표현하기 위해 길기가 32인 비트패턴을 사용하므로, 최대값은 2^31 – 1 , 최소값은 -2^31 이 됩니다.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;얼마전 팀에서 모 증권 사이트 프로젝트를 진행한적이 있는데, 다른 팀원분이 금액을 나타내기 위해 int 형을 사용해서 이슈가 되었던 적이 있습니다. 즉, 원(WON) 단위 금액을 표현하는데, 최대로 표현할수 있는 수 2,147,483,647 (약 21억) 을 넘어가니까 오버플로(overflow) 가 발생한것이지요.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:f0693216-5cbe-4263-a0b4-29253dc8c253&quot; class=&quot;wlWriterEditableSmartContent&quot;&gt;Tistory 태그: &lt;a href=&quot;http://tistory.com/search/tag/actionscript?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;actionscript&lt;/a&gt;,&lt;a href=&quot;http://tistory.com/search/tag/flash?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;flash&lt;/a&gt;,&lt;a href=&quot;http://tistory.com/search/tag/int?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;int&lt;/a&gt;,&lt;a href=&quot;http://tistory.com/search/tag/2%c0%c7+%ba%b8%bc%f6%c7%a5%b1%e2%b9%fd?_top_tistory=new_tag&quot; rel=&quot;tag&quot;&gt;2의 보수표기법&lt;/a&gt;&lt;/div&gt;</description>
			<category>Actionscript3.0</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/242</guid>
			<comments>http://webnoon.net/entry/%ED%94%8C%EB%9E%98%EC%8B%9C%EC%9D%98-%EC%A0%95%EC%88%98-%ED%91%9C%ED%98%84-%EB%B0%A9%EB%B2%95#entry242comment</comments>
			<pubDate>Wed, 26 May 2010 23:42:49 +0900</pubDate>
		</item>
		<item>
			<title>책 리뷰 - &quot;Java 언어로 배우는 리팩토링 입문&quot;</title>
			<link>http://webnoon.net/entry/%EC%B1%85-%EB%A6%AC%EB%B7%B0-Java-%EC%96%B8%EC%96%B4%EB%A1%9C-%EB%B0%B0%EC%9A%B0%EB%8A%94-%EB%A6%AC%ED%8C%A9%ED%86%A0%EB%A7%81-%EC%9E%85%EB%AC%B8</link>
			<description>&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile26.uf.tistory.com/original/1279B1184BE61C0D82F1C0&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile26.uf.tistory.com/image/1279B1184BE61C0D82F1C0&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;DSCF3472.jpg&quot; height=&quot;480&quot; width=&quot;640&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-241-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-241-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-241-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>book</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/241</guid>
			<comments>http://webnoon.net/entry/%EC%B1%85-%EB%A6%AC%EB%B7%B0-Java-%EC%96%B8%EC%96%B4%EB%A1%9C-%EB%B0%B0%EC%9A%B0%EB%8A%94-%EB%A6%AC%ED%8C%A9%ED%86%A0%EB%A7%81-%EC%9E%85%EB%AC%B8#entry241comment</comments>
			<pubDate>Sun, 09 May 2010 11:22:54 +0900</pubDate>
		</item>
		<item>
			<title>컴퓨터 과학 총론 구입</title>
			<link>http://webnoon.net/entry/%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B3%BC%ED%95%99-%EC%B4%9D%EB%A1%A0-%EA%B5%AC%EC%9E%85</link>
			<description>&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile10.uf.tistory.com/original/140BDE1D4BDEC89592F4EF&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile10.uf.tistory.com/image/140BDE1D4BDEC89592F4EF&quot; alt=&quot;컴퓨터 과학 총론&quot; filemime=&quot;&quot; filename=&quot;cfile10.uf@140BDE1D4BDEC89592F4EF.jpg&quot; height=&quot;374&quot; width=&quot;381&quot;/&gt;&lt;/a&gt;&lt;/div&gt;폭넓은 배경지식을 쌓을수 있도록...&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-240-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-240-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-240-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>book</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/240</guid>
			<comments>http://webnoon.net/entry/%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B3%BC%ED%95%99-%EC%B4%9D%EB%A1%A0-%EA%B5%AC%EC%9E%85#entry240comment</comments>
			<pubDate>Mon, 03 May 2010 22:03:09 +0900</pubDate>
		</item>
		<item>
			<title>게임 서버 프로그래밍의 배경지식</title>
			<link>http://webnoon.net/entry/%EA%B2%8C%EC%9E%84-%EC%84%9C%EB%B2%84-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%EC%9D%98-%EB%B0%B0%EA%B2%BD%EC%A7%80%EC%8B%9D</link>
			<description>http://lab.gamecodi.com/board/zboard.php?id=GAMECODILAB_QnA_etc&amp;amp;page=18&amp;amp;sn1=&amp;amp;divpage=1&amp;amp;sn=off&amp;amp;ss=on&amp;amp;sc=on&amp;amp;select_arrange=headnum&amp;amp;desc=asc&amp;amp;no=73&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-239-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-239-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-239-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Java &amp; OpenGL(JOGL)</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/239</guid>
			<comments>http://webnoon.net/entry/%EA%B2%8C%EC%9E%84-%EC%84%9C%EB%B2%84-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%EC%9D%98-%EB%B0%B0%EA%B2%BD%EC%A7%80%EC%8B%9D#entry239comment</comments>
			<pubDate>Mon, 03 May 2010 18:19:33 +0900</pubDate>
		</item>
		<item>
			<title>jQuery 강좌 - 핸드폰 번호만 입력받기</title>
			<link>http://webnoon.net/entry/jQuery-%EA%B0%95%EC%A2%8C-%ED%95%B8%EB%93%9C%ED%8F%B0-%EB%B2%88%ED%98%B8%EB%A7%8C-%EC%9E%85%EB%A0%A5%EB%B0%9B%EA%B8%B0</link>
			<description>&lt;span style=&quot;font-size: 14pt; &quot;&gt;&lt;b&gt;과제&lt;/b&gt;&lt;/span&gt;&lt;div&gt;
폼 입력에 사용자가 숫자와 +, - 기호만 입력할수 있게 하고 싶다.&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-size: 14pt; &quot;&gt;&lt;b&gt;해결&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
먼저 아래와 같이 라벨과 submit 버튼 그리고 오류메세지 필드를 만들어 봅시다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&amp;lt;form id=&quot;signup&quot; method=&quot;post&quot; action=&quot;&quot;&amp;gt;&lt;br /&gt;
&amp;lt;div&amp;gt;&amp;lt;span class=&quot;test_label&quot;&amp;gt;핸드폰 번호를 입력하세요. &amp;lt;/span&amp;gt;&amp;lt;input type=&quot;text&quot; class=&quot;test_infobox&quot;&amp;nbsp;name=&quot;phone&quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&quot;test_error&quot;&amp;gt;숫자와 +,- 만 입력하실수 있습니다.&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&amp;lt;input class=&quot;test_submit&quot; type=&quot;submit&quot; value=&quot;입력&quot;&amp;gt;&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&amp;lt;/form&amp;gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
각 엘리먼트의 class 속성에 각각 &quot;test_label&quot; , &quot;test_infobox&quot;, &quot;test_submit&quot;, &quot;test_error&quot;를 지정해줍니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
스크립트 소스는 아래와 같습니다.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
$(document).ready(function() {&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
$(&#039;.test_error&#039;).hide();&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
$(&#039;.submit&#039;).click(function(event){&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
var data=$(&#039;.test_infobox&#039;).val();&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
if(validate_phoneno(data))&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
{&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 8em; &quot;&gt;
$(&#039;.test_error&#039;).hide();&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
}&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
else&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
{&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 8em; &quot;&gt;
$(&#039;.test_error&#039;).show();&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 8em; &quot;&gt;
event.preventDefault();&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;div style=&quot;margin-left: 4em; &quot;&gt;
}&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
});&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
});&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
function validate_phoneno(ph)&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
{&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
var pattern=new RegExp(/^[0-9-+]+$/);&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
return pattern.test(ph);&lt;/div&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: rgb(238, 238, 238); border-right-color: rgb(238, 238, 238); border-bottom-color: rgb(238, 238, 238); border-left-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
}&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
동작은 아래와 같이...&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;!--동작내용 --&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
$(document).ready(function() {
$(&#039;.test_error&#039;).hide();
$(&#039;.test_submit&#039;).click(function(event){
event.preventDefault();
var data=$(&#039;.test_infobox&#039;).val();
if(validate_phoneno(data))
{
$(&#039;.test_error&#039;).hide();
}
else
{
$(&#039;.test_error&#039;).show();

}
});
});
function validate_phoneno(ph)
{
var pattern=new RegExp(/^[0-9-+]+$/);
return pattern.test(ph);
}
&lt;/script&gt;
&lt;form id=&quot;signup&quot; method=&quot;post&quot; action=&quot;&quot;&gt;
&lt;div&gt;
&lt;span class=&quot;test_label&quot;&gt;핸드폰 번호를 입력하세요. &lt;/span&gt;&lt;input type=&quot;text&quot; class=&quot;test_infobox&quot; name=&quot;phone&quot;&gt;

&lt;span class=&quot;test_error&quot;&gt;숫자와 +,- 만 입력하실수 있습니다.&lt;/span&gt;&lt;/div&gt;
&lt;input class=&quot;test_submit&quot; type=&quot;submit&quot; value=&quot;입력&quot;&gt;
&lt;/form&gt;

&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-238-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-238-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-238-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>jquery</category>
			<category>jQuery 강좌</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/238</guid>
			<comments>http://webnoon.net/entry/jQuery-%EA%B0%95%EC%A2%8C-%ED%95%B8%EB%93%9C%ED%8F%B0-%EB%B2%88%ED%98%B8%EB%A7%8C-%EC%9E%85%EB%A0%A5%EB%B0%9B%EA%B8%B0#entry238comment</comments>
			<pubDate>Sat, 01 May 2010 08:39:00 +0900</pubDate>
		</item>
		<item>
			<title>심심풀이로 만들어본 플래시 게임</title>
			<link>http://webnoon.net/entry/%EC%8B%AC%EC%8B%AC%ED%92%80%EC%9D%B4%EB%A1%9C-%EB%A7%8C%EB%93%A4%EC%96%B4%EB%B3%B8-%ED%94%8C%EB%9E%98%EC%8B%9C-%EA%B2%8C%EC%9E%84</link>
			<description>회피(avoid) 게임의 일종입니다. 사실 이런 게임을 어디선가 보고 약간의 아이데이션만 추가해서 만들어본 게임입니다.&lt;br /&gt;
게임이라 하기에는 무리가 있을수도 있습니다. ^^;&lt;br /&gt;
&lt;br /&gt;간단한 공 충돌만 필요해서 다른 물리엔진은 사용하지 않았습니다.&lt;br /&gt;
&lt;br /&gt;운동량 보존법칙을 사용해서 충돌반응을 하는 시뮬레이션 자체는 어렵지 않은것이나 &quot;어디선가 보았던&quot; 아름다운 알고리즘이 있어서 그것을 약간 손보고(버그 해결?) 적용해보았습니다.&lt;br /&gt;
&lt;br /&gt;그 알고리즘에 관련되서 간단히 &lt;a title=&quot;[http://webnoon.net/entry/Actionscript-3-%EC%9B%90%EA%B3%BC-%EC%9B%90-%EC%B6%A9%EB%8F%8C-%ED%85%8C%EC%8A%A4%ED%8A%B8]로 이동합니다.&quot; target=&quot;_blank&quot; href=&quot;http://webnoon.net/entry/Actionscript-3-%EC%9B%90%EA%B3%BC-%EC%9B%90-%EC%B6%A9%EB%8F%8C-%ED%85%8C%EC%8A%A4%ED%8A%B8&quot;&gt;포스팅&lt;/a&gt;한게 있는데 날려먹기로 포스팅 한것이라 ;; 나중에 출처(어느 외국인 블로거 분이셨는데 까먹었..;;) 부터 해서 소스를 분석하는 시간을 가져보도록 해야겠습니다.&lt;br /&gt;
&lt;br /&gt;지금은 구조를 공부하고 있으니 이 게임에 한번 실험해 봐야겠네요..&lt;br /&gt;
&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;embed width=&quot;550&quot; height=&quot;550&quot; src=&quot;/attachment/cfile8.uf@1136171C4BDA863441A776.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;br /&gt;
&lt;/div&gt;녹색공을 마우스로 콘트롤하여 빨간색 공을 피하셔야 합니다. 빨간색 공끼리 충돌하면 일정 확률로 파란색 공이 되는데 그것을 드셔서 위험을 줄이세요!&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-237-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-237-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-237-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Actionscript3.0</category>
			<category>플래시 게임</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/237</guid>
			<comments>http://webnoon.net/entry/%EC%8B%AC%EC%8B%AC%ED%92%80%EC%9D%B4%EB%A1%9C-%EB%A7%8C%EB%93%A4%EC%96%B4%EB%B3%B8-%ED%94%8C%EB%9E%98%EC%8B%9C-%EA%B2%8C%EC%9E%84#entry237comment</comments>
			<pubDate>Fri, 30 Apr 2010 16:36:57 +0900</pubDate>
		</item>
		<item>
			<title>새해 들어 읽은 책들 2010.1~</title>
			<link>http://webnoon.net/entry/%EC%83%88%ED%95%B4-%EB%93%A4%EC%96%B4-%EC%9D%BD%EC%9D%80-%EC%B1%85%EB%93%A4-20101</link>
			<description>&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile22.uf.tistory.com/original/1619231D4BD97C929444DD&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile22.uf.tistory.com/image/1619231D4BD97C929444DD&quot; alt=&quot;책 리뷰,책 소개&quot; filemime=&quot;&quot; filename=&quot;cfile22.uf@1619231D4BD97C929444DD.jpg&quot; height=&quot;375&quot; width=&quot;500&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;a href=&quot;http://www.diebuster.com/&quot; target=&quot;_blank&quot; title=&quot;[http://www.diebuster.com/]로 이동합니다.&quot;&gt;hika&lt;/a&gt;님의 book 카테고리를 보고 저도 한번 책 리뷰를 해보고 싶다는 생각이 들었습니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
어떠한 주제에 관심이 있으며 왜 그런 책을 읽게 되었고 무엇을 얻을수 있었는지 공유하는건 참 괜찮은 것이라고 생각되네요.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
1. 색채학 원론&lt;/div&gt;
&lt;div&gt;&quot;느낌 좋은데?&quot; , &quot;색감 좋다~&quot; , &quot;이쁘다&quot; &amp;lt;- 주로 주위에 디자인 하는 친구나 직장에서 듣게 되는 말이었습니다. 그런데 저는 &quot;왜 저런 색조합이 느낌이 좋을까?&quot; 라는 원론적인 이론을 알고 싶었습니다. 그런데 빛이 성질에 대한 물리적인 의미를 알수 있기에는 꽤 훌륭한 책이지만 &quot;그래서 저런 색조합이 느낌이 좋구나&quot; 라는 대답은 얻기 힘든것 같습니다. ㅎㅎ&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
2. 수치해석과 그의 알고리즘&lt;/div&gt;
&lt;div&gt;대수적, 해석적 해법을 컴퓨터로는 어떻게 풀수 있을까? 라는 궁금해서 구입하게 된 책입니다. 초보자를 대상으로 한 책입니다. 구성이 깔끔하고 이해하기 좋았습니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
3. 공업수학&lt;/div&gt;
&lt;div&gt;물리가 전공이긴 합니다만... 워낙 담을 쌓고 지내다가.. 컴퓨터 프로그래밍을 접하면서 그렇겍 하기 싫었던 수학과 물리가 좋아지기 시작했습니다. ^^; 그렇지만.. 워낙 두껍게 쌓인 담인지라.. 기초적인 부분부터 다시 시작하고자 구입한 책입니다. 설명도 명쾌하니 구성도 깔끔하고 좋았습니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
4. 천재성의 비밀&lt;/div&gt;
&lt;div&gt;이 책을 설명하기 위해 책의 서문을 인용하자면 &quot;세계를 체계적으로 이해하려면, 무엇보다도 밑바닥부터 차근차근 알아나가야 할 것이다. 이 책은 밑바닥부터 훑어 올라가면서 세상을 통째로 이해하겠다는 야심찬 기획의 한 갈래이고, 물리학을 그 출발점으로 삼은 탐사여행이다. 물리적 세계상을 두루 살펴보고, 그 밑바탕이 되는 수학과 철학을 거쳐서, 모든 지식의 형태를 결정하는 우리 자신의 정신 작용을 살펴보고, 생각의 수단인 언어와 시각을 검토하는 여정은 물리학에서 출발한 기획의 필연적인 수순이라고 할수 있다&quot; 라고 하고 있습니다. 얼마나 흥미로운 이야기입니까!&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
5. 수학교사를 위한 프랙탈 기하&lt;/div&gt;
&lt;div&gt;생각보다 얇은 두깨에 놀랬던 책입니다. 그래서 그런지 내용이 그다지 충실하지 못하다는 생각을 합니다. 기분탓인지.. 아직도 손에 잘 안잡히는 책..&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile25.uf.tistory.com/original/1923631D4BD97C926EDCB9&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile25.uf.tistory.com/image/1923631D4BD97C926EDCB9&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;DSCF3466.jpg&quot; height=&quot;480&quot; width=&quot;640&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
오늘 구입한 책입니다.. 최근들어 개발 공부를 좀더 심도있게 해야겠다는 생각이 들었습니다. 무엇인가를 만들고자 할때 어디서부터 어떻게 시작해야 할지 항상 고민이 되어서 소프트웨어 구조에 대해서 공부를 해야겠다고 느꼇습니다.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
이 책은 재미있게도 1장에서 초인지, 두뇌를 정복하는 방법에 대해서 이야기 하고 있습니다. 사실 이 내용이 끌려서 책을 구입한걸수도.. ㅎㅎ&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
풍부한 예제와 초보자를 배려한 세세한 설명, 다양한 그래픽적 요소들로 책을 읽는데 지루함을 덜하고 본연의 임무에도 충실한 괜찮은 책인것 같습니다. 이책은 다 읽고 다시한번 리뷰해야겠네요 ㅎㅎ&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-236-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-236-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-236-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>book</category>
			<category>책 리뷰</category>
			<category>책 소개</category>
			<category>책 추천</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/236</guid>
			<comments>http://webnoon.net/entry/%EC%83%88%ED%95%B4-%EB%93%A4%EC%96%B4-%EC%9D%BD%EC%9D%80-%EC%B1%85%EB%93%A4-20101#entry236comment</comments>
			<pubDate>Thu, 29 Apr 2010 22:20:00 +0900</pubDate>
		</item>
		<item>
			<title>Actionscript3 - Matrix3D 의 버그??</title>
			<link>http://webnoon.net/entry/Actionscript3-Matrix3D-%EC%9D%98-%EB%B2%84%EA%B7%B8</link>
			<description>아래와 같이 내장 API인 Matrix3D 을 사용해서 객체를 X,Y,Z 축으로 로테이션 시켜보려하였습니다.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;border: 1px solid rgb(159, 211, 49); padding: 10px; background-color: rgb(231, 253, 181);&quot; class=&quot;txc-textbox&quot;&gt;
_mat = new Matrix3D();&lt;br /&gt;
_mat.identity();&lt;br /&gt;
_mat.appendRotation(1, Vector3D.Y_AXIS) ;&lt;br /&gt;
&lt;br /&gt;
_vec = new Vector3D(100,0,0) ;&lt;br /&gt;
&lt;br /&gt;
private function loop(e:Event):void&lt;br /&gt;
{&lt;br /&gt;
&lt;div style=&quot;margin-left: 4em;&quot;&gt;
_vec = _mat.transformVector(_vec) ;&lt;br /&gt;
&lt;br /&gt;
_obj.x = _vec.x ;&lt;br /&gt;
_obj.y = _vec.y ;&lt;br /&gt;
_obj.z = _vec.z ;&lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
}&lt;br /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
그런데 위와 같이 실행하면 _vec (Vector3D) 의 x,y,z 성분이 모두 0으로 수렴(?) 하게 되네요. 레퍼런스를 찾아보면 Matrix3D 의 transformVector 멤버함수는 매개변수로 넘어온 벡터에 변환을 적용한후 새로운 Vector3D 객체를 반환한다고 나오는데 해석을 잘못한건지 ..&lt;br /&gt;
&lt;br /&gt;
그래서 일단 CustomMatrix3D 클레스를 만들어 보았습니다.&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://webnoon.tistory.com/attachment/cfile8.uf@16228D264BD77875561AA4.as&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; CustomMatrix3D.as&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
CustomMatrix3D 를 사용해서 위와 같은 시도를 해보았습니다.&lt;br /&gt;
&lt;div style=&quot;border: 1px solid rgb(231, 253, 181); padding: 10px; background-color: rgb(231, 253, 181);&quot; class=&quot;txc-textbox&quot;&gt;
package example.matrix {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; import flash.display.Shape;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; import flash.events.Event;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; import flash.geom.Vector3D;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; import flash.display.Sprite;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;* @author Lee&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;* http://webnoon.net&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;*/&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public class MatrixMain extends Sprite {&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; private var _vec : Vector3D;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; private var _ball : Shape;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; private var _mat : CustomMatrix3D;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; public function MatrixMain() {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _vec = new Vector3D(100,0,0) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _vec.w = 1 ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var rad : Number = Math.PI/180 ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _mat = new CustomMatrix3D() ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _mat.rotationY(rad) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //_mat.rotationZ(rad) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //_mat.rotationX(rad) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //_mat.translation(0, 1, 0) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _ball = new Shape();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; with(_ball.graphics)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; beginFill(0xff0000) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; drawCircle(.0, .0, 10) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; endFill();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; addChild(_ball) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; addEventListener(Event.ENTER_FRAME,loop);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; private function loop(event : Event) : void {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _mat.transformVector(_vec) ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _ball.x = _vec.x + stage.stageWidth/2;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _ball.y = _vec.y + stage.stageHeight/2 ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; _ball.z = _vec.z ;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
}&lt;br /&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
[소스코드]&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://webnoon.tistory.com/attachment/cfile8.uf@112283264BD778755B99EE.as&quot;&gt;&lt;img src=&quot;http://i1.daumcdn.net/cfs.tistory/v/110706133414/blog/image/extension/unknown.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; MatrixMain.as&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;/div&gt;
아래는 실행 결과...&lt;br /&gt;
&lt;embed width=&quot;550&quot; height=&quot;400&quot; src=&quot;/attachment/cfile25.uf@122265264BD7786A587B5A.swf&quot; quality=&quot;high&quot; allowScriptAccess=&quot;always&quot; type=&quot;application/x-shockwave-flash&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot;/&gt;&lt;br /&gt;
&lt;br /&gt;
rotationX,Y,Z , translation 모두 잘 적용됨을 알수 있습니다.&lt;br /&gt;
&lt;br /&gt;&lt;span style=&quot;text-decoration: underline; color: rgb(227, 22, 0);&quot;&gt;Flash Builder4 에서 실행결과 flash.geom.Matrix3D 사용에는 이상이 없었습니다.&lt;/span&gt;&lt;br style=&quot;text-decoration: underline; color: rgb(227, 22, 0);&quot;&gt;&lt;span style=&quot;text-decoration: underline; color: rgb(227, 22, 0);&quot;&gt;오류(?) 가 발생한 환경은 FDT + Flash CS4(컴파일) 입니다.&lt;/span&gt;&lt;br style=&quot;text-decoration: underline; color: rgb(227, 22, 0);&quot;&gt;&lt;span style=&quot;text-decoration: underline; color: rgb(227, 22, 0);&quot;&gt;개발 환경이 잘못된건지 제가 실수한건지 정확히 알수는 없지만 Flash Builder4 에서 실행한 코드는 같은 코드로 실행하였습니다.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-235-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-235-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-235-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Actionscript3.0</category>
			<category>ActionScript3</category>
			<category>flash</category>
			<category>flex</category>
			<category>Matrix</category>
			<category>행렬</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/235</guid>
			<comments>http://webnoon.net/entry/Actionscript3-Matrix3D-%EC%9D%98-%EB%B2%84%EA%B7%B8#entry235comment</comments>
			<pubDate>Wed, 28 Apr 2010 08:54:20 +0900</pubDate>
		</item>
		<item>
			<title>안드로이드 멀티플레이 게임 엔진 - Mages</title>
			<link>http://webnoon.net/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EB%A9%80%ED%8B%B0%ED%94%8C%EB%A0%88%EC%9D%B4-%EA%B2%8C%EC%9E%84-%EC%97%94%EC%A7%84-Mages</link>
			<description>&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(0, 0, 0); font-family: arial, sans-serif; line-height: normal; font-size: 13px; &quot;&gt;&lt;a name=&quot;Overview&quot;&gt;&lt;p style=&quot;max-width: 65em; &quot;&gt;&lt;a name=&quot;Overview&quot;&gt;&lt;p style=&quot;max-width: 65em; display: inline !important; &quot;&gt;Mages는 안드로이드와 다른 모바일 기기를 위한 멀티플레이어 클라이언트/서버 게임 엔진입니다.&amp;nbsp;&lt;a href=&quot;http://code.google.com/p/mages/&quot;&gt;http://code.google.com/p/mages/&lt;/a&gt;&lt;/p&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;/a&gt;&lt;/span&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-234-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-234-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-234-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Android</category>
			<category>게임</category>
			<category>게임 엔진</category>
			<category>안드로이드</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/234</guid>
			<comments>http://webnoon.net/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EB%A9%80%ED%8B%B0%ED%94%8C%EB%A0%88%EC%9D%B4-%EA%B2%8C%EC%9E%84-%EC%97%94%EC%A7%84-Mages#entry234comment</comments>
			<pubDate>Sat, 24 Apr 2010 14:04:09 +0900</pubDate>
		</item>
		<item>
			<title>Android &amp; Eclipse - &quot;unparsed aapt error&quot; 오류 해결</title>
			<link>http://webnoon.net/entry/Android-Eclipse-unparsed-aapt-error-%EC%98%A4%EB%A5%98-%ED%95%B4%EA%B2%B0</link>
			<description>&lt;P&gt;XML 파일을 수정할때 종종 생기는 오류 메세지입니다. 정확한 원인은 모르겠지만 컴파일 차원에서 오류가 생기는것 같네요. 아무튼 해결법은 아래와&amp;nbsp;같습니다.&lt;br /&gt;
&lt;br /&gt;&amp;nbsp;오류 메세지에 마우스 오른쪽 버튼 클릭후 &quot;Delete&quot;를 선택.&lt;/P&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-233-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-233-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-233-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>Android</category>
			<category>Android</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/233</guid>
			<comments>http://webnoon.net/entry/Android-Eclipse-unparsed-aapt-error-%EC%98%A4%EB%A5%98-%ED%95%B4%EA%B2%B0#entry233comment</comments>
			<pubDate>Wed, 21 Apr 2010 11:14:21 +0900</pubDate>
		</item>
		<item>
			<title>디자인이 훌륭한 메뉴(navigation) 예제</title>
			<link>http://webnoon.net/entry/%EB%94%94%EC%9E%90%EC%9D%B8%EC%9D%B4-%ED%9B%8C%EB%A5%AD%ED%95%9C-%EB%A9%94%EB%89%B4navigation-%EC%98%88%EC%A0%9C</link>
			<description>&lt;br /&gt;
&lt;A title=&quot;[http://www.smashingmagazine.com/2010/04/19/showcase-of-beautiful-vertical-navigation-designs/]로 이동합니다.&quot; href=&quot;http://www.smashingmagazine.com/&quot; target=_blank&gt;SMASHING &lt;/A&gt;에서 &lt;A title=&quot;[http://www.smashingmagazine.com/2010/04/19/showcase-of-beautiful-vertical-navigation-designs/]로 이동합니다.&quot; href=&quot;http://www.smashingmagazine.com/2010/04/19/showcase-of-beautiful-vertical-navigation-designs/&quot; target=_blank&gt;Showcase Of Beautiful Vertical Navigation Designs&lt;/A&gt; 라는 제목으로 훌륭한 네비게이션 디자인을 소개하고 있네요.&lt;br /&gt;
&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;a href=&quot;http://cfile25.uf.tistory.com/original/176749054BCCED845C09EC&quot; rel=&quot;lightbox&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://cfile25.uf.tistory.com/image/176749054BCCED845C09EC&quot; alt=&quot;디자인이 훌륭한 메뉴 예제&quot; filemime=&quot;&quot; filename=&quot;cfile25.uf@176749054BCCED845C09EC.png&quot; height=&quot;390&quot; width=&quot;500&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;entry-ccl&quot; style=&quot;clear: both; text-align: right; margin-bottom: 10px&quot;&gt;
	&lt;img id=&quot;ccl-icon-232-0&quot; class=&quot;entry-ccl-by&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black01.png&quot; alt=&quot;저작자 표시&quot;/&gt;
	&lt;img id=&quot;ccl-icon-232-1&quot; class=&quot;entry-ccl-nc&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black02.png&quot; alt=&quot;비영리&quot;/&gt;
	&lt;img id=&quot;ccl-icon-232-2&quot; class=&quot;entry-ccl-nd&quot; src=&quot;http://i1.daumcdn.net/cfs.tistory/v/0/static/admin/editor/ccl_black03.png&quot; alt=&quot;변경 금지&quot;/&gt;
	&lt;!--
	&lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
		&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
		&lt;/Work&gt;
		&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;
			&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;
		&lt;/License&gt;
	&lt;/rdf:RDF&gt;
	--&gt;
&lt;/div&gt;
</description>
			<category>web</category>
			<category>네비게이션</category>
			<category>디자인</category>
			<category>메뉴</category>
			<author>웹눈</author>
			<guid>http://webnoon.net/232</guid>
			<comments>http://webnoon.net/entry/%EB%94%94%EC%9E%90%EC%9D%B8%EC%9D%B4-%ED%9B%8C%EB%A5%AD%ED%95%9C-%EB%A9%94%EB%89%B4navigation-%EC%98%88%EC%A0%9C#entry232comment</comments>
			<pubDate>Tue, 20 Apr 2010 08:56:16 +0900</pubDate>
		</item>
	</channel>
</rss>

