<?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>Kurumsal Java Yazılımı &#187; Tasarım Şablonları (Design Patterns)</title>
	<atom:link href="http://www.kurumsaljava.com/category/designpatterns/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kurumsaljava.com</link>
	<description>Java Enterprise Architecture by Ozcan Acar</description>
	<lastBuildDate>Fri, 30 Dec 2011 09:28:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Decorator Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2010/07/24/decorator-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2010/07/24/decorator-tasarim-sablonu/#comments</comments>
		<pubDate>Sat, 24 Jul 2010 19:20:13 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Decorator Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=1203</guid>
		<description><![CDATA[<p>Mevcut bir sınıf hiyerarşisini ya da sınıfın yapısını değiştirmeden, oluşturulan nesnelere yeni özelliklerin eklenme işlemini gerçekleştirmek için Decorator tasarım şablonu kullanılır.</p>
<p><span id="more-1203"></span></p>
<p>Alt sınıfların oluşturulması yöntemiyle, sınıflara yeni özelliklerin eklenmesi, daha sonra sisteme eklenecek alt sınıflar için değiştirilmesi zor kalıpların oluşmasını beraberinde getirir. Bu durumda, üst sınıflarda tanımlanmış olan bazı özellikler statik ve alt sınıflar için değistirilemez ya da kullanımı engellenemez bir hal alabilir. Kullanıcı sınıflar içinde bu sorun teşkil edebilir, çünkü kendi istekleri doğrultusunda bir nesnenin ne zaman ve nasıl oluşturulması gerektiğini yönlendiremeyebilirler.</p>
<p>Nesnelere, sahip oldukları sınıfların yapılarının değistirilmeden yeni özelliklerin eklenmesini sağlayan Decorator tasarım şablonu ile, istenilen özelliklerin ekleneceği nesne başka bir nesne içine gömülür. Yeni özellik eklenen nesneyi içine alan nesneye dekoratör ismi verilir. Dekoratör nesnesi ile yeni özellik eklenen nesne aynı üst sınfa dahil olduklarından, birbirleriyle değiştirilebilir haldedirler. Bu özellikten dolayı kullanıcı sınıf, dekoratör sınıf ile dekoratör nesne bünyesinde bulunan diğer nesne arasında ayrım yapmaz. Nesneler arası ilişkiye aşagıda ye ralan Uml diagramında görüyoruz.<br />
<a href="http://www.kurumsaljava.com/wp-content/uploads/2010/07/decorator_uml.jpg"><img src="http://www.kurumsaljava.com/wp-content/uploads/2010/07/decorator_uml.jpg" alt="" title="decorator_uml" width="350" height="417" class="aligncenter size-full wp-image-1204" /></a></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Mevcut bir sınıf hiyerarşisini ya da sınıfın yapısını değiştirmeden, oluşturulan nesnelere yeni özelliklerin eklenme işlemini gerçekleştirmek için Decorator tasarım şablonu kullanılır.</p>
<p><span id="more-1203"></span></p>
<p>Alt sınıfların oluşturulması yöntemiyle, sınıflara yeni özelliklerin eklenmesi, daha sonra sisteme eklenecek alt sınıflar için değiştirilmesi zor kalıpların oluşmasını beraberinde getirir. Bu durumda, üst sınıflarda tanımlanmış olan bazı özellikler statik ve alt sınıflar için değistirilemez ya da kullanımı engellenemez bir hal alabilir. Kullanıcı sınıflar içinde bu sorun teşkil edebilir, çünkü kendi istekleri doğrultusunda bir nesnenin ne zaman ve nasıl oluşturulması gerektiğini yönlendiremeyebilirler.</p>
<p>Nesnelere, sahip oldukları sınıfların yapılarının değistirilmeden yeni özelliklerin eklenmesini sağlayan Decorator tasarım şablonu ile, istenilen özelliklerin ekleneceği nesne başka bir nesne içine gömülür. Yeni özellik eklenen nesneyi içine alan nesneye dekoratör ismi verilir. Dekoratör nesnesi ile yeni özellik eklenen nesne aynı üst sınfa dahil olduklarından, birbirleriyle değiştirilebilir haldedirler. Bu özellikten dolayı kullanıcı sınıf, dekoratör sınıf ile dekoratör nesne bünyesinde bulunan diğer nesne arasında ayrım yapmaz. Nesneler arası ilişkiye aşagıda ye ralan Uml diagramında görüyoruz.<br />
<a href="http://www.kurumsaljava.com/wp-content/uploads/2010/07/decorator_uml.jpg"><img src="http://www.kurumsaljava.com/wp-content/uploads/2010/07/decorator_uml.jpg" alt="" title="decorator_uml" width="350" height="417" class="aligncenter size-full wp-image-1204" /></a></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2010%2F07%2F24%2Fdecorator-tasarim-sablonu%2F&amp;linkname=Decorator%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2010/07/24/decorator-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Java Enum ile Singleton Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2010/02/02/java-enum-ile-singleton-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2010/02/02/java-enum-ile-singleton-tasarim-sablonu/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 08:32:42 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Püf Noktası]]></category>
		<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Enum]]></category>
		<category><![CDATA[Singleton]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=1067</guid>
		<description><![CDATA[<p>Daha önceki bir yazımda <a href="http://www.kurumsaljava.com/2008/11/27/singleton-yanlizlik-tasarim-sablonu/" target="_blank">Singleton tasarım şablonunun</a> ne olduğunu ve Java&#8217;da nasıl kullanıldığını yakından incelemiştik. Bu yazımda Java 1.5 den itibaren kullanıma sunulan <i>Enum</i> sınıfı ile singleton tasarım şablonunun nasıl kullanılabileceğine değinmek istiyorum.</p>
<p><span id="more-1067"></span></p>
<p>Öncelikle küçük bir örnek üzerinde singleton bir nesnesinin nasıl oluşturulacağına bir göz atalım:</p>
<pre name="code" class="java">

package com.kurumsaljava.com.designpatterns.singleton;

public class MySingleton
{
    private static final MySingleton instance = new MySingleton();

    private MySingleton()
    {
    }

    public void myMethod()
    {

    }
}
</pre>
<p><i>MySingleton</i> sınıfının sahip olduğu konstruktör <i>private</i> olduğu için bu sınıftan bir nesne oluşturmamız mümkün değildir. Bu sınıf bünyesinde ve <i>MySingleton</i> tipinde olan <i>instance</i> ismindeki sınıf değişkeni singleton nesnedir. Bu sınıf ilk kullanıldığında <i>private</i> olan konstruktör bir defaya mahsus olarak işlem göreceği için <i>instance</i> degişkeni bir singleton nesne haline gelecektir. Buradaki sorun, reflection yöntemleri kullanılarak <i>private</i> olan konstruktörün birden fazla singleton nesne oluşturmasını sağlayabilmektir. Bunun yanısıra eger <i>MySingleton</i> sınıfı <i>Serializable</i> interface sınıfını implemente ediyorsa, <b><i>readResolve()</i></b> metodunun da implemente edilmesi gerekmektedir, aksi taktirde deserializasyon esnasında yeni bir nesne oluşturulur ki, bu da singleton tasarım şablonunun mantığına ters düşer.</p>
<p>Java 1.5 den itibaren kullanıma sunulan <i>Enum</i> sınıfı ile singleton nesneler oluşturmak mümkündür. Bunun bir örneği aşağıda yer almaktadır.</p>
<pre name="code" class="java">

package com.kurumsaljava.com.designpatterns.singleton;

public enum MySingletonEnum
{
    INSTANCE;

    public void myMethod()
    {

    }
}
</pre>
<p><i>MySingletionEnum.INSTANCE</i> sadece ve sadece bir kere mevcut olan bir singleton değişkendir. Bunun yanısıra reflection metotları kullanılarak yeni bir singleton olmayan nesne oluşturulamaz. Ayrıca serializasyon işlemlerinde <i>readResolve()</i> kullanılmak zorunda kalmadan enum nesnesinin singletonluğu garanti edilmektedir. Tek elementli olan bir enum sınıfı singleton tasarım şablonunu implemente etmek i.in kullanılabilecek en iyi yöntemdir.</p>
]]></description>
			<content:encoded><![CDATA[<p>Daha önceki bir yazımda <a href="http://www.kurumsaljava.com/2008/11/27/singleton-yanlizlik-tasarim-sablonu/" target="_blank">Singleton tasarım şablonunun</a> ne olduğunu ve Java&#8217;da nasıl kullanıldığını yakından incelemiştik. Bu yazımda Java 1.5 den itibaren kullanıma sunulan <i>Enum</i> sınıfı ile singleton tasarım şablonunun nasıl kullanılabileceğine değinmek istiyorum.</p>
<p><span id="more-1067"></span></p>
<p>Öncelikle küçük bir örnek üzerinde singleton bir nesnesinin nasıl oluşturulacağına bir göz atalım:</p>
<pre name="code" class="java">

package com.kurumsaljava.com.designpatterns.singleton;

public class MySingleton
{
    private static final MySingleton instance = new MySingleton();

    private MySingleton()
    {
    }

    public void myMethod()
    {

    }
}
</pre>
<p><i>MySingleton</i> sınıfının sahip olduğu konstruktör <i>private</i> olduğu için bu sınıftan bir nesne oluşturmamız mümkün değildir. Bu sınıf bünyesinde ve <i>MySingleton</i> tipinde olan <i>instance</i> ismindeki sınıf değişkeni singleton nesnedir. Bu sınıf ilk kullanıldığında <i>private</i> olan konstruktör bir defaya mahsus olarak işlem göreceği için <i>instance</i> degişkeni bir singleton nesne haline gelecektir. Buradaki sorun, reflection yöntemleri kullanılarak <i>private</i> olan konstruktörün birden fazla singleton nesne oluşturmasını sağlayabilmektir. Bunun yanısıra eger <i>MySingleton</i> sınıfı <i>Serializable</i> interface sınıfını implemente ediyorsa, <b><i>readResolve()</i></b> metodunun da implemente edilmesi gerekmektedir, aksi taktirde deserializasyon esnasında yeni bir nesne oluşturulur ki, bu da singleton tasarım şablonunun mantığına ters düşer.</p>
<p>Java 1.5 den itibaren kullanıma sunulan <i>Enum</i> sınıfı ile singleton nesneler oluşturmak mümkündür. Bunun bir örneği aşağıda yer almaktadır.</p>
<pre name="code" class="java">

package com.kurumsaljava.com.designpatterns.singleton;

public enum MySingletonEnum
{
    INSTANCE;

    public void myMethod()
    {

    }
}
</pre>
<p><i>MySingletionEnum.INSTANCE</i> sadece ve sadece bir kere mevcut olan bir singleton değişkendir. Bunun yanısıra reflection metotları kullanılarak yeni bir singleton olmayan nesne oluşturulamaz. Ayrıca serializasyon işlemlerinde <i>readResolve()</i> kullanılmak zorunda kalmadan enum nesnesinin singletonluğu garanti edilmektedir. Tek elementli olan bir enum sınıfı singleton tasarım şablonunu implemente etmek i.in kullanılabilecek en iyi yöntemdir.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2010%2F02%2F02%2Fjava-enum-ile-singleton-tasarim-sablonu%2F&amp;linkname=Java%20Enum%20ile%20Singleton%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2010/02/02/java-enum-ile-singleton-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Intercepting Filter Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/12/09/intercepting-filter-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/12/09/intercepting-filter-tasarim-sablonu/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 09:23:21 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Intercepting Filter Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=987</guid>
		<description><![CDATA[<p><a target="_blank" href="http://www.kurumsaljava.com/2009/10/09/front-controller-tasarim-sablonu/">Front Controller</a> tasarım şablonunda, kullanıcıdan gelen isteklerin (request) merkezi bir yerde toplanarak, işlem yapıldığını daha önce görmüştük. Intercepting Filter tasarım şablonu ile, kullanıcının isteği (request) işleme alınmadan önce filtreler kullanılarak  süzgeçten geçirilir. Örneğin bir filtre ile kullanıcının işlem öncesi login yaptığını konrol edebiliriz. Filtremiz, session (HttpServletSesion) içinde login bilgilerini bulamadığı taktirde, kullanıcıyı login sayfasına yönlendirebilir.</p>
<p><span id="more-987"></span></p>
<p>Aynı şekilde işlem tamamlandıktan sonra kullanıcıya gönderilecek cevap (response) filtreler yardımı ile modifike edilebilir.</p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_351></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" href="http://www.kurumsaljava.com/2009/10/09/front-controller-tasarim-sablonu/">Front Controller</a> tasarım şablonunda, kullanıcıdan gelen isteklerin (request) merkezi bir yerde toplanarak, işlem yapıldığını daha önce görmüştük. Intercepting Filter tasarım şablonu ile, kullanıcının isteği (request) işleme alınmadan önce filtreler kullanılarak  süzgeçten geçirilir. Örneğin bir filtre ile kullanıcının işlem öncesi login yaptığını konrol edebiliriz. Filtremiz, session (HttpServletSesion) içinde login bilgilerini bulamadığı taktirde, kullanıcıyı login sayfasına yönlendirebilir.</p>
<p><span id="more-987"></span></p>
<p>Aynı şekilde işlem tamamlandıktan sonra kullanıcıya gönderilecek cevap (response) filtreler yardımı ile modifike edilebilir.</p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_351></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F12%2F09%2Fintercepting-filter-tasarim-sablonu%2F&amp;linkname=Intercepting%20Filter%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/12/09/intercepting-filter-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Builder Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/11/17/builder-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/11/17/builder-tasarim-sablonu/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 08:31:23 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Builder Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=923</guid>
		<description><![CDATA[<p>Daha önceki bölümlerde Abstract Factory tasarım şablonu ile değişik nesne ailelerinden nasıl nesneler üretildiğini incelemiştik. Builder tasarım şablonu da Abstract Factory tasarım şablonunda oldugu gibi istenilen bir tipte nesne oluşturmak için kullanılır. İki tasarım şablonu arasındaki fark, Builder tasarım şablonunun kompleks yapıdaki bir nesneyi değişik parçaları bir araya getirerek oluşturmasında yatmaktadır. Birden fazla adım içeren nesne üretim sürecinde, değişik parçalar birleştirilir ve istenilen tipte nesne oluşturulur.</p>
<p><span id="more-923"></span></p>
<p>Diğer bölümlerde olduğu gibi bir örnek üzerinde bu tasarım şablonunu yakından inceliyelim.</p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_329></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Daha önceki bölümlerde Abstract Factory tasarım şablonu ile değişik nesne ailelerinden nasıl nesneler üretildiğini incelemiştik. Builder tasarım şablonu da Abstract Factory tasarım şablonunda oldugu gibi istenilen bir tipte nesne oluşturmak için kullanılır. İki tasarım şablonu arasındaki fark, Builder tasarım şablonunun kompleks yapıdaki bir nesneyi değişik parçaları bir araya getirerek oluşturmasında yatmaktadır. Birden fazla adım içeren nesne üretim sürecinde, değişik parçalar birleştirilir ve istenilen tipte nesne oluşturulur.</p>
<p><span id="more-923"></span></p>
<p>Diğer bölümlerde olduğu gibi bir örnek üzerinde bu tasarım şablonunu yakından inceliyelim.</p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_329></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F11%2F17%2Fbuilder-tasarim-sablonu%2F&amp;linkname=Builder%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/11/17/builder-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Service Locator Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/10/30/service-locator-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/10/30/service-locator-tasarim-sablonu/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 10:01:11 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Service Locator Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=889</guid>
		<description><![CDATA[<p>Business Delegate örneğinde, Service Locator Tasarım şablonunun nasıl uygulandığını görmüştük. Service Locator, işletme (business) katmanında bulunan komponentlerin lokalizasyonu için kullanılır</p>
<p><span id="more-889"></span></p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_323></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Business Delegate örneğinde, Service Locator Tasarım şablonunun nasıl uygulandığını görmüştük. Service Locator, işletme (business) katmanında bulunan komponentlerin lokalizasyonu için kullanılır</p>
<p><span id="more-889"></span></p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_323></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F10%2F30%2Fservice-locator-tasarim-sablonu%2F&amp;linkname=Service%20Locator%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/10/30/service-locator-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Business Delegate Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/10/30/business-delegate-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/10/30/business-delegate-tasarim-sablonu/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 09:55:12 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Business Delegate Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=886</guid>
		<description><![CDATA[<p>Modern yazılım sistemleri birden fazla katmandan oluşur. Bu katmanlar her zaman aynı server üzerinde mevcut olmayabilir. Bu durumda bir katmandan diger katmana ulaşmak için remote call olarak isimlendirilen RMI  operasyonları yapılır. Örneğin EJB teknolojisi ile hazırlanan komponentler birden fazla server üzerinde hizmet sunabilir. Bu komponentlere bağlanıp, işlem yapabilmek için RMI kullanılır. <span id="more-886"></span></p>
<p>EJB sistemlerinde bazı işlemler bilgisayar ağı üzerinden erişim gerektirebileceği için, zamanla sistem performansı negatif etkilenebilir. Bunun yanısıra gösterim katmanında bulunan sınıflar direk EJB komponentler ile interaksiyona girdikleri taktirde, gösterim katmanı ile EJB’lerden oluşan İşletme (business) katmanı arasında sıkı bir bağ oluşur. EJB komponentler üzerinde yapılan değişiklikler gösterim katmanını etkiler. Bu bağı azaltmak ve RMI performansını artırmak için Business Delegate tasarım şablonu kullanılır. </p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_322></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Modern yazılım sistemleri birden fazla katmandan oluşur. Bu katmanlar her zaman aynı server üzerinde mevcut olmayabilir. Bu durumda bir katmandan diger katmana ulaşmak için remote call olarak isimlendirilen RMI  operasyonları yapılır. Örneğin EJB teknolojisi ile hazırlanan komponentler birden fazla server üzerinde hizmet sunabilir. Bu komponentlere bağlanıp, işlem yapabilmek için RMI kullanılır. <span id="more-886"></span></p>
<p>EJB sistemlerinde bazı işlemler bilgisayar ağı üzerinden erişim gerektirebileceği için, zamanla sistem performansı negatif etkilenebilir. Bunun yanısıra gösterim katmanında bulunan sınıflar direk EJB komponentler ile interaksiyona girdikleri taktirde, gösterim katmanı ile EJB’lerden oluşan İşletme (business) katmanı arasında sıkı bir bağ oluşur. EJB komponentler üzerinde yapılan değişiklikler gösterim katmanını etkiler. Bu bağı azaltmak ve RMI performansını artırmak için Business Delegate tasarım şablonu kullanılır. </p>
<p><center><img src=http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&#038;d=prod&#038;k=kurumsaljava_322></center></p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F10%2F30%2Fbusiness-delegate-tasarim-sablonu%2F&amp;linkname=Business%20Delegate%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/10/30/business-delegate-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Chain of Responsibility Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/10/09/chain-of-responsibility-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/10/09/chain-of-responsibility-tasarim-sablonu/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 11:01:42 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Chain of Responsibility Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=848</guid>
		<description><![CDATA[<p>Chain of responsibility sorumluluk zinciri anlamına gelmektedir. Sisteme gönderilen bir istediğin (komut) hangi nesne tarafından cevaplanması gerektiğini bilmediğimiz durumlarda ya da isteği yapan nesne ve servis sağlayan nesne arasında sıkı bir bağ oluşmasını engellememiz gerektiğinde Chain of Responsibility tasarım şablonu kullanılır. <span id="more-848"></span>Bu tasarım şablonunda servis sağlayan ilgili tüm nesneler bir kolye üzerindeki boncuklar gibi birbirleriyle ilişkili hale getirilir. Bir nesne zincirdeki kendinden sonraki nesneyi tanır ve isteği kendi cevaplayamadığı durumda, kendinden sonraki nesneye iletir. Bu işlem, zincirde bulunan doğru servis saglayıcı nesneyi bulana kadar devam eder. </p>
<p>Bu tasarım şablonu için ilginç bir örnek kullanmak istiyorum. İçine para atarak, kahve aldığımız bir kahve otomatı düşünelim. Bir kahvenin bedeli 1 TL olabilir. Kahveyi alabilmek için 1 TL değerindeki metal parayı otomata atmamız gerekiyor.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Chain of responsibility sorumluluk zinciri anlamına gelmektedir. Sisteme gönderilen bir istediğin (komut) hangi nesne tarafından cevaplanması gerektiğini bilmediğimiz durumlarda ya da isteği yapan nesne ve servis sağlayan nesne arasında sıkı bir bağ oluşmasını engellememiz gerektiğinde Chain of Responsibility tasarım şablonu kullanılır. <span id="more-848"></span>Bu tasarım şablonunda servis sağlayan ilgili tüm nesneler bir kolye üzerindeki boncuklar gibi birbirleriyle ilişkili hale getirilir. Bir nesne zincirdeki kendinden sonraki nesneyi tanır ve isteği kendi cevaplayamadığı durumda, kendinden sonraki nesneye iletir. Bu işlem, zincirde bulunan doğru servis saglayıcı nesneyi bulana kadar devam eder. </p>
<p>Bu tasarım şablonu için ilginç bir örnek kullanmak istiyorum. İçine para atarak, kahve aldığımız bir kahve otomatı düşünelim. Bir kahvenin bedeli 1 TL olabilir. Kahveyi alabilmek için 1 TL değerindeki metal parayı otomata atmamız gerekiyor.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F10%2F09%2Fchain-of-responsibility-tasarim-sablonu%2F&amp;linkname=Chain%20of%20Responsibility%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/10/09/chain-of-responsibility-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Front Controller Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/10/09/front-controller-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/10/09/front-controller-tasarim-sablonu/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 10:44:37 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Front Controller Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=845</guid>
		<description><![CDATA[<p>Web aplikasyonlarında Front Controller tasarım şablonu ile sisteme yöneltilen tüm istekler (request) merkezi bir yerde toplanarak işlem görürler. <span id="more-845"></span></p>
<p>Front Controller ile, yönlendirme ve işlem yapma fonksiyonlarının birden fazla view (bir JSP sayfası olabilir) elementine dağıtılması önlenmiş olur.Tüm view elementleri yönlendirme ve işlem yapma fonksiyonlarını ortak kullanırlar. Böylece Front Controller tasarım şablonunun kullanıldığı bir proje bakımı ve geliştirilmesi daha kolay bir hale gelir. Ayrıca Front Controller ile gösterim ve navigasyon fonksiyonları birbirinden ayrıldığı için, gösterim katmanını etkilemeden navigasyon idaresi değiştirilebilir yada tamamen yenilenebilir.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a><br />
<i></p>
<p>EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Web aplikasyonlarında Front Controller tasarım şablonu ile sisteme yöneltilen tüm istekler (request) merkezi bir yerde toplanarak işlem görürler. <span id="more-845"></span></p>
<p>Front Controller ile, yönlendirme ve işlem yapma fonksiyonlarının birden fazla view (bir JSP sayfası olabilir) elementine dağıtılması önlenmiş olur.Tüm view elementleri yönlendirme ve işlem yapma fonksiyonlarını ortak kullanırlar. Böylece Front Controller tasarım şablonunun kullanıldığı bir proje bakımı ve geliştirilmesi daha kolay bir hale gelir. Ayrıca Front Controller ile gösterim ve navigasyon fonksiyonları birbirinden ayrıldığı için, gösterim katmanını etkilemeden navigasyon idaresi değiştirilebilir yada tamamen yenilenebilir.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a><br />
<i></p>
<p>EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F10%2F09%2Ffront-controller-tasarim-sablonu%2F&amp;linkname=Front%20Controller%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/10/09/front-controller-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flyweight (Sinek Siklet) Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/10/09/flyweight-sinek-siklet-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/10/09/flyweight-sinek-siklet-tasarim-sablonu/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 09:37:23 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Flyweight Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=838</guid>
		<description><![CDATA[<p>Java dilinde yazılan programlar içinde sınıflar ve bu sınıflardan oluşturulan nesneler kullanır. Bazen aynı sınıftan yüzlerce, belki binlerce nesne oluşturup, kullanıyor olabiliriz. Bu gibi durumlarda çok nesne oluşturulduğu için sistem performansı kötüye gidebilir. Flyweight tasarım şablonu kullanılarak, kullanılan nesne adedini aşağıya çekebiliriz. </p>
<p><span id="more-838"></span></p>
<p>Bu satırlar oluşurken, büyük bir ihtimalle kullandığım editör flyweight tasarım şablonunu kullanıyor olabilir. Yazdığım her cümle kelimelerden, her kelime birden fazla harften oluşmaktadır. Kullandığım editörün Java dilinde yazıldığını ve her harf için bir nesne kullandığını farzedersek, bir satırlık doküman için 80 ila 100 arası harf nesnesi oluşturması gerekir. 100 satırlık bir doküman için bu 10.000 civarı harf nesnesinin oluşturulması anlamına gelir.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Java dilinde yazılan programlar içinde sınıflar ve bu sınıflardan oluşturulan nesneler kullanır. Bazen aynı sınıftan yüzlerce, belki binlerce nesne oluşturup, kullanıyor olabiliriz. Bu gibi durumlarda çok nesne oluşturulduğu için sistem performansı kötüye gidebilir. Flyweight tasarım şablonu kullanılarak, kullanılan nesne adedini aşağıya çekebiliriz. </p>
<p><span id="more-838"></span></p>
<p>Bu satırlar oluşurken, büyük bir ihtimalle kullandığım editör flyweight tasarım şablonunu kullanıyor olabilir. Yazdığım her cümle kelimelerden, her kelime birden fazla harften oluşmaktadır. Kullandığım editörün Java dilinde yazıldığını ve her harf için bir nesne kullandığını farzedersek, bir satırlık doküman için 80 ila 100 arası harf nesnesi oluşturması gerekir. 100 satırlık bir doküman için bu 10.000 civarı harf nesnesinin oluşturulması anlamına gelir.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F10%2F09%2Fflyweight-sinek-siklet-tasarim-sablonu%2F&amp;linkname=Flyweight%20%28Sinek%20Siklet%29%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/10/09/flyweight-sinek-siklet-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Proxy (Vekil) Tasarım Şablonu</title>
		<link>http://www.kurumsaljava.com/2009/10/08/proxy-vekil-tasarim-sablonu/</link>
		<comments>http://www.kurumsaljava.com/2009/10/08/proxy-vekil-tasarim-sablonu/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 09:26:46 +0000</pubDate>
		<dc:creator>Özcan Acar</dc:creator>
				<category><![CDATA[Tasarım Şablonları (Design Patterns)]]></category>
		<category><![CDATA[Proxy Tasarım Şablonu]]></category>

		<guid isPermaLink="false">http://www.kurumsaljava.com/?p=834</guid>
		<description><![CDATA[<p>Oluşturulmaları zaman alıcı ve sistem kaynaklarını zorlayan nesnelere vekalet eden nesnelere proxy nesneleri adı verilir. Bu nesneler vekil oldukları nesnelerin tüm metodlarına sahiptirler ve kullanıcı sınıf ile vekil olunan nesne arasında aracılık yaparlar. Vekil olan nesne, kullanıcı sınıfa, vekil olunan nesne gibi davranır ve kullanıcı sınıftan gelen tüm istekleri vekil olunan nesneye iletir. Böyle bir yapının kullanılmasının sebebi, gerek olmadığı sürece vekil olunan nesnenin oluşturulmasını engellemektir ya da vekil olunan nesneyi gizlemektir. <span id="more-834"></span>Böylece vekil olunan nesneye dışardan erişimlerde kontrol altına alınmış olur. Yazılan programın yapısına göre, değişik tipte proxy nesneler kullanılabilir. Bunlar virtual (sanal), remote (uzak bir nesne) ve dynamic (dinamik nesne) proxy nesneler olabilir. Değişik proxy tiplerini yakından inceliyelim.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
]]></description>
			<content:encoded><![CDATA[<p>Oluşturulmaları zaman alıcı ve sistem kaynaklarını zorlayan nesnelere vekalet eden nesnelere proxy nesneleri adı verilir. Bu nesneler vekil oldukları nesnelerin tüm metodlarına sahiptirler ve kullanıcı sınıf ile vekil olunan nesne arasında aracılık yaparlar. Vekil olan nesne, kullanıcı sınıfa, vekil olunan nesne gibi davranır ve kullanıcı sınıftan gelen tüm istekleri vekil olunan nesneye iletir. Böyle bir yapının kullanılmasının sebebi, gerek olmadığı sürece vekil olunan nesnenin oluşturulmasını engellemektir ya da vekil olunan nesneyi gizlemektir. <span id="more-834"></span>Böylece vekil olunan nesneye dışardan erişimlerde kontrol altına alınmış olur. Yazılan programın yapısına göre, değişik tipte proxy nesneler kullanılabilir. Bunlar virtual (sanal), remote (uzak bir nesne) ve dynamic (dinamik nesne) proxy nesneler olabilir. Değişik proxy tiplerini yakından inceliyelim.</p>
<p><span lang="TR">Bu yazıyı PDF olarak edinebilirsiniz.</span></p>
Note: There is a file embedded within this post, please visit this post to download the file.
<h1>Konuyla İlgili Kitaplar</h1>
<p><a href="http://www.amazon.co.uk/Head-First-Design-Patterns/dp/0596007124%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596007124" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5195WV5qz0L._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Design-patterns-elements-reusable-object-oriented/dp/0201633612%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201633612" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51Rs5KgdLTL._SL160_.jpg" alt="" /></a>   <a href="http://www.amazon.co.uk/Core-J2EE-Patterns-Practices-Strategies/dp/0131422464%3FSubscriptionId%3D02E5W5871AJF7PMMMS82%26tag%3Dhttpwwwxpturk-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0131422464" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51HMMBEC9GL._SL160_.jpg" alt="" /></a>   <a href="http://www.hepsiburada.com/java-tasarim-sablonlari-ve-yazilim-mimarileri/productDetails.aspx?categoryid=211652&amp;productid=kpusula177" target="_blank"><img class="alignnone" src="http://image.kurumsaljava.com/storage/image.jsp?ct=image/jpg&amp;d=prod&amp;k=kurumsaljava_40" alt="" width="123" height="162" /></a></p>
<p><i><br />
EOF (End of Fun)<br />
Özcan Acar<br />
</i></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.kurumsaljava.com%2F2009%2F10%2F08%2Fproxy-vekil-tasarim-sablonu%2F&amp;linkname=Proxy%20%28Vekil%29%20Tasar%C4%B1m%20%C5%9Eablonu"><img src="http://www.kurumsaljava.com/wp-content/plugins/add-to-any/share_save_256_24.png" width="256" height="24" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.kurumsaljava.com/2009/10/08/proxy-vekil-tasarim-sablonu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

