<?xml version="1.0" encoding="windows-1254"?>
<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>Arda Çetinkaya &#187; Design Patterns</title>
	<atom:link href="http://www.minepla.net/tag/design-patterns/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.minepla.net</link>
	<description></description>
	<lastBuildDate>Sat, 04 Sep 2010 13:09:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Microsoft Enterprise Library 5.0 versiyonu yayınlandı&#8230;</title>
		<link>http://www.minepla.net/2010/04/microsoft-enterprise-library-5-yayynland/</link>
		<comments>http://www.minepla.net/2010/04/microsoft-enterprise-library-5-yayynland/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 17:14:26 +0000</pubDate>
		<dc:creator>Arda</dc:creator>
				<category><![CDATA[Kavanoz]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.minepla.net/?p=1138</guid>
		<description><![CDATA[patterns &#38; practices ekibinden uzun süredir beklenen haber geldi. Microsoft Enterprise Library 5.0 versiyonu son halini alıp yayınlandı.  Bu adresten kütüphanenin kurulum dosyalarını ve kaynak kodlarını indirip, kendi geliştirmekte olduğunuz uygulamalarda kullanabilirsiniz. Ayrıca ayrıntılı bilgi ve dökümantasyon için de MSDN sayfasına göz atmanızı tavsiye ederim.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float:right; margin-left: 10px;margin-right:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.minepla.net%2F2010%2F04%2Fmicrosoft-enterprise-library-5-yayynland%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.minepla.net%2F2010%2F04%2Fmicrosoft-enterprise-library-5-yayynland%2F&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>patterns &amp; practices ekibinden uzun süredir beklenen haber geldi. Microsoft Enterprise Library 5.0 versiyonu son halini alıp yayınlandı.  <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=bcb166f7-dd16-448b-a152-9845760d9b4c&amp;displaylang=en" target="_blank"><strong>Bu adresten</strong></a> kütüphanenin kurulum dosyalarını ve kaynak kodlarını indirip, kendi geliştirmekte olduğunuz uygulamalarda kullanabilirsiniz.</p>
<p>Ayrıca ayrıntılı bilgi ve dökümantasyon için de <a href="http://msdn.microsoft.com/en-us/library/ff632023.aspx" target="_blank"><strong>MSDN sayfasına</strong></a> göz atmanızı tavsiye ederim.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minepla.net/2010/04/microsoft-enterprise-library-5-yayynland/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Okumak lazım&#8230;</title>
		<link>http://www.minepla.net/2009/08/okumak-lazym/</link>
		<comments>http://www.minepla.net/2009/08/okumak-lazym/#comments</comments>
		<pubDate>Tue, 11 Aug 2009 10:33:36 +0000</pubDate>
		<dc:creator>Arda</dc:creator>
				<category><![CDATA[Kavanoz]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Design Patterns]]></category>

		<guid isPermaLink="false">http://www.minepla.net/?p=468</guid>
		<description><![CDATA[Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries .Net ile uygulama geliştiren herkesin okuması gerekli olan bir kitap. Uzun zaman önce almış okumuştum,şimdi tekrardan bilgilerimi tazeliyorum. .Net Framework&#8217;ü geliştirilirken ki yaklaşımların paylaşıldığı,süper öğretici bir kitap&#8230; 2. baskısı çıktı. .NET 3.5 ile ilgili,ona da bakın derim&#8230; Pro ASP.NET MVC Framework En son aldığım [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float:right; margin-left: 10px;margin-right:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.minepla.net%2F2009%2F08%2Fokumak-lazym%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.minepla.net%2F2009%2F08%2Fokumak-lazym%2F&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p style="text-align: left;"><a href="http://www.amazon.com/Framework-Design-Guidelines-Conventions-Development/dp/0321545613/ref=sr_1_1?ie=UTF8&amp;qid=1249981556&amp;sr=8-1" target="_blank"><strong>Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries</strong></a></p>
<p style="text-align: left;"><img class="alignleft" title="Framework Design Guidelines" src="http://ecx.images-amazon.com/images/I/5138dM4PHnL._SL500_AA240_.jpg" alt="" width="168" height="168" />.Net ile uygulama geliştiren herkesin okuması gerekli olan bir kitap. Uzun zaman önce almış okumuştum,şimdi tekrardan bilgilerimi tazeliyorum. .Net Framework&#8217;ü geliştirilirken ki yaklaşımların paylaşıldığı,süper öğretici bir kitap&#8230; 2. baskısı çıktı. .NET 3.5 ile ilgili,ona da bakın derim&#8230;</p>
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left; "><a href="http://www.amazon.com/Pro-ASP-NET-Framework-Steven-Sanderson/dp/1430210079/ref=sr_1_1?ie=UTF8&amp;qid=1249981793&amp;sr=8-1" target="_blank"><strong>Pro ASP.NET MVC Framework</strong></a></p>
<p style="text-align: left; "><img class="alignright" title="Pro Asp.Net MVC Framework" src="http://ecx.images-amazon.com/images/I/51AccYmg-TL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_.jpg" alt="" width="144" height="144" />En son aldığım kitap. Düşündüğümden de çabuk elime ulaştı,düşündüğümden de hızlı okuyorum&#8230;ASP.NET MVC Framework ile geliştirme yapıyorsanız mutlaka elinizin altında bulunması gereken bir kitap. Çok güzel örnekleri var,temel konular ile başlayıp,ileri düzey ASP.NET MVC Framework konularına da değinilmiş bir kitap.</p>
<p style="text-align: left; ">
]]></content:encoded>
			<wfw:commentRss>http://www.minepla.net/2009/08/okumak-lazym/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Asp.Net MVC Framework&#8217;de Entity Framework hatası&#8230;</title>
		<link>http://www.minepla.net/2009/08/asp-net-mvc-frameworkde-entity-framework-hatasy/</link>
		<comments>http://www.minepla.net/2009/08/asp-net-mvc-frameworkde-entity-framework-hatasy/#comments</comments>
		<pubDate>Sun, 09 Aug 2009 10:41:16 +0000</pubDate>
		<dc:creator>Arda</dc:creator>
				<category><![CDATA[Kavanoz]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Design Patterns]]></category>
		<category><![CDATA[Entity Framework]]></category>

		<guid isPermaLink="false">http://www.minepla.net/?p=465</guid>
		<description><![CDATA[Compiler Error Message: CS0012: The type &#8216;System.Data.Objects.DataClasses.EntityObject&#8217; is defined in an assembly that is not referenced. You must add a reference to assembly &#8216;System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&#8242;. Asp.NET MVC Framework ile Entity Framework kullanmak isteyebilirsiniz&#8230;Bakınız ben&#8230;Çok basit bir işlem için tüm kodlarımı yazdım,ilgili referanslarımı verdim.Projelerimi derledim ve hiç bir hata almadım. Ta ki projeyi çalıştırana [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float:right; margin-left: 10px;margin-right:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.minepla.net%2F2009%2F08%2Fasp-net-mvc-frameworkde-entity-framework-hatasy%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.minepla.net%2F2009%2F08%2Fasp-net-mvc-frameworkde-entity-framework-hatasy%2F&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<blockquote><p>Compiler Error Message: CS0012: The type &#8216;System.Data.Objects.DataClasses.EntityObject&#8217; is defined in an assembly that is not referenced. You must add a reference to assembly &#8216;System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&#8242;.</p></blockquote>
<p>Asp.NET MVC Framework ile Entity Framework kullanmak isteyebilirsiniz&#8230;Bakınız ben&#8230;Çok basit bir işlem için tüm kodlarımı yazdım,ilgili referanslarımı verdim.Projelerimi derledim ve hiç bir hata almadım. Ta ki projeyi çalıştırana kadar&#8230;</p>
<p>Projeyi çalıştırdığımda yukarıdaki gibi bir hata aldım. İlgili bir DLL dosyasını bulamamadan kaynaklanan çok tanıdık bir hata. Proje referanslarımı kontrol ettim baktım düzgün,olması gereken tüm DLL&#8217;ler var&#8230;İlginç&#8230;</p>
<p>Sonra ASP.NET MVC Framework&#8217;te runtime&#8217;da bir sürü işlemlerin arka tarafta yapıldığı aklıma geldi ve runtime&#8217;da gerekli olacak bu DLL&#8217;in bir şekilde runtime sırasında yüklenmediği kanatine vardım.Ve tabi ki ilk baktığım yer web.config&#8217;deki assemblies kısmı oldu. Buraya aşağıdaki satırı ekleyince artık her şey istediğim gibi oldu.</p>
<blockquote><p>&lt;add assembly=&#8221;System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089&#8243;/&gt;</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.minepla.net/2009/08/asp-net-mvc-frameworkde-entity-framework-hatasy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET MVC RC2 çıktı&#8230;</title>
		<link>http://www.minepla.net/2009/03/aspnet-mvc-rc2-cykty/</link>
		<comments>http://www.minepla.net/2009/03/aspnet-mvc-rc2-cykty/#comments</comments>
		<pubDate>Thu, 05 Mar 2009 19:35:29 +0000</pubDate>
		<dc:creator>Arda</dc:creator>
				<category><![CDATA[Kavanoz]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Design Patterns]]></category>

		<guid isPermaLink="false">http://www.minepla.net/?p=290</guid>
		<description><![CDATA[Sona doğru yaklaşıyoruz sanırım. ASP.NET için geliştirilmekte olan MVC Framework&#8217;ünün RC2 versiyonu yayınlandı. Yeni versiyon setup ve deployment konularında yenilikler içeriyor. En önemli yenilik hosting şirketleri için özel kurulum modu diyebilirim. Daha fazla ayrıntıyı buradan öğrenebilirsiniz.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float:right; margin-left: 10px;margin-right:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.minepla.net%2F2009%2F03%2Faspnet-mvc-rc2-cykty%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.minepla.net%2F2009%2F03%2Faspnet-mvc-rc2-cykty%2F&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Sona doğru yaklaşıyoruz sanırım. ASP.NET için geliştirilmekte olan MVC Framework&#8217;ünün RC2 versiyonu yayınlandı. Yeni versiyon setup ve deployment konularında yenilikler içeriyor. En önemli yenilik hosting şirketleri için özel kurulum modu diyebilirim. Daha fazla ayrıntıyı <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=ee4b2e97-8a72-449a-82d2-2f720d421031&amp;displaylang=en" target="_blank">buradan</a> öğrenebilirsiniz.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minepla.net/2009/03/aspnet-mvc-rc2-cykty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Asp.net MVC framework betası çıktı&#8230;</title>
		<link>http://www.minepla.net/2008/10/aspnet-mvc-framework-betasy-cykty/</link>
		<comments>http://www.minepla.net/2008/10/aspnet-mvc-framework-betasy-cykty/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 06:56:55 +0000</pubDate>
		<dc:creator>Arda</dc:creator>
				<category><![CDATA[Kavanoz]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Design Patterns]]></category>

		<guid isPermaLink="false">http://www.minepla.net/?p=172</guid>
		<description><![CDATA[Priview 4&#8242;den sonra Beta şeklinde yavaş yavaş son halini alan MVC framework&#8217;ü çıktı. Scott Guthrie&#8217;nin ayrıntılı haberini buradan okuyabilirsiniz.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float:right; margin-left: 10px;margin-right:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.minepla.net%2F2008%2F10%2Faspnet-mvc-framework-betasy-cykty%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.minepla.net%2F2008%2F10%2Faspnet-mvc-framework-betasy-cykty%2F&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Priview 4&#8242;den sonra Beta şeklinde yavaş yavaş son halini alan MVC framework&#8217;ü çıktı. Scott Guthrie&#8217;nin ayrıntılı haberini <a href="http://weblogs.asp.net/scottgu/archive/2008/10/16/asp-net-mvc-beta-released.aspx" target="_blank">buradan </a>okuyabilirsiniz.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minepla.net/2008/10/aspnet-mvc-framework-betasy-cykty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ne &#8220;Model-View-Controller&#8221; mı?</title>
		<link>http://www.minepla.net/2007/10/ne-model-view-controller-my/</link>
		<comments>http://www.minepla.net/2007/10/ne-model-view-controller-my/#comments</comments>
		<pubDate>Wed, 17 Oct 2007 12:38:22 +0000</pubDate>
		<dc:creator>Arda</dc:creator>
				<category><![CDATA[Kavanoz]]></category>
		<category><![CDATA[Design Patterns]]></category>

		<guid isPermaLink="false">http://www.minepla.net/?p=89</guid>
		<description><![CDATA[“Tasarım kalıpları”(design patterns) kavramları her yazılımcının bir şekilde duyduğu, hatta çoğu yazılımcının başvurduğu mimari yaklaşımlar olarak yazılım mühendisliği alanında yer etmiştir. Kimileri ne gerek var, kimileride olmazsa olmaz gibi yaklaşımlarla tasarım kalıpları hakkında düşüncelerini belirtsede ister istemez bir şekilde her yazılımcının fark etmeden bile biraz olsun kullandığı bazı kalıplar vardır. MVC(Model View Controller) bunlardan biridir, [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float:right; margin-left: 10px;margin-right:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.minepla.net%2F2007%2F10%2Fne-model-view-controller-my%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.minepla.net%2F2007%2F10%2Fne-model-view-controller-my%2F&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>“Tasarım kalıpları”(design patterns) kavramları her yazılımcının bir şekilde duyduğu, hatta çoğu yazılımcının başvurduğu mimari yaklaşımlar olarak yazılım mühendisliği alanında yer etmiştir. Kimileri ne gerek var, kimileride olmazsa olmaz gibi yaklaşımlarla tasarım kalıpları hakkında düşüncelerini belirtsede ister istemez bir şekilde her yazılımcının fark etmeden bile biraz olsun kullandığı bazı kalıplar vardır. MVC(Model View Controller) bunlardan biridir, hatta farkında olmadan en çok kullanılan tasarım kalıplarından biridir. Bunun nedeni uygulama geliştirme araçlarının artık bu tarz kalıplar ile geliştirme yapmakta kolaylık sunuyor olması. Bu kısma fazla girmeden MVC’nin ne olduğunu biraz daha açalım.</p>
<p><span id="more-89"></span></p>
<p>Mimari yönden önemli olan seperation of concerns(ilgilerin ayrımı), MVC’nin temelinde olan en önemli olan kavramdır. Peki ne demek bu ilgilerin ayrımı ya da neden gerekli? En basitinden çok kullanılan “iş mantığı(business logic) ve veri yapısının(data) birbirinden ayrımı” ilgilerin ayrımı kavramına en soyut örnek olabilir. Yazılımı oluşturan kavramların bir birinden ayrılması, kendi özelliklerinin bağımsız olarak ele alınması ilgilerin ayrımı olarak adlandırılabilir. Neden gerekli olduğuna gelince de, bu yazılımın yenilenebilir ve canlı olması gerektiği gibi mimarı yaklaşımlar ile açıklanabilir.</p>
<p>Basit bir örnek ile ilgileri neden ayırmak gerektiğini biraz daha açalım. Bir uygulama düşünün, belli iş kurallarına göre, belli bir data üzerinde işlemler yapan ve bunları müşteriler ile paylaşan.  Ve bunları yaparken iş mantığının da arayüz ile beraber iç içe yapıldığını farz edin. En basitinden iş mantığında ki bir değişiklik, arayüz kodlarına müdahale edilmesine, basit bir deployment güncellemesinde komple tekrar bütün kodların işleme alınmasına neden olacaktır. Bu sadece çıkabilecek basit bir sorun.</p>
<p>Değişen iş mantığının data yapısına,yada kullanıcı arayüzüne etkisi minimum derecede olması gerekmektedir. Bu kısımda MVC yaklaşımı ortaya çıkıyor.</p>
<p>MVC yaklaşımında;</p>
<p><strong>Model:</strong>Uygulama tarafından sunulacak olan bilgiler Model ismi altında ele alınıyor.  Business işlemleri  sonuçlarında yorumlanmış data,ya da ham data Model altında ele alınabilir. Bu datalar,bir web servisinden,bir dosyadan yada bir database’den geliyor olabilir. Kısaca nereden ya da nasıl geldiği önemli olmayan veri kümeleri Model çatısı altında ele alınır. Örnek vermek gerekirse de .NET’deki DataSet,DataTable kavramları gösterilebilir.</p>
<p><strong>View:</strong>Model’in görüntülendiği kısımdır. Daha da anlaşılır olarak, UI(userinterface) kısmı View çatısı altında ele alınır. ASP.NET’deki Aspx sayfaları ve .ascx kullanıcı kontrolleri view çatısı altında ele alınabilecek kavramlar olarak örnek gösterilebilir.</p>
<p><strong>Controller:</strong>View çatısı altındaki elemanların etkişelimleri Controller altında ele alınır. Model üzerinde değişiklikler yapılabilmesini sağlayan işlemler,işlemleri tetikleyen etkiler Controller çatısı altındadır. Yine .NET’deki event ve handler mekanizmaları örnek olarak gösterilebilir.</p>
<p>Bir web uygulaması akışı üzerinden MVC mantığını biraz daha pekiştirelim.</p>
<ol>
<li>Kullanıcı web sayfasını(View) görüntüler.</li>
<li>Sayfa ile bir buton’a basarak etkileşime girer.</li>
<li>Bu etkileşim sonucunda ki olay veriye(Model) etki eder.(Controller)</li>
<li>Veri(Model) güncellenir,değişir, değişen yapıya göre tekrar View oluşur.</li>
</ol>
<p>Bu akıştan; View, Model’ın nasıl değişeceğini bilmez. Model için View’in nasıl olacağı önemli değildir, gibi yargılara ulaşabiliriz ki amacımız da buydu.</p>
<p>MVC’yi basitçe anlatabilmişimdir umarım, bu basit bilgilendirme umarım biraz daha bazı şeylerin netleşmesinde yardımcı olmuştur. İlerleyen zamanlarda  benzer konular ile bu yönde öğrendiklerimi,yaptıklarımı paylaşacağım.Sizinde düşünce ve fikirleriniz varsa, benimle paylaşmaktan çekinmeyin&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.minepla.net/2007/10/ne-model-view-controller-my/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
