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

<channel>
	<title>Kimkijeung.com &#187; oop</title>
	<atom:link href="http://kimkijeung.com/tag/oop/feed/" rel="self" type="application/rss+xml" />
	<link>http://kimkijeung.com</link>
	<description>Interactive development,flash,Actionscript</description>
	<lastBuildDate>Wed, 25 Aug 2010 09:12:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<image>
			<title>Kimkijeung.com</title>
			<url>http://kimkijeung.com/blog/wp-content/uploads/2009/12/index.gif</url>
			<link>http://kimkijeung.com</link>
			<width></width>
			<height></height>
			<description>Interactive development,flash,Actionscript</description>
		</image>		<item>
		<title>Demeter 함수 법칙</title>
		<link>http://kimkijeung.com/2006/05/17/demeter-%ed%95%a8%ec%88%98-%eb%b2%95%ec%b9%99/</link>
		<comments>http://kimkijeung.com/2006/05/17/demeter-%ed%95%a8%ec%88%98-%eb%b2%95%ec%b9%99/#comments</comments>
		<pubDate>Tue, 16 May 2006 16:39:46 +0000</pubDate>
		<dc:creator>vkimone</dc:creator>
				<category><![CDATA[Programming-OOP&OOD]]></category>
		<category><![CDATA[demeter]]></category>
		<category><![CDATA[oop]]></category>

		<guid isPermaLink="false">http://localhost:8888/blog/?p=110</guid>
		<description><![CDATA[디미터 함수 법칙은 프로그램에서 모듈간 결합도를 최소화하려 시도한다. 이법칙은 한 객체가 제공하는 메서드에 접근하기 위해 또 다른 객체들을 통하는 것을 허용하지 않는다. 디미터 함수 법칙 &#8211; 모든 메서드는 다음에 해당하는 메서드만을 호출해야 한다. class Demeter &#123; private : A *a; Int func&#40;&#41;; public : //... void example&#40;B&#38;  b&#41;; &#125; void Demeter :: example&#40;B&#38; b&#41;&#123; C c; [...]]]></description>
			<content:encoded><![CDATA[<p>디미터 함수 법칙은 프로그램에서 모듈간 결합도를 최소화하려 시도한다.</p>
<p>이법칙은 한 객체가 제공하는 메서드에 접근하기 위해 또 다른 객체들을 통하는 것을 허용하지 않는다.</p>
<p><span style="color: #8e8e8e;">디미터 함수 법칙 &#8211; 모든 메서드는 다음에 해당하는 메서드만을 호출해야 한다.</span></p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> Demeter <span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #339933;">:</span>
A <span style="color: #339933;">*</span>a<span style="color: #339933;">;</span>
Int func<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #339933;">:</span>
<span style="color: #666666; font-style: italic;">//...</span>
<span style="color: #000066; font-weight: bold;">void</span> example<span style="color: #009900;">&#40;</span>B<span style="color: #339933;">&amp;</span>  b<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000066; font-weight: bold;">void</span> Demeter <span style="color: #339933;">::</span> example<span style="color: #009900;">&#40;</span>B<span style="color: #339933;">&amp;</span> b<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
C c<span style="color: #339933;">;</span>
Int f<span style="color: #339933;">=</span> func<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  <span style="color: #666666; font-style: italic;">//----------- 자신</span>
b.<span style="color: #006633;">invert</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//--------------메서드로 넘어온 인자</span>
a<span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> A<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
a<span style="color: #339933;">-&gt;</span>setActive<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//---------자신이 생성한 객체</span>
c.<span style="color: #006633;">print</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//---------------직접 포함하고 있는 객체</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><span style="color: #8e8e8e;"><a href="http://www.ccs.neu.edu/research/demeter"><span style="color: #0000ff;">참고 디미터 프로젝트</span></a></span><span style="color: #333333;"> &#8211; 적응적 프로그래밍(Adaptive programming) 을 이용해서 소프트웨어를 유지보수하기 쉽고 진화하기도 쉽게 만드는데 초점을 두는 연구</span></p>
]]></content:encoded>
			<wfw:commentRss>http://kimkijeung.com/2006/05/17/demeter-%ed%95%a8%ec%88%98-%eb%b2%95%ec%b9%99/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
