<?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>Sinan Erdinç &#187; adobe</title>
	<atom:link href="http://www.sinanerdinc.com/tag/adobe/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sinanerdinc.com</link>
	<description>işte böyle düşüncelerim var</description>
	<lastBuildDate>Wed, 11 Jan 2012 21:17:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Flex Nedir?</title>
		<link>http://www.sinanerdinc.com/flex-nedir/</link>
		<comments>http://www.sinanerdinc.com/flex-nedir/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 11:13:52 +0000</pubDate>
		<dc:creator>Sinan Erdinç</dc:creator>
				<category><![CDATA[Programlama ve Tasarım]]></category>
		<category><![CDATA[Teknoloji ve İnternet]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[adobe flash]]></category>
		<category><![CDATA[Adobe RIA]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[flex examples]]></category>
		<category><![CDATA[flex kodları]]></category>
		<category><![CDATA[flex nedir]]></category>
		<category><![CDATA[flex örnek]]></category>
		<category><![CDATA[flex uygulamarı]]></category>
		<category><![CDATA[flex xhtml]]></category>
		<category><![CDATA[flex xml]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[RIA nedir]]></category>

		<guid isPermaLink="false">http://www.sinanerdinc.com/?p=671</guid>
		<description><![CDATA[Adobe ya da o zamanki ad?yla Macromedia, Flash MX sürümünü duyururken RIA ad? verilen bir kavramla da tanı?tırd? bizleri. Bu, aslında Web 2.0&#8242;?n göz k?rpmasıyd? kullanıc?lara. Artık internette sunulan içerik daha “zengin” olacak, kullanıc?yla etkileğim için standart HTML&#8217;in sundu?u formlar, butonlar dışında, daha çok masaüstü uygulamalarda görmeye al??k?n oldu?umuz menüler, efektler gibi gelişmiş, göze hitap [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Flex Nedir?" src="http://www.bilisimdergi.com/upload/Image/subat2010/image1.png" alt="image1 Flex Nedir?" width="263" height="263" /><a href="http://www.sinanerdinc.com/tag/adobe/" class="st_tag internal_tag" rel="tag" title="Posts tagged with adobe">Adobe</a> ya da o zamanki ad?yla Macromedia, Flash MX sürümünü duyururken <a href="http://www.sinanerdinc.com/tag/ria/" class="st_tag internal_tag" rel="tag" title="Posts tagged with RIA">RIA</a> ad? verilen bir kavramla da tanı?tırd? bizleri. Bu, aslında Web 2.0&#8242;?n göz k?rpmasıyd? kullanıc?lara. Artık internette sunulan içerik daha “zengin” olacak, kullanıc?yla etkileğim için standart HTML&#8217;in sundu?u formlar, butonlar dışında, daha çok masaüstü uygulamalarda görmeye al??k?n oldu?umuz menüler, efektler gibi gelişmiş, göze hitap eden ve üretkenlişi artıran bile?enler kullanılabilecekti. Nitekim öyle de oldu. Beklentiler yükseldi. Artık bir Web sitesinin sadece işlevini görüyor olması yeterli değil, bunu estetik bir arayüzle kullanıc?lara sunması ve etkileğimi artırması da önemli öncelikler arasında yerini ald?.</p>
<p>Arayüzü kötü bir uygulamanın, cevher nitelişinde olsa bile kullanıc?lar için hiçbir anlam ifade etmedişi anla??ldıkça, arayüz tasarım?, uygulamaların dişer bölümlerinin geliştirilmesinden ayrı olarak ele alınıyor artık. Bu anlamda Model – View – Controller (MVC) ad? verilen bir geliştirme yakla??m?yla, veri katmanı (Model), bu verileri işleyip kullanıc?nın istedişi ?ekle getiren kontrol katmanı (Control) ve bu katmanların kullanıc?yla etkile?mesini üstlenen sunum katmanı (View) ?eklinde üç yap? ile birbirinden daha iyi soyutlanmış olarak, daha efektif yaz?l?m geliştirme süreçleri planlanabilmekte.</p>
<p>Adobe bu gelişmeleri ve ihtiyaçları göz önünde bulundurarak 2004&#8242;ün mart ay?nda yeni bir yaz?l?m geliştirme platformunu tanıttı: <a href="http://www.sinanerdinc.com/tag/flex/" class="st_tag internal_tag" rel="tag" title="Posts tagged with flex">Flex</a>. Böylece arayüzün (View) dişerlerinden ayrı olarak geliştirilip daha sonra dişerlerine kolaylıkla entegre edilebilmesi de basitle?tirilmiş oldu.</p>
<p><strong>Nedir ?</strong></p>
<p><strong> </strong>Bu kadar gevezelikten sonra isterseniz Adobe Flex&#8217;in ne oldu?unu daha somut ifadelerle anlatal?m. Adobe Flex aslında bir yaz?l?m değildir. Birçok ?eyi birle?tiren bir platform oldu?u söylenebilir. K?saca göz atarsak;</p>
<ul>
<li>XML tabanl? MXML ad? verilen, kendine has bir dili vard?r. Bu dilde yaz?lan uygulamaların, derlenerek SWF haline getirilebilmesi için Flex Compiler ad? verilen derleyici ücretsiz ve açık kaynak olarak sunulmaktad?r.</li>
<li>Anla??laca?? gibi Flex, Flash tabanl? uygulamalar (SWF) üretir ve bu yüzden MXML&#8217;in yetersiz kald??? durumlarda Action Script kullanım?na da izin verir, hatta bunu destekler de diyebiliriz. Zaten biraz a?ina oldu?unuzda göreceksiniz ki, çok basit olmayan uygulamalar için MXML&#8217;in yanında mutlaka Action Script kullanmak gerekiyor.</li>
<li>MXML ve Action Script ile uygulama geliştirmek için derleyicisi yeterli olsa da, daha verimli bir geliştirme ortam? olarak Flex Builder ad? verilen IDE de kullanıc?lara sunulmakta. Ancak ne yaz?k ki, bu yaz?l?m ücretsiz değil. Yine de eğitim amaçl? kullanılmak istenirse, <a href="https://freeriatools.adobe.com/flex/">https://freeriatools.adobe.com/flex/</a> adresi arac?l???yla ücretsiz bir lisans alınabilmekte.</li>
<li>Flex, Flash tabanl? uygulamaların Web ortam?nda kullanılmak üzere tasarlanmasını kolayla?tırarak (Flash&#8217;a göre), geliştiricinin gereksiz detaylarla u?ra?masını engeller. Bu amaca adanmıştır, bu yönüyle Flash&#8217;tan farkl?d?r.</li>
</ul>
<p><strong>Özellikleri, Yetenekleri</strong></p>
<p>Flex ile uygulama geliştirmek için her ne kadar sadece derleyicisi yetse de, ço?u tasarımc? için bu yeterli değil çünkü Flex Builder&#8217;?n MXML ve ActionScript işleme yeteneği, kodları otomatik olu?turabilmesi, kod önerileri sunması, düzeltme yapması, kodları renklendirmesi, derleyicide otomatik derleyip çıkan hataları açıklay?c? olarak göstermesi gibi özellikleri kendisinin kullanılmasını neredeyse vazgeçilmez k?l?yor.</p>
<p><img class="aligncenter" title="Flex Nedir?" src="http://www.bilisimdergi.com/upload/Image/subat2010/image2.png" alt="image2 Flex Nedir?" width="624" height="466" /></p>
<p>Flex Builder, önceleri kendi başına bir programken (aynı Dreamweaver gibi) daha sonra Java, PHP ya da C++ geliştirmede kullanılan Eclipse üzerine bir eklenti (plug-in) olarak kurulup bu ?ekilde kullanılmak üzere indirmeye sunulmu?. ?u anda Eclipse&#8217;e bütünleğik olan sürümünü indirebileceğiniz gibi, “benim Eclipse&#8217;im var” derseniz eklenti olarak da indirip kullanabiliyorsunuz.</p>
<p>Windows sürümü oldukça başarıl? olmasına ra?men, Linux sürümü henüz deneme aşamasında. Ama yine de, ben, Linux üzerinde gerekli ayarlamaları yaptıktan sonra gayet güzel sonuçlar elde ettim.</p>
<p>Flex çok kapsaml? bir geliştirme ortam? sunuyor bizlere. Yazd???m?z uygulamay? neredeyse her türlü teknolojiyle beraber kullanabiliyoruz. Her çiçekten bal alabiliyoruz diyelim. <img src='http://www.sinanerdinc.com/wp-includes/images/smilies/icon_smile.gif' alt="icon smile Flex Nedir?" class='wp-smiley' title="Flex Nedir?" /> </p>
<ul>
<li>Flex, d?? dünyayla etkileğim için çok farkl? seçenekler sunmakta. XML olarak girdilerin, Web servislerinin, FMS, Red5 gibi multimedya sunucularının, CSS ile sistematik biçimlendirmenin, PHP,  ASP.NET,  ColdFusion gibi dinamik Web programlama dillerinin, istemciler arasında mesajla?manın, uygulama sunucusu (application server) tarafından payla??lan bilgilerin (örneğin Java&#8217;daki bir nesne) RemoteObject yap?sıyla ortak kullanım?nın bir arada bulundu?u bir geliştirme platformu dü?ünün. ??te Flex&#8217;in bal ald??? çiçekler!</li>
<li>Bile?en (component) tabanl? yap?sıyla, katmanlara ayrılabilmesi ve her katmanın dişerlerine minimum ba??ml?lıkla geliştirilebilmesi önemli bir özellik. Flex&#8217;in kendi içerisindeki her türden bile?enin (yazd?rmadan tutun, drag&amp;drop desteğine, charting bile?enlerine kadar) haricinde, kendi özel bile?enlerinizi yazarak birçok projede ortak kullanmak da mümkün.</li>
<li>Action Script desteğiyle, belli olaylar gerçekle?tişinde, belli fonksiyonların tetiklenmesini sağlamak mümkün.</li>
<li>Durumlar ve geçişler (states, transitions) ile Web uygulamalarına yak?şacak ?ekilde durumlar belirleyebiliyor, bu durumlar arasındaki geçişlerde özel efektler kullanabiliyoruz. Bu özelliklere sahip uygulamalar Flash ile yapılmaya çal???ldığında çok zahmetliyken, burada birkaç satır MXML koduyla göze hitap eden uygulamalar yazabiliyoruz.</li>
<li>Web dışında Adobe AIR ile çal?şabilen uygulamalar yazabiliyoruz. Böylece Flex ile yazd???m?z uygulamalar masaüstü uygulama olarak da çal??tırılabiliyor. Adobe AIR&#8217;in kurulu oldu?u bir sistemde çal?şan Flex uygulamaları kolaylıkla yaz?labiliyor. Hem de bunun Web uygulaması yazmaktan neredeyse fark? yok!</li>
</ul>
<p><strong>Kullanım Alanları</strong></p>
<p>K?saca Flash uygulamalarının kullanıc?yla etkileğim amaçl? yani arayüz olarak kullanıld??? tüm alanlar, Flex&#8217;in de kullanım alanları içerisinde. Bunların bağl?caları; e-ticaret uygulamaları, masaüstü uygulamaların online sürümleri, multimedya uygulamaları, eklenti ve widget&#8217;lar (örneğin Facebook için), gerçek dünyadaki varlıklar için kontrol uygulamaları (örneğin bir deniz arac?nın internetten takip edilmesi), masaüstü uygulamaları (Adobe AIR ile).</p>
<p>Bunlar sadece örnek. Flex&#8217;in kullanım alanlarının sınırı yok. <a href="http://www.flex.org/">http://www.flex.org</a> sitesindeki Showcase&#8217;den farkl? örnekler görebilirsiniz.</p>
<p><strong>Örnek Bir Uygulama</strong></p>
<p>Yaz?m?z?, gözümüzde canlanması aç?sından örnek bir uygulamanın MXML ile nasıl yaz?labileceğini göstererek bitirelim. MXML&#8217;in bile?en tabanl? yap?sıyla estetik ve fonksiyonel uygulamaların nasıl birkaç satır kodla halledilebildişini kendi gözlerinizle görün.</p>
<table border="0">
<tbody>
<tr>
<td>
<ol>&lt;?xml 				version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243;?&gt;</p>
<p>&lt;mx:Application 				xmlns:mx=&#8221;<a href="http://www.adobe.com/2006/mxml">http://www.adobe.com/2006/mxml</a>&#8221; 				layout=&#8221;absolute&#8221;&gt;</p>
<p>&lt;mx:HBox 				top=&#8221;10” left=&#8221;10&#8243;&gt;</p>
<p>&lt;mx:HSlider 				minimum=&#8221;?30” maximum=&#8221;30” value=&#8221;?10” toolTip=&#8221;Rotation” 				change=&#8221;myimg.rotation=event.currentTarget.value” liveDragging=&#8221;true” 				/&gt;</p>
<p>&lt;mx:HSlider 				minimum=&#8221;100” maximum=&#8221;300” value=&#8221;100” toolTip=&#8221;Size” 				change=&#8221;myimg.height=event.currentTarget.value” liveDragging=&#8221;true” 				/&gt;</p>
<p>&lt;mx:CheckBox 				label=&#8221;Visible” change=&#8221;myimg.visible= event.currentTarget.selected” 				selected=&#8221;true&#8221;/&gt;</p>
<p>&lt;/mx:HBox&gt;</p>
<p>&lt;mx:Image 				id=&#8221;myimg&#8221; source=&#8221;@Embed(&#8216;mypicture.jpg&#8217;)&#8221; height=&#8221;100&#8243; 				top=&#8221;60&#8243; left=&#8221;30&#8243; rotation=&#8221;?10&#8243;&gt;</p>
<p>&lt;mx:filters&gt;</p>
<p>&lt;mx:DropShadowFilter 				/&gt;</p>
<p>&lt;/mx:filters&gt;</p>
<p>&lt;/mx:Image&gt;</p>
<p>&lt;/mx:Application&gt;</ol>
</td>
</tr>
</tbody>
</table>
<p>Görüldü?ü gibi kolay anla??l?r XML kodlarından ibaret. Her komut için mx adl? bir namespace kullanıl?yor. Gerisi component&#8217;ler ve bunların özellikler (property) ile kontrol edilmesi üzerine kurulu. Bu örnekte HBox, HSlider, CheckBox, Image, DropShadowFilter kullanıld?. Bunların hepsi birer component ve görüldü?ü gibi iç içe de kullanılabiliyorlar. Yukarıdaki kodların çıktısı olan uygulama:</p>
<p style="text-align: center;"><img class="aligncenter" title="Flex Nedir?" src="http://www.bilisimdergi.com/upload/Image/subat2010/image3.png" alt="image3 Flex Nedir?" width="485" height="436" /></p>
<p><strong>Kaynaklar:</strong></p>
<ul>
<li><em>The Essential Guide to Flex 3</em>, Charles E. Brown, Friends of Ed Publishing</li>
<li><em>Getting Started with Flex 3</em>, Jack D. Herrington &amp; Emily Kim, O&#8217;Reilly Media</li>
<li><em>Adobe Flex Resmi Web Sitesi</em>, <a href="http://www.adobe.com/products/flex/">http://www.adobe.com/products/flex/</a></li>
<li><em>RIA – Wikipedia</em>, <a href="http://en.wikipedia.org/wiki/Rich_Internet_application">http://en.wikipedia.org/wiki/Rich_Internet_application</a></li>
<li><em>Adobe Flex – Wikipedia</em>, <a href="http://en.wikipedia.org/wiki/Adobe_Flex">http://en.wikipedia.org/wiki/Adobe_Flex</a></li>
<li><a href="http://www.bilisimdergi.com/Zengin-internet-Uygulamalarinin-Gucunu-Kesfedin-11-2.html" target="_blank">http://www.bilisimdergi.com/Zengin-internet-Uygulamalarinin-Gucunu-Kesfedin-11-2.html</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.sinanerdinc.com/flex-nedir/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

