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

<channel>
	<title>A way for me &#187; sample</title>
	<atom:link href="http://away4m.com/tag/sample/feed/" rel="self" type="application/rss+xml" />
	<link>http://away4m.com</link>
	<description>A way for me</description>
	<lastBuildDate>Mon, 05 Apr 2010 00:36:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Saf as3 projelerinde webservis kullanımı</title>
		<link>http://away4m.com/2009/11/30/saf-as3-projelerinde-webservis-kullanimi/#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://away4m.com/2009/11/30/saf-as3-projelerinde-webservis-kullanimi/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 20:45:49 +0000</pubDate>
		<dc:creator>away4m</dc:creator>
				<category><![CDATA[as3]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[sample]]></category>
		<category><![CDATA[web service]]></category>

		<guid isPermaLink="false">http://away4m.com/2009/11/30/saf-as3-projelerinde-webservis-kullanimi/</guid>
		<description><![CDATA[Flex ile gelen soap yardımıcı sınıfları pure as3 projelerinde ihtiyaç duyulan temel webservis iletişimini fazlasıyla sağlamakta.Bunun için harici developerların geliştirdiği webservise sınıflarını aramamıza gerek kalmamaktadır.]]></description>
			<content:encoded><![CDATA[<p><a href="http://en.wikipedia.org/wiki/Web_service" target="_blank">Webservisleri</a> yapıları gereği iletişimlerini xml  mesajları üzerinden gerçekleştirmekte, gerek veri yollarken gerek veri alırken bütün bu veri yığınını soap protokolleri dahilinde encode etmektedir.Her ne kadar mutlak bir gereksinim olmasada webservislerin clientlarına sunduğu operasyon tanımlamaları WSDL ile sağlanmaktadır.Biz ise basitçe kullandığımız yazılım alt yapısı ile wsdl tanımlamalarından operasyonları öğreniyor ve tercih ettiğimiz operasyonu başka bir adımda başlatmaya karar veriyoruz. HTTP protokolu üzerinden asenkron olarak gerçekleşen bir webservis operasyonu gönderilen xml paketine benzer cevap paketiyle geri dönmektedir.</p>
<p>Eğer sizde benim gibi pure as3 projeleri geliştiriyorsanız muhtemelen webservislerle veri alışverişinin bazen ne kadar da can sıkıcı olabileceğini görmüşsünüzdür.Ben yukarda tanımladığım süreçleri  bir süre <a href="http://www.wellconsidered.be/blog/as3-webservice-component/" target="_blank">welconsidered</a> webservice component yardımıyla sürdürmüştüm.Nitekim welconsidered componenti suya sabuna dokunmadan sizin operasyon parametrelerini sunucuya iletmekte sürecin sonunda ise kocaman bir xml dönütüyle sizi başbaşa bırakmakta.Günün sonunda ise kendinizi namespaceler ile boğuşmaktan canı çıkmış, istediğiniz veriye ulaşmak için ağzıyla kuş tutmuş olarak buluyorsunuz  : )</p>
<p>Webserviste tanımlanmış bir methodu tetiklediğinizde size dönen yapılandırılmış xml verisi muhtemelen aşağıdaki örneğe benzer bir şey olacaktır.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p64code1'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p641"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code" id="p64code1"><pre class="xml" style="font-family:monospace;">?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ServiceResponse</span> <span style="color: #000066;">xmlns:xsi</span>=<span style="color: #ff0000;">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span> <span style="color: #000066;">xmlns:xsd</span>=<span style="color: #ff0000;">&quot;http://www.w3.org/2001/XMLSchema&quot;</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;http://away4m.com/&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ResponseMessage<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>İşlem Başarılı.<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ResponseMessage<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ResponseCode<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>0<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ResponseCode<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ResponseObject</span> <span style="color: #000066;">xsi:type</span>=<span style="color: #ff0000;">&quot;NewsFeedList&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Data<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;NewsFeed</span> <span style="color: #000066;">Title</span>=<span style="color: #ff0000;">&quot;NTVMSNBC.com: Hava Yol&quot;</span> <span style="color: #000066;">Url</span>=<span style="color: #ff0000;">&quot;http://www.ntvmsnbc.com/id/24927997/device/rss/rss.xml&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;NewsFeed</span> <span style="color: #000066;">Title</span>=<span style="color: #ff0000;">&quot;NTVMSNBC.com: Bilişim Teknolojileri&quot;</span> <span style="color: #000066;">Url</span>=<span style="color: #ff0000;">&quot;http://www.ntvmsnbc.com/id/24927541/device/rss/rss.xml&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Data<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ResponseObject<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ServiceResponse<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>Flex ile gelen soap yardımıcı sınıfları pure as3 projelerinde ihtiyaç duyulan temel webservis iletişimini fazlasıyla sağlamakta.Bunun için harici developerların geliştirdiği webservise sınıflarını aramamıza gerek kalmamaktadır.</p>
<p>Nitekim flash cs4 kullandığınızda dahi flex framework dizininde bulabileceğiniz “rpc.swc” dosyasını flash ide proje ayarları panelinden çalışmanıza entegre edebiliyorsunuz.Ben as3 projelerimi <a href="http://www.flashdevelop.org/community/viewtopic.php?f=11&amp;t=5669" target="_blank">flashdevelop</a> üzerinden gerçekleştirdiğim için swc dosyalarını istediğim anda projeye ekleyip çıkarmada herhangi bir zorlukla karşılaşmıyorum.</p>
<p><a href="http://away4m.com/wp-content/uploads/2009/11/flashideswcembed.jpg#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="flash ide swc embed" src="http://away4m.com/wp-content/uploads/2009/11/flashideswcembed_thumb.jpg" border="0" alt="flash ide swc embed" width="167" height="244" /></a> <a href="http://away4m.com/wp-content/uploads/2009/11/flashdevelopswcimport.jpg#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed"><img style="border-right-width: 0px; margin: 5px 0px 5px 15px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="flashdevelop swc import" src="http://away4m.com/wp-content/uploads/2009/11/flashdevelopswcimport_thumb.jpg" border="0" alt="flashdevelop swc import" width="214" height="244" /></a></p>
<p>as3 projelerinizde flex altyapısını kullandığınızda bir webservice operasyon çağrısı aşağıdakine benzer yapıda olmaktadır.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p64code2'); return false;">View Code</a> ACTIONSCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p642"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
</pre></td><td class="code" id="p64code2"><pre class="actionscript" style="font-family:monospace;">package
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #0066CC;">import</span> flash.<span style="color: #006600;">display</span>.<span style="color: #006600;">Sprite</span>;
	<span style="color: #0066CC;">import</span> flash.<span style="color: #006600;">events</span>.<span style="color: #006600;">Event</span>;
	<span style="color: #0066CC;">import</span> flash.<span style="color: #006600;">utils</span>.<span style="color: #006600;">describeType</span>;
	<span style="color: #0066CC;">import</span> hr.<span style="color: #006600;">binaria</span>.<span style="color: #006600;">asx3m</span>.<span style="color: #006600;">Asx3mer</span>;
	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">events</span>.<span style="color: #006600;">FaultEvent</span>;
	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">events</span>.<span style="color: #006600;">ResultEvent</span>;
	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">soap</span>.<span style="color: #006600;">LoadEvent</span>;
	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">soap</span>.<span style="color: #006600;">Operation</span>;
	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">soap</span>.<span style="color: #006600;">WebService</span>;
	<span style="color: #0066CC;">import</span> nl.<span style="color: #006600;">demonsters</span>.<span style="color: #006600;">debugger</span>.<span style="color: #006600;">MonsterDebugger</span>;
&nbsp;
	<span style="color: #808080; font-style: italic;">/**
	 * ...
	 * @author away4m
	 */</span>
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Main <span style="color: #0066CC;">extends</span> Sprite
	<span style="color: #66cc66;">&#123;</span>
&nbsp;
		<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> ws:WebService = <span style="color: #000000; font-weight: bold;">new</span> WebService<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> myOperation:Operation;
&nbsp;
		<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> Main<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
&nbsp;
			<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">stage</span><span style="color: #66cc66;">&#41;</span> init<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
			<span style="color: #b1b100;">else</span> addEventListener<span style="color: #66cc66;">&#40;</span>Event.<span style="color: #006600;">ADDED_TO_STAGE</span>, init<span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
&nbsp;
		<span style="color: #0066CC;">private</span>  <span style="color: #000000; font-weight: bold;">function</span> init<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">e</span>:Event = <span style="color: #000000; font-weight: bold;">null</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
			<span style="color: #0066CC;">trace</span><span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span> + <span style="color: #ff0000;">&quot;.init&quot;</span><span style="color: #66cc66;">&#41;</span>;
			removeEventListener<span style="color: #66cc66;">&#40;</span>Event.<span style="color: #006600;">ADDED_TO_STAGE</span>, init<span style="color: #66cc66;">&#41;</span>;
			<span style="color: #808080; font-style: italic;">// entry point</span>
&nbsp;
			ws.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;load&quot;</span>, finishedLoading<span style="color: #66cc66;">&#41;</span>;
			ws.<span style="color: #006600;">loadWSDL</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;http://www.deeptraining.com/webservices/weather.asmx?WSDL&quot;</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
&nbsp;
		<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> finishedLoading<span style="color: #66cc66;">&#40;</span>evt:LoadEvent = <span style="color: #000000; font-weight: bold;">null</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
			<span style="color: #0066CC;">trace</span><span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span> + <span style="color: #ff0000;">&quot;.finishedLoading&quot;</span><span style="color: #66cc66;">&#41;</span>;
			myOperation = Operation<span style="color: #66cc66;">&#40;</span>ws.<span style="color: #006600;">getOperation</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;GetWeather&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
&nbsp;
			myOperation.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;fault&quot;</span>, wsdlFault<span style="color: #66cc66;">&#41;</span>;
			myOperation.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;result&quot;</span>, wsdlResult<span style="color: #66cc66;">&#41;</span>;
			myOperation.<span style="color: #0066CC;">send</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;California&quot;</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
&nbsp;
		<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> wsdlFault<span style="color: #66cc66;">&#40;</span>evt:FaultEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
			<span style="color: #0066CC;">trace</span><span style="color: #66cc66;">&#40;</span>evt.<span style="color: #006600;">fault</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
&nbsp;
		<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> wsdlResult<span style="color: #66cc66;">&#40;</span>evt:ResultEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
			<span style="color: #0066CC;">trace</span><span style="color: #66cc66;">&#40;</span>evt.<span style="color: #006600;">result</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
&nbsp;
	<span style="color: #66cc66;">&#125;</span>
&nbsp;
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>Kodda basitçe WebService sınıfı tanımlanıp bu sınıfın hangi operasyonlarını gerçekleştirebileceğini öğrenebilmesi için webservisin operasyon tanımlamalarınınyeraldığı wsdl yolunu sağlamaktayız.Bu örnekte bu <a title="http://www.deeptraining.com/webservices/weather.asmx?WSDL" href="http://www.deeptraining.com/webservices/weather.asmx?WSDL.WSDL">http://www.deeptraining.com/webservices/weather.asmx?WSDL.WSDL</a> yüklenemesi gerçekleştikten sonra artık istediğimiz operasyon çağrısını başlatabiliriz.Herhangi bir operasyon çağrısında muhtemel başarı ya da başarısızlık durumunu takip edebileceğimiz iki adet asenkron event handler bulunmaktadır.</p>
<p><a href="http://away4m.com/away4m/experience/webservice/webservice.rar#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed">kaynak dosyaları</a></p>
<p>Basitçe as3 projelerinde webservis kullanımını tanıtmaya çalıştığım bu yazının devamında başarılı webservis kodlama pratikleri (puremvc proxy’ nin webservis ile kardeşliği ), webservisler ne yer ne yemez durumları ve ayriyeten .NET mimarisinin DTO dediği data transfer objectlerin bizdeki VO value objectlerle nasıl kardeşlik kurabileceği üzerinde duracağım.</p>
]]></content:encoded>
			<wfw:commentRss>http://away4m.com/2009/11/30/saf-as3-projelerinde-webservis-kullanimi/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Swfprofiler ile proje performansına h&#252;kmedin</title>
		<link>http://away4m.com/2009/11/29/swfprofiler-ile-proje-performansina-hkmedin/#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed</link>
		<comments>http://away4m.com/2009/11/29/swfprofiler-ile-proje-performansina-hkmedin/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 20:25:38 +0000</pubDate>
		<dc:creator>away4m</dc:creator>
				<category><![CDATA[as3]]></category>
		<category><![CDATA[performans]]></category>
		<category><![CDATA[sample]]></category>

		<guid isPermaLink="false">http://away4m.com/2009/11/29/swfprofiler-ile-proje-performansina-hkmedin/</guid>
		<description><![CDATA[Bir tür deterjan reklamının girişini andıran bir başlık ile aslında Lost in Actionscript blogunun yazarı olan Shane McCartney bir çalışmasını paylaşmak istedim.SwfProfiler proje development sırasında gözümüzden kaçan performans detaylarını can sıkmadan sizlere sunma kaygısında.Nitekim sağ tıklama menusune Show Profiler / Hide Profiler ile yeleşen bu yardımcı uygulama ile anlık fps, otalama fps ve bellek kullanımı [...]]]></description>
			<content:encoded><![CDATA[<p style="text-indent: 10px">Bir tür deterjan reklamının girişini andıran bir başlık ile aslında <a href="http://www.lostinactionscript.com/blog/" target="_blank">Lost in Actionscript</a> blogunun yazarı olan Shane McCartney bir çalışmasını paylaşmak istedim.SwfProfiler proje development sırasında gözümüzden kaçan performans detaylarını can sıkmadan sizlere sunma kaygısında.Nitekim sağ tıklama menusune Show Profiler / Hide Profiler ile yeleşen bu yardımcı uygulama ile anlık fps, otalama fps ve bellek kullanımı gibi uygulama performansı hakkında bilgi verebilecek detaylar hem grafiksel hem text halinde uygulamanızda çalışır hale geliyor.Gereğinden fazla iş yapmayıp uygulamınızı şişirmeye gayret eden bu oyuncak ile eğlenebileceğinizi umuyorum.</p>
<p style="text-indent: 10px">Geliştiricinin bu çalışmasını <a href="http://lostinactionscript.googlecode.com/svn/trunk/" target="_blank">proje svn klasöründen</a> çekebilirsiniz.</p>
<p style="text-indent: 10px">
    <div id="swfobj_0">
      <p>The Flash plugin is required to view this object.</p>
    </div>
</p>
<p style="text-indent: 10px"><a href="http://away4m.com/away4m/experience/lia/loast-in-actionscript.rar#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed" target="_blank">proje dosyaları</a></p>
<p style="text-indent: 10px">
]]></content:encoded>
			<wfw:commentRss>http://away4m.com/2009/11/29/swfprofiler-ile-proje-performansina-hkmedin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
