<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>devMomo</title>
		<link>http://ash84.tistory.com/</link>
		<description>작가주의 프로그래머</description>
		<language>ko</language>
		<pubDate>Tue, 15 May 2012 23:34:09 +0900</pubDate>
		<generator>Tistory 1.1 (http://www.tistory.com/)</generator>
		<managingEditor>ASH84</managingEditor>
		<item>
			<title>[findbugs] FileWriter, FileReader DM_DEFAULT_ENCODING 처리하기</title>
			<link>http://ash84.tistory.com/783</link>
			<description>&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;findbugs를 통해서 잠재적 위험 검사를 할때, 일반적으로 텍스트 파일을 읽거나 쓰는 코드에서&amp;nbsp;DM_DEFAULT_ENCODING 경고가 뜬다.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;pre class=&quot;brush: java&quot;&gt; 
FileReader logReader = new FileReader(log);

FileWriter logReader = new FileWriter(log);
&lt;/pre&gt;



&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;해당 잠재적 위험에 대한 내용을 살펴보면,&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; &quot;&gt;&lt;/p&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(203, 203, 203); border-right-color: rgb(203, 203, 203); border-bottom-color: rgb(203, 203, 203); border-left-color: rgb(203, 203, 203); background-color: rgb(255, 255, 255); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;&lt;p class=&quot;p1&quot; style=&quot;list-style-type: none; list-style-position: initial; list-style-image: initial; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(102, 102, 102); font-family: dotum; line-height: 2; &quot;&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;Bug&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot; style=&quot;list-style-type: none; list-style-position: initial; list-style-image: initial; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(102, 102, 102); font-family: dotum; line-height: 2; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;Found reliance on default encoding&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;in com.logamg.analysis.LogAnalysis.analysisLog(String): new java.io.FileReader(File)&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; line-height: 2; &quot;&gt;Found a call to a method which will perform a byte to String (or String to byte) conversion, and will assume that the default platform encoding is suitable. This will cause the application behaviour to vary between platforms. Use an alternative API and specify a charset name or Charset object explicitly.&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p2&quot; style=&quot;list-style-type: none; list-style-position: initial; list-style-image: initial; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(102, 102, 102); font-family: dotum; line-height: 2; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p2&quot; style=&quot;list-style-type: none; list-style-position: initial; list-style-image: initial; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(102, 102, 102); font-family: dotum; line-height: 2; &quot;&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;Confidence&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;: High,&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;Rank&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;: Of Concern (19)&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;Pattern&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;: DM_DEFAULT_ENCODING&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;Type&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;: Dm,&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;Category&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: rgb(51, 51, 51); &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;: I18N (Internationalization&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p class=&quot;p2&quot; style=&quot;list-style-type: none; list-style-position: initial; list-style-image: initial; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(102, 102, 102); font-family: dotum; line-height: 16px; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p2&quot; style=&quot;list-style-type: none; list-style-position: initial; list-style-image: initial; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: dotum; line-height: 16px; &quot;&gt;&lt;span style=&quot;font-size: 15px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p2&quot; style=&quot;list-style-type: none; list-style-position: initial; list-style-image: initial; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(102, 102, 102); font-family: dotum; line-height: 2; &quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;즉, 인코딩 지정에 대한 문제이다. 사실 위의 코드의 부분에서의 문제가 아니라, FileReader 나 FileWriter 를 BufferedReader, BufferedWriter 쓸때 문제가 생긴다. 즉, 이런식으로 말이다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;pre class=&quot;brush: java&quot;&gt;FileReader logReader = new FileReader(logPath);
BufferedReader bufReader = new BufferedReader(logReader);
&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot;&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; &quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;인코딩 문제라는것은 알았는데, 대안 API(Alternative API)를 쓰라고만 나와서 약간 막막했는데,&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;다음과 같이 수정하면 된다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot;&gt;&lt;span style=&quot;font-size: 15px; line-height: 22px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;p1&quot;&gt;&lt;span style=&quot;font-size: 15px; line-height: 22px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;

&lt;pre class=&quot;brush: java&quot;&gt;BufferedReader brd = new BufferedReader(new InputStreamReader(new FileInputStream(logPath), &quot;EUCKR&quot;));
&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;&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-783-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-783-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-783-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>etc</category>
			<category>DM_DEFAULT_ENCODING</category>
			<category>encoding</category>
			<category>FindBugs</category>
			<category>Found reliance on default encoding</category>
			<category>정적분석툴</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/783</guid>
			<comments>http://ash84.tistory.com/783#entry783comment</comments>
			<pubDate>Sun, 15 Apr 2012 00:01:14 +0900</pubDate>
		</item>
		<item>
			<title>shop.github.com</title>
			<link>http://ash84.tistory.com/782</link>
			<description>&lt;p style=&quot;text-align: center; clear: none; float: none; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style=&quot;text-align: -webkit-auto;&quot;&gt;&lt;p style=&quot;text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile29.uf.tistory.com/image/117383474F80D93B068833&quot; filemime=&quot;image/jpeg&quot; filename=&quot;스크린샷 2012-04-08 오전 9.13.41.png&quot; height=&quot;367&quot; width=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;좋아라 하는 github에는 다양한 github 관련 상품이 파는데,&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;특히 그 중에서 스티커랑 머그컵이 가장 갖고 싶다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;아래의 머그컵인데, 넘흐 갖고 싶다 @.@ 현재 일시 매진 상태인데, 얼른 풀렸으면 좋겠당. ㅠ&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile7.uf.tistory.com/image/20571E4C4F80E38A29E873&quot; filemime=&quot;image/jpeg&quot; filename=&quot;MG_0878.jpg&quot; height=&quot;500&quot; width=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile7.uf.tistory.com/image/205F594C4F80E3971FFDCA&quot; filemime=&quot;image/jpeg&quot; filename=&quot;MG_0888.jpg&quot; height=&quot;496&quot; width=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&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-782-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-782-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-782-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>Daily</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/782</guid>
			<comments>http://ash84.tistory.com/782#entry782comment</comments>
			<pubDate>Sun, 08 Apr 2012 10:02:49 +0900</pubDate>
		</item>
		<item>
			<title>온라인 일정관리 툴, trello.com 사용 후기</title>
			<link>http://ash84.tistory.com/781</link>
			<description>&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이전 부터 알고 있는 서비스이긴 했지만, 같이 자바 스터디를 는 분 중에 상급 개발자분께서 추천해준 툴인 trello.com. 일단 구글 계정을 기반으로 로그인을 할수 있다는게 편하고, 만약 회사에서 사용한다면 따로 이메일을 넣어서 가입을 하던지 해서 사용해야 겠지만.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;일단 저는 아래와 같이 여러가지 카테고리를 두고 사용하고 있습니다. 회사, 하고 싶은일, 블로그 등등. 기본적인 일정 자체는 구글 캘린더로 관리를 하지만, 프로젝트성이나, 뭔가 시간을 투자해서 해야하는 일은 trello.com을 통해서 현재는 관리하고 있는 실정입니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;line-height: 2; text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile10.uf.tistory.com/image/135505484F80C0590DE4A1&quot; filemime=&quot;image/jpeg&quot; filename=&quot;스크린샷 2012-04-08 오전 7.26.28.png&quot; height=&quot;287&quot; width=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;그리고 그 안으로 들어가 보면 아래의 화면처럼 나옵니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;clear: none; float: none; text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;line-height: 2; text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile6.uf.tistory.com/image/111C74474F80C0790E5892&quot; filemime=&quot;image/jpeg&quot; filename=&quot;스크린샷 2012-04-08 오전 7.26.45.png&quot; height=&quot;194&quot; width=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;clear: none; float: none; text-align: justify; line-height: 2; &quot;&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;line-height: 2; clear: none; float: none; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;line-height: 2; text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile7.uf.tistory.com/image/120802344F80C192101011&quot; filemime=&quot;image/jpeg&quot; filename=&quot;스크린샷 2012-04-08 오전 7.33.21.png&quot; height=&quot;230&quot; width=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;line-height: 2; text-align: center; clear: none; float: none; &quot;&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;보시는 것과 같이 기본적으로 To Do, Doing, Done 리스트가&amp;nbsp;기본적으로 생성 되어 있지만, 저 부분의 이름은 바꿀수가 있습니다. 그리고 리스트는 계속 늘릴수가 있습니다. 각 일정의 상태를 구분해 놓고 진행되는 상태에 따라 해당 일정을 이동시켜주면 아주 편하더라구요.&amp;nbsp;스크럼에서 포스트잍을 통해서 태스크보드 구성을 하는데, 여기서는 그것이 온라인화되어 있다고 보면 될것 같습니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;세부 사항으로 들어가보면 화면은 아래와 같습니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;line-height: 2; text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile6.uf.tistory.com/image/2021AC3C4F80C1AD0CB5CC&quot; filemime=&quot;image/jpeg&quot; filename=&quot;스크린샷 2012-04-08 오전 7.27.02.png&quot; height=&quot;602&quot; width=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;일단 이 화면에서 제가 생각하는 가장큰 장점은&amp;nbsp;나 혼자 사용하더라도, 일정 관리는 물론이고 각 일정 각각에 대해서 코멘트, 링크는 물론이고 이미지, 파일까지 첨부할 수 있다는 것 입니다. 이렇게 되면 현재 단계에서 내가 한 일에 대해서 기록할 수 있어서 다음에 다시 진행할때 이력이나 정보를 다시 꺼내 볼수 있어서 유용합니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;clear: none; float: none; text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:640px;&quot;&gt;&lt;img src=&quot;http://cfile6.uf.tistory.com/image/141E7C494F80D10315D5AE&quot; filemime=&quot;image/jpeg&quot; filename=&quot;trello-4.jpg&quot; height=&quot;360&quot; style=&quot;width: 640px; height: 360px; &quot; width=&quot;640&quot;/&gt;&lt;span class=&quot;cap1&quot; style=&quot;display:block;width:640px;&quot;&gt;여러사람과 함께 사용한다면, 정말 좋겠죠?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그리고 만약 다른 사용자, 회사에서 팀내 다른 팀원들과 함께 사용한다면, 내가 만든 태스크를 다른 사람에게 할당할 수도 있다. 또한 다른 사람의 태스크에도 댓글을 달수도 있고, 그 태스크에 대해서 vote(일종의 like)를 할수도 있습니다. 그리고 색깔별로 label을 줄수도 있습니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;아래의 동영상을 보시면, 좀더 자세한 사용법을 보실수가 있습니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;center&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;
&lt;/span&gt;&lt;object style=&quot;height: 390px; width: 640px&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/aaDf1RqeLfo?version=3&amp;feature=player_detailpage&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt;&lt;embed src=&quot;http://www.youtube.com/v/aaDf1RqeLfo?version=3&amp;feature=player_detailpage&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; width=&quot;640&quot; height=&quot;360&quot;&gt;&lt;/object&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;
&lt;/span&gt;&lt;/center&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none; &quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display:inline-block;width:412px;&quot;&gt;&lt;img src=&quot;http://cfile7.uf.tistory.com/image/150988494F80D5F62C908F&quot; filemime=&quot;image/jpeg&quot; filename=&quot;trello-freehand.jpg&quot; height=&quot;600&quot; width=&quot;412&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&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-781-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-781-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-781-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>ITWallet</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/781</guid>
			<comments>http://ash84.tistory.com/781#entry781comment</comments>
			<pubDate>Sun, 08 Apr 2012 09:05:22 +0900</pubDate>
		</item>
		<item>
			<title>[DesignPattern] 데코레이터 패턴</title>
			<link>http://ash84.tistory.com/780</link>
			<description>&lt;center&gt;&lt;div style=&quot;width:425px&quot; id=&quot;__ss_12262824&quot;&gt;&lt;p&gt;&lt;strong style=&quot;display:block;margin:12px 0 4px&quot;&gt;&lt;a href=&quot;http://www.slideshare.net/sh84ahn/ss-12262824&quot; title=&quot;디자인 패턴 데코레이터 패턴&quot;&gt;디자인 패턴 데코레이터 패턴&lt;/a&gt;&lt;/strong&gt;&lt;object id=&quot;__sse12262824&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=random-120402190158-phpapp02&amp;stripped_title=ss-12262824&amp;userName=sh84ahn&quot; /&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;/&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;/&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;/&gt;&lt;embed name=&quot;__sse12262824&quot; src=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=random-120402190158-phpapp02&amp;stripped_title=ss-12262824&amp;userName=sh84ahn&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;div style=&quot;padding:5px 0 12px&quot;&gt;View more &lt;a href=&quot;http://www.slideshare.net/&quot;&gt;presentations&lt;/a&gt; from &lt;a href=&quot;http://www.slideshare.net/sh84ahn&quot;&gt;SeonyHyun Ahn&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/center&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;b&gt;데코레이터 패턴에 대한 나름의 견해.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;- 쓰기 참 난해하기도 하고 애매하기도 한 패턴.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;- 굳이 추상클래스로 저렇게 해도 결국에 추상 클래스의 내용이 추가 되거나, 하게 되면 종속성이 생겨서 다시 인터페이스로 빼게 되는 현상이 생길것이 뻔한 과정이 될듯.&amp;nbsp;&lt;/span&gt;&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-780-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-780-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-780-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>DesignPattern</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/780</guid>
			<comments>http://ash84.tistory.com/780#entry780comment</comments>
			<pubDate>Tue, 03 Apr 2012 11:50:33 +0900</pubDate>
		</item>
		<item>
			<title>[C#] 실행시간/동작시간 측정하기</title>
			<link>http://ash84.tistory.com/779</link>
			<description>&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div style=&quot;line-height: 1.5; &quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;p style=&quot;text-align: justify;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;&lt;/p&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(203, 203, 203); border-right-color: rgb(203, 203, 203); border-bottom-color: rgb(203, 203, 203); border-left-color: rgb(203, 203, 203); background-color: rgb(255, 255, 255); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;p style=&quot;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;매일매일 개발하는 소스코드를 올리고 있습니다. 원래는 프로젝트가 끝나고 올리려고 했으나, 그러다 보니 까먹는 경우가 있어서 이렇게 매일매일 올리는 소스코드 입니다. 제가 쓴 소스코드의 문제 혹은 개선점이 있으면 언제든지 댓글 달아 주세요&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;최근에 C#으로 만든 프로그램이 문제가 있어서 테스트 하던 중에, 실행 시간 즉, 속도에 대한 부분을 측정해야할 일이 있었는데, 구글검색을 통해서 한 프로그래머의 블로그에서 실행 시간을 측정하는 자료를 보고 내 나름대로 함수화해서 테스트에 이용했다. 별거 없는 C# 언어에서의 시간측정 함수임.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;


&lt;pre class=&quot;brush:csharp&quot;&gt; 
 DateTime startDateTime = new DateTime();
 startDateTime = DateTime.Now; //현재 시간 저장 
&lt;/pre&gt;

&lt;br /&gt;
&lt;pre class=&quot;brush:csharp&quot;&gt;  
Console.WriteLine(&quot;Elasped Time[seconds] = {0}&quot;, MeasureRunTime(startDateTime));
&lt;/pre&gt;


&lt;br /&gt;
&lt;pre class=&quot;brush:csharp&quot;&gt;  
static string MeasureRunTime(DateTime startDateTime)
{
     DateTime endDateTime = new DateTime();
     endDateTime = DateTime.Now;
     return endDateTime.Subtract(startDateTime).TotalSeconds.ToString(&quot;#.##&quot;);
}
&lt;/pre&gt;



&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;br /&gt;
자바나 다른 언어의 실행시간 측정 코드를 트랙백으로 받고 있습니다. 원츄.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&amp;nbsp;&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-779-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-779-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-779-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>C/C++/C#</category>
			<category>c#</category>
			<category>Class</category>
			<category>datetime</category>
			<category>실행시간</category>
			<category>실행시간 측정</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/779</guid>
			<comments>http://ash84.tistory.com/779#entry779comment</comments>
			<pubDate>Thu, 22 Mar 2012 20:00:42 +0900</pubDate>
		</item>
		<item>
			<title>[CleanCode] 조건문의 캡슐화를 하자.</title>
			<link>http://ash84.tistory.com/778</link>
			<description>&lt;div style=&quot;color: rgb(51, 51, 51); font-family: 굴림; text-align: justify; font-size: 9pt; line-height: 2; &quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 15px; line-height: 2; &quot;&gt;CleanCode의 신봉자로서 맨 처음 여러분께 소개해드릴 내용을 그리 거창한 것도, 특별한 디자인패턴을 요하는 기술도 아니지만 개인적으로 CleanCode라는 책을 읽고 가장 많이 사용하는 부분을 가장 먼저 소개해 드릴려고 합니다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font class=&quot;Apple-style-span&quot; color=&quot;#333333&quot; face=&quot;굴림&quot;&gt;&lt;br /&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(51, 51, 51); font-family: 굴림; font-size: 15px; line-height: 2; &quot;&gt;&lt;b&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(203, 203, 203); border-right-color: rgb(203, 203, 203); border-bottom-color: rgb(203, 203, 203); border-left-color: rgb(203, 203, 203); background-color: rgb(255, 255, 255); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;p style=&quot;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;조건문의 캡슐화를 하자.&amp;nbsp;&lt;br /&gt;
&lt;/p&gt;&lt;/div&gt;
&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: rgb(51, 51, 51); font-family: 굴림; font-size: 15px; line-height: 2; &quot;&gt;CleanCode의 &lt;b&gt;&quot;냄새와 발견법&quot;&lt;/b&gt; 부분에서 &lt;b&gt;G28&lt;/b&gt;에 해당하는 부분입니다. 일단 말이 좀 어려울수도 있는데, 쉽게 풀어서 이야기 하면 if 조건절에 들어가는 문을 함수화하자는 이야기 입니다. 일단 아래의 코드를 보시죠.
&lt;br /&gt;
&amp;nbsp;&lt;/span&gt;&lt;/div&gt;

&lt;pre class=&quot;brush:cpp&quot;&gt; 
 if(para_text_buffer == &quot;\0&quot;)
 {
   return 0; 
 }

if(para_text_buffer == NULL)
 {
   return 0; 
 }
&lt;/pre&gt;
 

&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: 굴림; font-size: 15px; line-height: 2; &quot;&gt;&lt;div style=&quot;text-align: justify; &quot;&gt;
최근에 분석하고 있는 회사내 특정 코드에 대한 부분인데요, 일반적으로 문자열 변수에 대한 널유무를 체크하는 부분입니다. 그렇다면 위의 조건문을 캡슐화를 한다면 어떻게 하는게 좋을까요? 저는 이렇게 했습니다.&lt;br /&gt;
&lt;br /&gt;

&lt;pre class=&quot;brush:cpp&quot; style=&quot;color: rgb(51, 51, 51); &quot;&gt; 
if(IsTextBufferNull(para_text_buffer))
{
     return 0;
}  

int IsTextBufferNull(chat* text_buffer)
{ 
      int rc = 0;
      if(text_buffer ==&quot;\0&quot; || text_buffer == NULL)

      {    
          rc = 1;   
      }
     
     return rc;
  }
&lt;/pre&gt;

&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;&lt;br /&gt;
일단 위의 코드를 보시면 그 전에는 &lt;font color=&quot;#5c7fb0&quot;&gt;지저분해있던 문자열의 널을 체크하는 두개의 조건문을 하나로 합치면서 이 부분이 확실하게 문자열의 널 유무를 체크하는 것이라는 점에서 IsTextBufferNull 이라는 이름을 통해서 확실하게 제공하고 있습니다.&lt;/font&gt; 이런 경우에는 개발자가 굳이 저 함수를 들어가보지 않아도 이름만 잘 짓는다면, 함수의 역할에 대해서 쉽게 유추할 수 있는 부분을 줄수 있어서 매우 좋다고 생각합니다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; line-height: 2; &quot;&gt;또 다른 예를 볼까요?&lt;br /&gt;
&lt;br /&gt;

&lt;pre class=&quot;brush:cpp&quot;&gt; 
if(m_kern-&amp;gt;m_cfg_use_pattern_exception == 1)
{ ….}

if(m_kern-&amp;gt;m_cfg_use_text_exception == 1)
{ ….}

if(m_kern-&amp;gt;m_cfg_use_special_char_exception == 1)
{ ….}

&lt;/pre&gt;

&lt;br /&gt;
&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; line-height: 2; &quot;&gt;위의 코드는 설정 클래스에 있는 값을 가져와서 다른 클래스에서 조건문에서 검사해서 특정 수행을 하는 코드입니다. 실제 제가 손을 대기전의 모습입니다. 일단 문제를 파악해 보면, m_로 시작하는 문구가 많아서 쉽게 조건문에서 무엇을 하는지 눈에 들어오지가 않습니다. 물론 Clean Code 책을 읽어보면 저러한 접두어에 대한 부분 역시 최근에는 IDE의 지원으로 인해서 굳이 할 필요 없다고 합니다. (이 부분에는 언어적 사견이 있음.)&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; line-height: 1.5; &quot;&gt;그래서 일단 이렇게 바꿔보았습니다.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-size: 11pt; line-height: 1.5; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;

&lt;pre class=&quot;brush:cpp&quot;&gt; 
if(UsePatternException())
{…}

if(UseTextException())
{…}

if(UseSpecialCharException())
{…}

&lt;/pre&gt;
&lt;span style=&quot;font-family: 굴림; font-size: 11pt; line-height: 2; &quot;&gt;&lt;div style=&quot;text-align: justify; &quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;&amp;nbsp;&lt;br /&gt;
일단 함수화하기전의 문제점은 조건문이 길어지게 되면 당연히 조건문 자체에 대한 가독성이 떨어지게 됩니다. 위의 코드의 경우에는 조건문 자체가 그리 복잡하지는 않지만 대부분의 소스에서는 &amp;amp;&amp;amp;, || 과 각종 연산자를 사용하면서 조건문이 복잡해지고, 지역변수 혹은 멤버변수가 아닌 외부 클래스의 변수를 끌어다쓰게 되면 조건문이 더러워질수 밖에 없습니다.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
위의 고친 코드가 주는 효과는 2가지 입니다. 일단 첫 사례와 같이 함수화 해서 의미있는 이름을 제공함에 따라 개발자는 당연히 함수 내부를 보지 않아도 &lt;font color=&quot;#5c7fb0&quot;&gt;대략적인 기능을 함수이름을 통해서 제공받을수 있습니다.&lt;/font&gt; 개발자는 UsePatternException()이라는 함수명을 보고, &quot;아, 몬지는 모르겠는데 패턴제외 라는 것을 사용하는지 여부를 체크하는거구나&quot; 라고 인식 할 수가 있습니다.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
두번째 효과는 &lt;font color=&quot;#5c7fb0&quot;&gt;함수화한 조건문의 이름의 일관성으로 인해서 생기는 학습의 효과&lt;/font&gt;입니다. 일단 함수명 역시 클린코드에서는 비슷한 역할을 할때에는 일관성 있는 이름을 제공하라고 이야기하고 있습니다. 즉, UsePatternException()이라는 함수를 개발자가 내부를 들여다 보면, &quot;아 , 설정 클래스의 특정 변수의 값을 체크해서 판별하는 구나&quot; 라고 생각하게 되고, 비슷한 이름의 UseTextException(), UseSpecialCharException() 함수 역시 대략적인 세부 기능에 대해서 유추 할수 있게 됩니다.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
이번 시간에는 조건의 캡슐화에 대해서 알아 보았습니다. 첫 시간에 이 주제를 잡은 가장 큰 이유는 특별한 패턴이나 지식이 없더라도 이름만 지을줄 안다면 소스코드 상에서 CleanCode의 사례를 구현해 볼수 있는 가장 작은 단위이기 때문에 소개하게 되었습니다.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
저 역시 새로만드는 코드보다는 유지보수하고 남이 짜 놓은 소스를 고치는 경우가 많기 때문에 당연히 이런 사례들을 많이 보게 되는데 소스코드를 싹 바꾸겠다라고 하면 한도 끝도 없기 떄문에 &lt;font color=&quot;#5c7fb0&quot;&gt;그때 그때 자신이 고치거나 유지보수한 부분에서 위와 같은 부분이 있다면 바꾸는것 부터 시작하는것이 쉬운 Clean Code 실천의 첫 걸음이라고 생각합니다.&amp;nbsp;&lt;/font&gt;&lt;br /&gt;
&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: 굴림; font-size: 11pt; line-height: 2; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 51); font-family: 굴림; font-size: 11pt; line-height: 2; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;&lt;/span&gt;&lt;/div&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-778-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-778-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-778-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>CleanCode</category>
			<category>Cleancode</category>
			<category>G28</category>
			<category>조건문을 캡슐화하라</category>
			<category>클린코드</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/778</guid>
			<comments>http://ash84.tistory.com/778#entry778comment</comments>
			<pubDate>Sun, 18 Mar 2012 06:01:12 +0900</pubDate>
		</item>
		<item>
			<title>[C#] WMI를 이용한 현재 메모리 사용량 구하기</title>
			<link>http://ash84.tistory.com/776</link>
			<description>&lt;div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div style=&quot;line-height: 1.5; &quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;p style=&quot;text-align: justify;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &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(203, 203, 203); border-right-color: rgb(203, 203, 203); border-bottom-color: rgb(203, 203, 203); border-left-color: rgb(203, 203, 203); background-color: rgb(255, 255, 255); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;p style=&quot;text-align: justify;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;매일매일 개발하는 소스코드를 올리고 있습니다. 원래는 프로젝트가 끝나고 올리려고 했으나, 그러다 보니 까먹는 경우가 있어서 이렇게 매일매일 올리는 소스코드 입니다. 제가 쓴 소스코드의 문제 혹은 개선점이 있으면 언제든지 댓글 달아 주세요&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p style=&quot;line-height: 2; &quot;&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;font color=&quot;#222222&quot; face=&quot;arial, sans-serif&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;font color=&quot;#222222&quot; face=&quot;arial, sans-serif&quot;&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;font color=&quot;#222222&quot; face=&quot;arial, sans-serif&quot;&gt;&lt;div style=&quot;line-height: 2; text-align: justify; &quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;최근에 메모리 사용량을 측정해서 특정 메모리 사용량 이상 혹은 몇 퍼센트(%)이상이 되면 특정 기능을 수행하도록 하는 코드를 C#으로 작성을 했습니다. 그런데 처음에 가장 어려웠던 부분이 메모리의 사용량 즉, 작업 관리자를 눌러서 성능란에서 원래 물리적인 메모리가 얼마인데, 현재 사용량, 남은 사용량, 그리고 퍼센트를 구하는 방법이었습니다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;span style=&quot;line-height: normal; font-size: 11pt; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; &quot;&gt;일단 코드를 보시면 아래와 같습니다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;

&lt;br /&gt;
&lt;br /&gt;

&lt;pre class=&quot;brush:csharp&quot;&gt;
ManagementClass cls = new ManagementClass(&quot;Win32_OperatingSystem&quot;);          
ManagementObjectCollection instances = cls.GetInstances();
         


foreach (ManagementObject info in instances)
{
  Console.WriteLine(&quot;Memory Information ================================&quot;);
  Console.WriteLine(&quot;Total Physical Memory :{0:#,###} KB&quot;, info[&quot;TotalVisibleMemorySize&quot;]);
  Console.WriteLine(&quot;Free Physical Memory :{0:#,###} MB&quot;, info[&quot;FreePhysicalMemory&quot;]);
                    
  int total_physical_memeory = int.Parse(info[&quot;TotalVisibleMemorySize&quot;].ToString());
  int free_physical_memeory = int.Parse(info[&quot;FreePhysicalMemory&quot;].ToString());
  int remmain_physical_memory = total_physical_memeory - free_physical_memeory;


  Console.WriteLine(&quot;Memory Usage Percent = {0} %&quot;,100 * remmain_physical_memory / total_physical_memeory);


}



&lt;/pre&gt;


&lt;br /&gt;
&lt;/div&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;font color=&quot;#222222&quot; face=&quot;arial, sans-serif&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;/font&gt;



&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;span style=&quot;line-height: 2; font-size: 11pt; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;위에 코드를 보시면 일단 ManagementClass 인스턴스를 만드는데 여기에서 String 형식의 인자로 &lt;a href=&quot;http://www.simpleisbest.net/articles/181.aspx&quot; target=&quot;_blank&quot; title=&quot;[http://www.simpleisbest.net/articles/181.aspx]로 이동합니다.&quot;&gt;WMI(Windows Management Instrumentation)&lt;/a&gt; 클래스 경로를 넘겨주게 되어 있습니다. 그래서 찾아 보니 다양한 클래스 형식이 있는데 여기서는 OS 관련된 부분에 대해서 일단 선택을 했습니다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;span style=&quot;line-height: 2; font-size: 11pt; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;그리고 &amp;nbsp;ManagementObjectCollection 객체를 가져와서 하나씩 ManagementObject 의 객체인 info 에서 &lt;a href=&quot;http://msdn.microsoft.com/ko-kr/library/system.management.managementbaseobject.item(v=vs.90).aspx&quot; target=&quot;_blank&quot; title=&quot;[http://msdn.microsoft.com/ko-kr/library/system.management.managementbaseobject.item(v=vs.90).aspx]로 이동합니다.&quot;&gt;item&lt;/a&gt; 속성을 통해서 지정해서 필요한 속성을 가지고 올 수 있다. 위에 코드에서는 필자가 전체 메모리 사이즈와 현재 남아있는 물리적인 메모리 사이즈를 가져와서, 남아있는 사이즈를 구해내고 그리고 그것을 바탕으로 현재 메모리 사용량을 계산하고 있다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;span style=&quot;line-height: 2; font-size: 11pt; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;&lt;b&gt;&lt;font color=&quot;#e31600&quot;&gt;본 소스코드에서 중요하게 볼 부분은 사실 어떻게 메모리를 구하느냐가 아니다.&lt;/font&gt;&lt;/b&gt; 가장 중요하게 생각하는 부분은 WMI라는 것을 통해서 마이크로소프트가 윈도우 운영체제에 대한 정보를 제공하고 있다는 사실이다. 우리는 작업관리자를 통해서 해당 내용들을 쉽게 확인 할 수 있지만, 특정 어플리케이션에서 그러한 내용들을 가지고와서 이용하던지 하려면 윈도우 운영체제 내에서는 WMI를 이용하는것이 가장 적절하다는 생각이 든다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;span style=&quot;line-height: 2; font-size: 11pt; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;필자가 올린 코드에서 보여주는 것은 C#을 통해서 특정 클래스로 윈도우에서 정한 스키마로 자원 정보에 대해서 접근하고 있다는 사실이다. 기본적으로 WMI가 무엇인지에 대한 이해도 필요하겠지만, 우선적으로 써 보는것이 가장 좋을듯 하다. 다른 여타의 정보에 대해서 쓰려면,&amp;nbsp;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/windows/desktop/aa394554(v=vs.85).aspx&quot; target=&quot;_blank&quot; title=&quot;[http://msdn.microsoft.com/en-us/library/windows/desktop/aa394554(v=vs.85).aspx]로 이동합니다.&quot;&gt;WMI Class&lt;/a&gt;에 대해서 알아야 한다. 그 부분은 여기를 참고하시길.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;span style=&quot;line-height: 2; font-size: 11pt; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;line-height: 2; font-size: 11pt; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 11pt; line-height: 2; &quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/span&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-776-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-776-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-776-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>C/C++/C#</category>
			<category>c#</category>
			<category>Memory</category>
			<category>WMI</category>
			<category>메모리</category>
			<category>메모리 사용량</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/776</guid>
			<comments>http://ash84.tistory.com/776#entry776comment</comments>
			<pubDate>Sat, 03 Mar 2012 15:34:00 +0900</pubDate>
		</item>
		<item>
			<title>[JAVA] Gson 라이브러리로 JSon 이용하기</title>
			<link>http://ash84.tistory.com/775</link>
			<description>







&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;최근에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;회사에서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;프로젝트를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하면서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쓴&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;것은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;아니고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;프로토타입핑을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;도중에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쓴것이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있어서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;소개하려고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;한다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;목적은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그랬다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;양이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;엄청&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;많았는데&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;서버에서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;가져오기&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;벅차니까&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;결과를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;캐쉬하자는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;목적이었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그런데&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;메모리에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;올려져&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;캐쉬를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용하자니&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;서버에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;부담도&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;되고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용량&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;역시&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만만치&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;않다는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;결론에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이르렀다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그래서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;생각한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;것이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;저장하는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;것이었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;문제는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;딱&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;b&gt;2&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;가지&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;였다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&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(203, 203, 203); border-right-color: rgb(203, 203, 203); border-bottom-color: rgb(203, 203, 203); border-left-color: rgb(203, 203, 203); background-color: rgb(255, 255, 255); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;p style=&quot;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;&lt;/p&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;1. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;각각의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쿼리에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;대해서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;어떻게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;저장되어&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;고유하게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;구별할&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;것인가&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;2. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;효율적인&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;구조는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;무엇일까&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;?&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p2&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;1&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;번에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;대한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;답은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;a href=&quot;http://ash84.tistory.com/759&quot; target=&quot;_blank&quot; title=&quot;[http://ash84.tistory.com/759]로 이동합니다.&quot;&gt;MD5 &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;a href=&quot;http://ash84.tistory.com/759&quot; target=&quot;_blank&quot; title=&quot;[http://ash84.tistory.com/759]로 이동합니다.&quot;&gt;키&lt;/a&gt;&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;a href=&quot;http://ash84.tistory.com/759&quot; target=&quot;_blank&quot; title=&quot;[http://ash84.tistory.com/759]로 이동합니다.&quot;&gt; &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;a href=&quot;http://ash84.tistory.com/759&quot; target=&quot;_blank&quot; title=&quot;[http://ash84.tistory.com/759]로 이동합니다.&quot;&gt;변환&lt;/a&gt;을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;통해서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;해결하고자&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;했다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;즉&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;어떤&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용자가&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;어떤&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;요청할때&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, (&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용자에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;종속된다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.) &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;서버에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;특정&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쿼리를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전달하면&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;때의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;시간&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;혹은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;테이블&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;명&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용자&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;ID &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;등의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;고유한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;문자열을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; MD5&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;키로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;뽑아서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만들고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;나중에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용자가&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쿼리를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전달할때&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;서버가&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;아닌&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일에서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;찾게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만들게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;설계였다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p2&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;2&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;번에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;대한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;답은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;여러가지가&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있을수가&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;자체적인&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;구조를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만들수도&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;아니면&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전형적인&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; XML&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;형태를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;가지고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;갈&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;수도&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하지만&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;개인적으로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; XML&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;경우&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;태그명이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;명확한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이름짓기로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;인해서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;길어질&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;경우&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;지나치게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;양을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;차지할것&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;같고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;무거운&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;느낌이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;들었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p2&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그래서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;생각해&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;낸것이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;바로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;a href=&quot;http://www.json.org/json-ko.html&quot; target=&quot;_blank&quot; title=&quot;[http://www.json.org/json-ko.html]로 이동합니다.&quot;&gt;JSON&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p2&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;원래&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;웹&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;서비스의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전송&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;포맷으로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;많이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용하는데&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이번에는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;서버에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;저장용으로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;써&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;보는것은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;어떨까&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;? &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;생각을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;되었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;물론&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;추후에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;외부&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;혹은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;내부의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;다른&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;서비스에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;네트워크를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;통해서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전달해야&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;한다면&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;바로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쓸 수도&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있지&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;않을까&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;막연한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기대감도&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p2&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;자바에서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;어떻게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하면&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쉽게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;클래스에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;저장한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; MD5&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이름을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;가진&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; JSon&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;형식의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;저장할수&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있을까&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;? &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그리고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;저장된&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일에서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;어떻게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하면&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쉽게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;클래스로&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;옮겨올&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;수&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있을까&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;? &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;생각이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;들었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;다들&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;아시다시피&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;프로토타입핑은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;간결해야&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;프로젝트&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기간중에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;우리에게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; JSon &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파서를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만들도록&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;나둘&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;프로젝트&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;매니저나&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;팀장은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;적어도&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;대한민국엔&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;존재하지&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;않는다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p2&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;때문에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;오픈소스&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; JSon &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;관련&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파서를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;찾기&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;시작했고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;자바용&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;), &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그래두&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;역시&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;구글님이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만들어&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;놓으신&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; Gson &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이라는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;라이브러리를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;찾을 수 가&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;a href=&quot;http://code.google.com/p/google-gson/&quot; target=&quot;_blank&quot; title=&quot;[http://code.google.com/p/google-gson/]로 이동합니다.&quot;&gt;Gson&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;에서는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;다양한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기능을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;제공하지만&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;위에서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;정의한&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;요구사항에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;부합하는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기능을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쓰는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;것은&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;매우&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;간단하다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;아래의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;코드를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;보자&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;


&lt;pre class=&quot;brush:java&quot;&gt;public class Person
{

    String name = new String();
    int age;
    String currentjob = new String();
    ArrayList&lt;string&gt; jobs = new ArrayList&lt;string&gt;();
    boolean isExistGirlFriend = false;
    
} &lt;/string&gt;&lt;/string&gt;&lt;/pre&gt;



&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p1&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;br /&gt;
먼저&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;넣고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;뺴고&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;할때&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;담을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그릇&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;클래스를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만들자&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;Person &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이라는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;예제&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;클래스를&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;만들었다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;다음과&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;같이&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;간단하게&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사람의&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;여러가지&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;특징에&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;대해서&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;설명&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;할&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;수&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있는&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;변수들을&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;지정했다&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그리고&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;나서&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; JSon &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일을&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;읽어오는&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; readJsonFile() &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;함수와&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; Person &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;객체에서&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; JSon&lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일로&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;데이터를&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;넣을수&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있는&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; writeJsonFile&lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;을&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;작성하였다&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p4&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;

&lt;pre class=&quot;brush: java&quot;&gt;   public static void readJsonFile(String path) throws IOException
    {
      StringBuffer sb = readTextInFile(path);
      System.out.println(sb.toString());
      Gson gson = new Gson();

      Person person = gson.fromJson(sb.toString(), Person.class); 
    }
   
    public static StringBuffer readTextInFile(String file_path) throws IOException
    {
      int i;
      StringBuffer full_text = new StringBuffer();
      
      try
      {
          FileReader in = new FileReader(file_path);
          while ((i = in.read()) != -1)
          {
            char ch = (char) i;
            full_text.append(ch);
          }
      }
      catch (IOException e)
      {
          e.printStackTrace();
      }
      
      return full_text;
    }
 
    public static void writeJsonFile(String path, Object obj) throws IOException
    {
      Gson gson = new Gson();

      String json = gson.toJson(obj);

      FileWriter writer = new FileWriter(path);
      writer.write(json);
      writer.close();

    }




&lt;/pre&gt;



&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p5&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;readTextInFile() &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;함수는&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;단순히&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;지정한&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;파일에서&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;텍스트를&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;읽어오는&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;역할을&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;한다&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;위의&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;코드를&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;보라&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;미칠듯이&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;간단하다&lt;/span&gt;&lt;/b&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;b&gt;.&lt;/b&gt; readJsonFile() &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;함수에서는&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;텍스트파일에서&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;읽어온&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;텍스트&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;내용을&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; Gson &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;객체의&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; fromJson()&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;함수에&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;어떤&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;클래스의&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;형식으로&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;받을것&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;인지를&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;함께&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전달해&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;주면&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;된다&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그리고&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;리턴&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;값으로&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; Person &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;객체를&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이용해서&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;받으면&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;된다&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. writeJsonFile() &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;함수를&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;보면&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;더&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;간단하다&lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;gson.toJson&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;에&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; Person&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;객체를&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전달해&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;주고&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;FileWriter&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;의&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; write &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;함수에&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;전달해&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;주기만&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하면&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s5&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;된다&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p6&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p5&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;이제&lt;/span&gt;&lt;span class=&quot;s6&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; main&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;에서&lt;/span&gt;&lt;span class=&quot;s6&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;호출해&lt;/span&gt;&lt;span class=&quot;s6&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;준다&lt;/span&gt;&lt;span class=&quot;s6&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;

&lt;pre class=&quot;brush: java&quot;&gt;  public static void main(String[] args) throws IOException
    {

      Person person = new Person();
      person.name = &quot;안성현&quot;;
      person.age = 29;
      person.isExistGirlFriend = true;
      person.currentjob =&quot;Programmer&quot;;
      person.jobs.add(&quot;Student&quot;);
      person.jobs.add(&quot;Programmer&quot;);
      person.jobs.add(&quot;Dancer&quot;);
       
      writeJsonFile(&quot;C:\\ash84.json&quot;, person);

      readJsonFile(&quot;C:\\ash84.json&quot;);

    }
 
&lt;/pre&gt;



&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p6&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;div style=&quot;line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p class=&quot;p6&quot; style=&quot;text-align: justify; line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용후기를&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;말씀드리면&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;, Gson 라이브러리가 제공하는&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기능으로&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;인해서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; JSon&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;에&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;대해서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쉽게&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;접근&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;할 수&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있어서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;좋은 것&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;같다&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그리고&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;위에서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;소개한&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기능은&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; Gson &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;라이브러리의&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기능 중&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;극히&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;일부분이기&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;때문에&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;네트워크와 맞물렸을 경우,&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사용하기 편한&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;여러가지&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;기능을&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; Gson&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;에서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;제공하고&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있을 것&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;같다&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;필요하면&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;해당&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;사이트에&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;가서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;찾아서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;쓰면&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;좋을것&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;같다&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;가장&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;마음에&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;드는&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;것은&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; JSon &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;구조&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;자체가&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;깔끔하다는&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;것이다&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. XML&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;처럼&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;특정&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;태그명과&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;포함관계를&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;지정하기&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;위해서&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;애쓸&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;필요가&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;없다&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;. &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;내가&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;정한&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;클래스의&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;구조&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;그대로&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;들어가기&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;때문에&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;좀더&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;클래스&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;디자인에만&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;집중할수&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;있게&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하는것도&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;하나의&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;장점이라는&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;생각이&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;든다&lt;/span&gt;&lt;span class=&quot;s6&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class=&quot;p5&quot; style=&quot;text-align: justify;&quot;&gt;&lt;span class=&quot;s6&quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;/span&gt;&lt;/span&gt;&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-775-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-775-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-775-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>etc</category>
			<category>GSON</category>
			<category>JSON</category>
			<category>MD5</category>
			<category>read from file json</category>
			<category>write to file json</category>
			<category>자바</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/775</guid>
			<comments>http://ash84.tistory.com/775#entry775comment</comments>
			<pubDate>Sat, 18 Feb 2012 23:27:15 +0900</pubDate>
		</item>
		<item>
			<title>구글 사이트를 이용해서 위키 만들기.</title>
			<link>http://ash84.tistory.com/773</link>
			<description>&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;br /&gt;
&lt;p style=&quot;color: rgb(0, 0, 0); margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile22.uf.tistory.com/image/1648A33A4F15A04B31AB58&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile22.uf@1648A33A4F15A04B31AB58.jpg&quot; height=&quot;407&quot; width=&quot;625&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;언제봐도 Trac 은 멋지다. &lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;최근에 라이브러리를 만들면서 오픈 소스 형식으로 여러 사람들이 볼수 있는 위키 혹은 개발 문서 사이트를 만들고 싶었다. 처음에 택한 도구는 당연 &lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#840000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;트랙(Trac)&lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;이었다. 테터툴즈라는 좋아라하는 오픈소스 프로젝트의 도구로 쓰기도 했었고, 이전에 다녔던 회사에서도 사용했던 도구여서 괜찮을 거라 생각했다. 하지만 Trac의 단점은 위키부분만 분리해서 쓰기에는 조금 불편하다는 점이었다.(적어도 나에게는)&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile1.uf.tistory.com/image/18300A444F15A08B151D90&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile1.uf@18300A444F15A08B151D90.png&quot; height=&quot;561&quot; width=&quot;609&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;위키피디아&lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;두번째로 생각한 것은 &lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#0686a8&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;위키(WiKi) 사이트&lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;이다. 위키피디아의 시스템도 개발 문서 및 오픈 소스 프로젝트 형식으로 괜찮을 것이라는 생각이 들었다. mediawiki 나 여타의 다른 위키를 찾아 봤지만, 가장 큰 문제는 서버에 대한 임대 문제이다. 회사에 설치 하자니 좀 캥기는 것도 있고, 왠지 모르게 호스팅 업체를 이용하자니 비용적인 부분이 부담이 되었다.&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;br /&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;그러던 중 찾은 것이&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt; 구글 사이트 도구&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;이다.&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;br /&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;일단 로그인을 하고 사이트 도구를 누르면 바로 이런 화면이 나온다.&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;p style=&quot;margin:0&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile10.uf.tistory.com/image/152F3F3E4F159EEC01BD82&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile10.uf@152F3F3E4F159EEC01BD82.png&quot; height=&quot;428&quot; width=&quot;640&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;DocumentExtractor는 이미 작업중인 개발관련 위키이다.&lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;br /&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;
일단 만들기른 눌러보자. 만들기를 누르면 아래와 같이 템플릿과 이름을 작성할수 있는 부분이 나오게 된다. 먼저 템플릿 부터 보자. 템플릿은 가장 중요하다. 왜냐하면 기본적인 사이트의 레이아웃을 정하기 때문이다. 다양한 형식의 템플릿이 있지만, 우리의 목적인 위키이다. 검색 하다 &quot;Wiki&quot;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;br /&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; &quot;&gt;
&lt;span style=&quot;font-size: 15px; line-height: 29px;&quot;&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;p style=&quot;margin:0&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile9.uf.tistory.com/image/1218743E4F159F03127CAA&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile9.uf@1218743E4F159F03127CAA.png&quot; height=&quot;584&quot; width=&quot;640&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;다양한 템플릿이 존재한다. &lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;br /&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;다양한 형식의 위키 사이트를 볼 수가 있다. 일단은 가장 복잡해 보이지 않는 &lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#ff8b16&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&quot;Simple Wiki&quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;를 선택해보자. 해당 위키 템플릿을 선택하면 미리보기를 해 볼수도 있고, 또 바로 선택할 수도 있다. 일단 해당 템플릿을 선택하고 나면 이름을 정해야 한다.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile10.uf.tistory.com/image/126A78504F159F510EADF7&quot; alt=&quot;&quot; filemime=&quot;image/jpeg&quot; filename=&quot;스크린샷 2012-01-16 오후 9.19.13.png&quot; height=&quot;583&quot; width=&quot;640&quot;/&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;
&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;br /&gt;
&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;여기서는 BaboWiki&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&amp;nbsp;라는 이름으로 만들어 보도록 하자. 일단 입력하면 소문자의 형태로 url 이 자동적으로 생성된다. 물론 본인이 원하는 다른 url을 지정 할 수 있다. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: rgb(255, 255, 255); font-family: Arial, sans-serif; font-size: 11px; line-height: 17px; text-align: left; &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;이 이름은 겹치면 안되기 때문에 잘 선택해서 쓰자. (원래는 TestWiki라고 지었으나 같은 이름이 있어서 거절되었다.)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;text-align: left; background-color: rgb(255, 255, 255); line-height: 2; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;font face=&quot;Arial, sans-serif&quot;&gt;&lt;span style=&quot;line-height: 17px;&quot;&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile27.uf.tistory.com/image/123BA1484F159F6A061010&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile27.uf@123BA1484F159F6A061010.png&quot; height=&quot;451&quot; width=&quot;640&quot;/&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#000000&quot; style=&quot;line-height: 2; &quot;&gt;&lt;span style=&quot;text-align: left; background-color: rgb(255, 255, 255); line-height: 2; &quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;font face=&quot;Arial, sans-serif&quot;&gt;&lt;span style=&quot;line-height: 17px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;font face=&quot;Arial, sans-serif&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 9pt; line-height: 2;text-align: justify;  &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;이름을 입력하고 나서는 테마를 정할수도 있다. 그리고 기타 옵션이 있는데 해당 사이트에 대한 공개 및 보안 설정을 할 수가 있으며, 사이트에 대한 설명을 쓸 수도 있다. 그리고 성인 콘텐츠가 포함되어 있는지의 여부 역시 체크할수 있다.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font color=&quot;#000000&quot;&gt;&lt;span style=&quot;text-align: left; background-color: rgb(255, 255, 255); line-height: 2; &quot;&gt;&lt;font face=&quot;Arial, sans-serif&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 9pt; line-height: 17px;text-align: justify;  &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/font&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile3.uf.tistory.com/image/165DAA364F159F91061EBD&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile3.uf@165DAA364F159F91061EBD.png&quot; height=&quot;280&quot; width=&quot;640&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;짜잔!!&lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;font face=&quot;Arial, sans-serif&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 9pt; line-height: 17px; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&amp;nbsp;자, 이제 사이트를 만들었다.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/font&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;font face=&quot;Arial, sans-serif&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 9pt; line-height: 17px; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;span style=&quot;font-size: 11pt; &quot;&gt;&lt;span style=&quot;font-size: 10pt; &quot;&gt;다음 시간에는 본격적으로 메뉴사용법과 개발 문서를 담을 수 있는 위키를 만들어 보도록 하자.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/font&gt;&lt;/span&gt;&lt;span style=&quot;text-align: left; background-color: rgb(255, 255, 255); &quot;&gt;&lt;font face=&quot;Arial, sans-serif&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-size: 9pt; line-height: 17px; &quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/font&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&amp;nbsp;&lt;/font&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-773-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-773-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-773-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>etc</category>
			<category>google sites</category>
			<category>개발문서</category>
			<category>개인 개발 위키</category>
			<category>구글 사이트도구</category>
			<category>위키</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/773</guid>
			<comments>http://ash84.tistory.com/773#entry773comment</comments>
			<pubDate>Wed, 18 Jan 2012 01:26:05 +0900</pubDate>
		</item>
		<item>
			<title>단위테스트를 보다 쉽게, JUnit 을 사용하자.</title>
			<link>http://ash84.tistory.com/772</link>
			<description>&lt;div style=&quot;text-align: justify; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; line-height: 2; &quot;&gt;단위 테스트를 어떻게 구성해야 할까에 대해서 생각해 볼 경우가 종종 있는것 같다. 실제로 필자가 속한 조직에서는 아직 단위테스트에 대한 필요성을 인지 하지 못한것인지는 모르겠지만, 아무튼 새롭게 프로토타입(Prototype)을 구성중인 자바 기반의 문서 이미지 추출 프로젝트에서는 클린코드와 단위테스트를 필수로 포함시키기로 하였다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;b&gt;&lt;a href=&quot;http://ko.wikipedia.org/wiki/%EC%9C%A0%EB%8B%9B_%ED%85%8C%EC%8A%A4%ED%8A%B8&quot; target=&quot;_blank&quot; title=&quot;[http://ko.wikipedia.org/wiki/%EC%9C%A0%EB%8B%9B_%ED%85%8C%EC%8A%A4%ED%8A%B8]로 이동합니다.&quot;&gt;단위 테스트란?&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;/span&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(203, 203, 203); border-right-color: rgb(203, 203, 203); border-bottom-color: rgb(203, 203, 203); border-left-color: rgb(203, 203, 203); background-color: rgb(255, 255, 255); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;p style=&quot;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;컴퓨터 프로그래밍에서&lt;/span&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;유닛 테스트&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;란 소스 코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차다. 즉, 모든 함수와 메소드에 대한 테스트 케이스(&lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;en&quot; xml:lang=&quot;en&quot; style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;Test case&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;)를 작성하는 절차를 말한다. 이를 통해서 언제라도 코드 변경으로 인해 문제가 발생할 경우, 단시간 내에 이를 파악하고 바로 잡을 수 있도록 해준다. 이상적으로, 각 테스트 케이스는 서로 분리되어야 한다. 이를 위해 가짜 객체(&lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;en&quot; xml:lang=&quot;en&quot; style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;Mock object&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;)를 생성하는 것도 좋은 방법이다. 유닛 테스트는 (일반적인 테스트와 달리) 개발자(&lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;en&quot; xml:lang=&quot;en&quot; style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;developer&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;) 뿐만 아니라 보다 더 심도있는 테스트를 위해 테스터(&lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;en&quot; xml:lang=&quot;en&quot; style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;tester&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-size: 9pt; &quot;&gt;)에 의해 수행되기도 한다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;span style=&quot;color: rgb(0, 0, 0); font-family: sans-serif; font-size: 15px; line-height: 22px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;단위 테스트에 대해서 막연히 알고 있었고, 필요하다고는 느끼고 있었지만 처음 도입해 보는 과정에서 여러가지 시행 착오가 있었다.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-size: 10pt; line-height: 2; &quot;&gt;가장 큰 문제는 &lt;b&gt;&lt;font color=&quot;#e31600&quot;&gt;단위테스트 코드는 어디에 위치하는것 인가? &lt;/font&gt;&lt;/b&gt;하는 부분이었다. main함수에서 해야하는 것인지(이 경우, 객체를 생성해야 하고 publc 함수 밖에 테스팅 할수 밖에 없다.) , &amp;nbsp;해당 클래스 내 함수가 있는 위치에서 따로 뽑아서 해야하는것인지(이럴경우, 객체를 만들 필요가 없고, private 함수까지 테스팅을 할 수 있다.) 고민되는 부분이 있었다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;또 다른 문제는 &lt;b&gt;&lt;font color=&quot;#e31600&quot;&gt;명명법에 대한 문제&lt;/font&gt;&lt;/b&gt;인다. 같은 함수내에 단위 테스트에 대한 코드를 둔다면, 실제 실행 함수와 어떻게 구별할 것인가? 함수 앞에 test_ 접두어를 붙일수도 있지만, 더 큰 문제는 나 외에 다른 동료들도 이러한 내용을 강제하고 지키도록 동의를 해야한다는 것이다. 그렇지 않는다면, 소스코드는 실제 사용하는 부분과 그리고 테스트 코드 부분을 구분 할 수 없게 되는 문제가 있다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;처음에는 main() 함수가 있는 클래스에 static 함수로 다른 클래스의 실제 사용하는 함수를 테스팅 하는 코드를 넣는 방식으로 하였다. 이 경우 문제점은 여러가지 함수를 테스팅하기 위해서는 main()에서 다양한 static 테스트 함수들을 써야 한다는 점이다. 그래서 좀 불편한것 같았다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;b&gt;그러던 중 JUnit 에 대해서 알게되었다. 일단 써보면서 특징을 설명하겠다&lt;/b&gt;.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;일단 JUnit을 사용하기 전에, &lt;br /&gt;
&lt;b&gt;&lt;br /&gt;
빌드 패스(Build Path)에서 추가 라이브러리(Add Library)를 눌러서 JUnit을 추가&lt;/b&gt;하도록 하자. 필자는 JUnit3를 설치하였다. 자 그러면, 이제 JUnit 을 본격적으로 사용해 보자.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile25.uf.tistory.com/image/161ECF484F127E0537D1A9&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile25.uf@161ECF484F127E0537D1A9.png&quot; height=&quot;472&quot; width=&quot;640&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;빌드경로에서 라이브러리 추가&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;
&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile1.uf.tistory.com/image/122E11494F127E1908F177&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile1.uf@122E11494F127E1908F177.png&quot; height=&quot;450&quot; width=&quot;526&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;JUnit3  선택&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;이클립스의 File의 New를 눌러서&lt;b&gt; JUnit Test Case&lt;/b&gt;를 누르면 테스트 케이스를 만들수 있다. 아래의 화면과 같이 나오게 되면 일단 하단에서 New JUnit3 Test Case를 선택한다. 우리는 앞에서 JUnit3 라이브러리를 추가했기 때문에 이것을 선택해 주면된다. 그리고 나서 되도록 현재 만드는 단위 테스트가 속할 패키지를 지정해 준다. 되도록이면 지정하는 것이 좋다. 왜냐하면 JUnit Test Case 역시 하나의 클래스 파일이기 때문에 패키지로 구분해 주는 것이 가독성 측면에서 좋다.&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile25.uf.tistory.com/image/15338B494F1282A014A07E&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile25.uf@15338B494F1282A014A07E.png&quot; height=&quot;601&quot; width=&quot;527&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;JUnit Test Case 추가&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;패키지 지정을 했으면, 이름(name)을 지정해 주자. 일반적인 클래스 이름이라고 생각하시면 되는데 이때에 일반 클래스를 대상으로 테스트 하는 것이기 때문에 이름에서 어떤 클래스를 테스트 하고 있음을 나타내는 동시에, 이 클래스가 유닛테스트 클래스라는 것을 알려주자. 예를 들어, 내가 ExtractorImage 라는 클래스에 대한 유닛테스트를 만든다고 하면, UnitTest_ExtractorImage 이런식으로&lt;font color=&quot;#0686a8&quot;&gt; &lt;u&gt;UnitTest_ 라는 접두어를 통해서 해당 클래스가 유닛테스트 클래스 임을 알려주자.&lt;/u&gt;&lt;/font&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;마지막으로는 어떤 클래스에 대한 유닛테스트 인지를 설정하는 부분으로 제일 아래에 있는 &lt;u&gt;&lt;font color=&quot;#318561&quot;&gt;class under test 에서 browse를 눌러서 테스트 하려는 클래스를 적어주면 알아서 찾아준다&lt;/font&gt;&lt;/u&gt;. 자, 입력을 다 했으면, 이제 Next를 누르면 앞에서 입력한 테스트 대상 클래스의 함수들이 나온다. 보시면 알겟지만, Public 함수에 대해서만 테스트를 할 수가 있다. 이 단계에서 테스트를 할 함수를 체크를 한다. 체크를 다했으면 기본적은 단위 테스트의 구성이 끝나고 해당 단위테스트 클래스가 만들어 지는것을 볼 수가 있다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile29.uf.tistory.com/image/1702EF4F4F1282BE09AEED&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile29.uf@1702EF4F4F1282BE09AEED.png&quot; height=&quot;499&quot; width=&quot;600&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;테스트 대상 클래스 지정&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile24.uf.tistory.com/image/11580E4A4F1285D61BCFF8&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile24.uf@11580E4A4F1285D61BCFF8.png&quot; height=&quot;602&quot; width=&quot;526&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;테스트 할 함수 지정&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;만들어진 단위 테스트 클래스의 내부를 보자.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile23.uf.tistory.com/image/201D7B424F128444376A01&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile23.uf@201D7B424F128444376A01.png&quot; height=&quot;452&quot; width=&quot;367&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;JUnit 테스트 결과&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;우리가 앞에서 지정했던 함수에 대해서 미리 만들어져 있다. 그런데 형태를 보면, public void testExtractorManager() 이런 형태로 원래 함수 test라는 접두어를 붙여서 표시를 하였다. 일단 한번 테스팅을해 보자 테스팅을 하면 이전과 다르게 오른쪽에 JUnit 테스트에 대한 결과를 보여주는 창이 나온다. 보시면 Runs, Errors, Fails 가 있는데 처음 생성을 하면 아래처럼 나오기 때문에 현재는 Fails:4 라고 표시가 되어 있다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; &quot;&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush : java&quot;&gt;
public void testExtractText()
{	
fail(&quot;Not yet implemented&quot;);
}
&lt;/pre&gt;&lt;br /&gt;
&lt;font size=&quot;2&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;	&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;이제 구현을 해 보자. 일단 각각의 테스트 함수에다가 필요한 테스트 코드들을 넣어준다. 만약 테스트 함수 외의 함수를 넣고 싶다면, test 접두어를 붙이지 않은채 코드를 넣으면 된다. 예를 들어 testExtractImage() 함수에서 특정 디렉토리 경로를 가져오는 함수를 호출해야 한다면,&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;pre class=&quot;brush : java&quot;&gt;

private String GetTestDocPath()
{	
File dir = new File(&quot;&quot;);	
return dir.getAbsolutePath() + File.separator + test_document;
}

public void testExtractImage()
{			
String doc_dir_path = GetTestDocPath(); 
}

&lt;/pre&gt;
		 &lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;이런식으로 GetTestDocPath()를 써주면 된다. 대신에 이 부분은 test접두어로 시작되지 않기 때문에 JUnit test를 실행 시킬때 결과에 표시되지 않는다. 그렇다면, 검사 대상 클래스의 내용이 추가 된다면 어떻게 해야 할까? 다시 앞의 단계를 반복해야할까?&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;수동으로 JUnit 테스트의 결과에 포함되는 테스트 함수를 추가 시키는 방법은 간단하다. 어떤 테스트 하려는 함수를 만들고 그 함수이름의 제일 앞에 test 접두어를 붙여주면 된다. 예를들어, testExtractImage1() 을 만들어 주고 테스트를 돌려보면 아래와 같은 결과를 얻을 수가 있다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;p style=&quot;margin:0&quot;&gt;&lt;div class=&quot;imageblock center&quot; style=&quot;text-align: center; clear: both;&quot;&gt;&lt;img src=&quot;http://cfile9.uf.tistory.com/image/1525083D4F12846A31F690&quot; alt=&quot;&quot; filemime=&quot;&quot; filename=&quot;cfile9.uf@1525083D4F12846A31F690.png&quot; height=&quot;454&quot; width=&quot;366&quot;/&gt;&lt;p class=&quot;cap1&quot;&gt;수동 테스트 함수 추가 결과&lt;/p&gt;&lt;/div&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;추가된 함수가 결과에 포함된 것을 볼수가 있다. 이렇게 하면 대상 클래스의 내용이 변하더라도 능동적으로 테스트 코드에 추가할 수가 있다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;자, 이제 다 구현을 하고 JUnit을 돌려보자. 필자가 생각하는 JUnit의 가장 큰 장점은 &lt;u&gt;&lt;font color=&quot;#c8056a&quot;&gt;해당 함수에 대한 실행 시간을 표시해 줄수 있다는 것&lt;/font&gt;&lt;/u&gt;이다. 사실 프로그래머는 성능 측정에 대해서 자유로울 수가 없는데 JUnit 에서는 이런 부분을 쉽게 해결해 준다. 하나의 함수에 대한 실행 시간을 알려줌으로써, 어떤 부분이 병목을 가지고 있는지 테스트 케이스를 구성함으로써, 쉽게 알수가 있다. C 언어에서 처럼 시간을 측정하는 부분을 넣을 필요가 없다.(사실 이 부분은 소스코드를 더럽히기도 하고, 다른 여러가지 툴이 있을것이라 생각된다.)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;b&gt;결론.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;&lt;/span&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(203, 203, 203); border-right-color: rgb(203, 203, 203); border-bottom-color: rgb(203, 203, 203); border-left-color: rgb(203, 203, 203); background-color: rgb(255, 255, 255); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; &quot;&gt;
&lt;p style=&quot;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; &quot;&gt;&lt;/p&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;JUnit을 꼭 사용하자.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;그리고 성능 측정을 하고, 개선을 하자.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;그리고 쉽게 유지보수 할수 있는 여지를 주자.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;span style=&quot;font-size: 10pt; &quot;&gt;마지막으로. 쉽게 인수인계 할수 있을것 같다.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify; line-height: 2; &quot;&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-772-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-772-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-772-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;
&lt;div class=&quot;tt-plugin tt-share-entry-with-sns tt-sns-icon-alignment-center tt-sns-icon-size-small&quot;&gt;
	&lt;div class=&quot;tt-sns-wrap&quot; id=&quot;ttSnsWrap-&quot;&gt;
		&lt;ul class=&quot;tt-sns-service-default&quot;&gt;
			&lt;li class=&quot;tt-sns-service-mypeople&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('mypeople', '', '');&quot;&gt;마이피플&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-twitter&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('twitter', '', '');&quot;&gt;트위터&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-facebook&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('facebook', '', '');&quot;&gt;페이스북&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-other&quot;&gt;&lt;a href=&quot;javascript:;&quot; onmouseover=&quot;ShareEntryWithSNS.showLayer(event, '');&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;더보기&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
		&lt;ul class=&quot;tt-sns-service-more&quot; id=&quot;ttSnsServiceMore-&quot; onmouseout=&quot;ShareEntryWithSNS.hideLayer(event, '');&quot;&gt;
			&lt;li class=&quot;tt-sns-service-me2day&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('me2day', '', '');&quot;&gt;미투데이&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;tt-sns-service-yozm&quot;&gt;&lt;a href=&quot;javascript:;&quot; onclick=&quot;ShareEntryWithSNS.share('yozm', '', '');&quot;&gt;요즘&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;div class=&quot;tt-sns-clear&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
			<category>etc</category>
			<category>Java</category>
			<category>JUnit</category>
			<category>unittest</category>
			<category>단위테스트</category>
			<category>안성현</category>
			<category>자바</category>
			<author>ASH84</author>
			<guid>http://ash84.tistory.com/772</guid>
			<comments>http://ash84.tistory.com/772#entry772comment</comments>
			<pubDate>Sun, 15 Jan 2012 16:49:19 +0900</pubDate>
		</item>
	</channel>
</rss>
