<?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>بایگانی‌های دیزاین پترن - بازسازی</title>
	<atom:link href="http://recompile.ir/tag/%D8%AF%DB%8C%D8%B2%D8%A7%DB%8C%D9%86-%D9%BE%D8%AA%D8%B1%D9%86/feed/" rel="self" type="application/rss+xml" />
	<link>https://recompile.ir/tag/دیزاین-پترن/</link>
	<description>مشاوره و آموزش برای بازسازی و تغییر</description>
	<lastBuildDate>Wed, 02 Sep 2020 17:55:55 +0000</lastBuildDate>
	<language>fa-IR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>http://recompile.ir/wp-content/uploads/2020/08/cropped-android-chrome-512x512-1-32x32.png</url>
	<title>بایگانی‌های دیزاین پترن - بازسازی</title>
	<link>https://recompile.ir/tag/دیزاین-پترن/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>تاریخچه الگو ها (Design Patterns)</title>
		<link>http://recompile.ir/learning/design-pattern/%d8%aa%d8%a7%d8%b1%db%8c%d8%ae%da%86%d9%87-%d8%a7%d9%84%da%af%d9%88-%d9%87%d8%a7-design-patterns/</link>
					<comments>http://recompile.ir/learning/design-pattern/%d8%aa%d8%a7%d8%b1%db%8c%d8%ae%da%86%d9%87-%d8%a7%d9%84%da%af%d9%88-%d9%87%d8%a7-design-patterns/#respond</comments>
		
		<dc:creator><![CDATA[محمد خوش کشت]]></dc:creator>
		<pubDate>Wed, 02 Sep 2020 17:55:52 +0000</pubDate>
				<category><![CDATA[الگوها(Design Pattern)]]></category>
		<category><![CDATA[design pattern]]></category>
		<category><![CDATA[دیزاین پترن]]></category>
		<guid isPermaLink="false">http://recompile.ir/?p=184</guid>

					<description><![CDATA[<p>چه کسی الگوها را اختراع کرد؟ این سوال خوبی است ، اما خیلی دقیق نیست. الگوهای طراحی ، مفاهیم مبهم و پیچیده ای نیستند &#8211; درست برعکس الگوها راه حلهای معمولی برای مشکلات رایج در طراحی شی گرا هستند. وقتی یک راه حل در پروژه های مختلف بارها و بارها تکرار می شود ، سرانجام [&#8230;]</p>
<p>نوشته <a href="http://recompile.ir/learning/design-pattern/%d8%aa%d8%a7%d8%b1%db%8c%d8%ae%da%86%d9%87-%d8%a7%d9%84%da%af%d9%88-%d9%87%d8%a7-design-patterns/">تاریخچه الگو ها (Design Patterns)</a> اولین بار در <a href="http://recompile.ir">بازسازی</a>. پدیدار شد.</p>
]]></description>
										<content:encoded><![CDATA[<span class="span-reading-time rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">زمان مطالعه: </span> <span class="rt-time"> 2</span> <span class="rt-label rt-postfix">دقیقه</span></span>
<p>چه کسی <a href="http://recompile.ir/learning/design-pattern/%d8%a7%d9%84%da%af%d9%88%d9%87%d8%a7%db%8c-%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-design-patterns/" title="الگوهای طراحی – Design Patterns">الگوها</a> را اختراع کرد؟ این سوال خوبی است ، اما خیلی دقیق نیست. الگوهای طراحی ، مفاهیم مبهم و پیچیده ای نیستند &#8211; درست برعکس الگوها راه حلهای معمولی برای مشکلات رایج در طراحی شی گرا هستند. وقتی یک راه حل در پروژه های مختلف بارها و بارها تکرار می شود ، سرانجام شخصی برای آن نامی می گذارد و راه حل را با جزئیات شرح می دهد. این چگونگی کشف  یک الگو است.</p>



<p>مفهوم الگوها اولین بار توسط کریستوفر الكساندر (Christopher Alexander) در کتاب A Pattern Language: Towns, Buildings, Construction &nbsp;توصیف شد. این کتاب یک &#8220;زبان&#8221; برای طراحی محیط شهری را توصیف می کند. واحدهای این زبان الگوها هستند. آنها ممکن است توصیف کنند که پنجره های بالا باید چقدر باشد ، یک ساختمان باید چند سطح داشته باشد ، چقدر فضای سبز بزرگ در یک محله باید باشد و غیره.</p>



<p>این ایده توسط گروهی به اسم Gang of Four شامل چهار نویسنده به نامهای اریش گاما ، جان ویلیسیدس ، رالف جانسون و ریچارد هلم (Erich Gamma, John Vlissides, Ralph Johnson, and Richard Helm.) تکمیل شد. در سال 1994 ، آنها Design Patterns: Elements of Reusable Object-Oriented Software را منتشر کردند ، که در آن آنها مفهوم الگوهای طراحی را برای برنامه نویسی به کار بردند. این کتاب شامل 23 الگوی حل کننده مشکلات مختلف طراحی شی گرا بود و خیلی زود به پرفروش ترین کتاب تبدیل شد. به دلیل طولانی بودن نام ، مردم آن را &#8220;کتاب گروه چهار نفره&#8221; نامیدند که به زودی به &#8220;کتاب GoF &nbsp;&#8221; خلاصه شد.</p>



<p>از آن زمان ، ده ها <a href="http://recompile.ir/learning/design-pattern/%d8%a7%d9%84%da%af%d9%88%d9%87%d8%a7%db%8c-%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-design-patterns/" title="الگوهای طراحی – Design Patterns">الگوی </a>شی گرا دیگر کشف شده است. &#8220;رویکرد الگو&#8221; در سایر زمینه های برنامه نویسی بسیار محبوب شد ، بنابراین بسیاری از الگوهای دیگر هم اکنون خارج از طراحی شی گرا نیز وجود دارد.</p>



<p>در نوشته های بعدی به دسته بندی و توضیحات این الگوها می پردازیم.</p>
<p>بازدیدها: 39</p><p>نوشته <a href="http://recompile.ir/learning/design-pattern/%d8%aa%d8%a7%d8%b1%db%8c%d8%ae%da%86%d9%87-%d8%a7%d9%84%da%af%d9%88-%d9%87%d8%a7-design-patterns/">تاریخچه الگو ها (Design Patterns)</a> اولین بار در <a href="http://recompile.ir">بازسازی</a>. پدیدار شد.</p>
]]></content:encoded>
					
					<wfw:commentRss>http://recompile.ir/learning/design-pattern/%d8%aa%d8%a7%d8%b1%db%8c%d8%ae%da%86%d9%87-%d8%a7%d9%84%da%af%d9%88-%d9%87%d8%a7-design-patterns/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>الگوهای طراحی &#8211; Design Patterns</title>
		<link>http://recompile.ir/learning/design-pattern/%d8%a7%d9%84%da%af%d9%88%d9%87%d8%a7%db%8c-%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-design-patterns/</link>
					<comments>http://recompile.ir/learning/design-pattern/%d8%a7%d9%84%da%af%d9%88%d9%87%d8%a7%db%8c-%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-design-patterns/#respond</comments>
		
		<dc:creator><![CDATA[محمد خوش کشت]]></dc:creator>
		<pubDate>Tue, 01 Sep 2020 18:58:29 +0000</pubDate>
				<category><![CDATA[الگوها(Design Pattern)]]></category>
		<category><![CDATA[design pattern]]></category>
		<category><![CDATA[الگوهای طراحی]]></category>
		<category><![CDATA[دیزاین پترن]]></category>
		<guid isPermaLink="false">http://recompile.ir/?p=172</guid>

					<description><![CDATA[<p>الگوی طراحی چیست؟ الگوهای طراحی(دیزاین پترن) راه حل های معمول برای مشکلات معمول در طراحی نرم افزار است. آنها مانند نقشه های از پیش ساخته شده ای هستند که می توانید آنها را برای حل مشکلات طراحی تکراری در کد خود سفارشی کنید. اصولا نمی شود یک الگو را پیدا کنید و آن را در [&#8230;]</p>
<p>نوشته <a href="http://recompile.ir/learning/design-pattern/%d8%a7%d9%84%da%af%d9%88%d9%87%d8%a7%db%8c-%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-design-patterns/">الگوهای طراحی &#8211; Design Patterns</a> اولین بار در <a href="http://recompile.ir">بازسازی</a>. پدیدار شد.</p>
]]></description>
										<content:encoded><![CDATA[<span class="span-reading-time rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">زمان مطالعه: </span> <span class="rt-time"> 2</span> <span class="rt-label rt-postfix">دقیقه</span></span>
<p><strong>الگوی طراحی چیست؟</strong><strong></strong></p>



<p>الگوهای طراحی(دیزاین پترن) راه حل های معمول برای مشکلات معمول در طراحی نرم افزار است. آنها مانند نقشه های از پیش ساخته شده ای هستند که می توانید آنها را برای حل مشکلات طراحی تکراری در کد خود سفارشی کنید.</p>



<p>اصولا نمی شود یک الگو را پیدا کنید و آن را در برنامه خود کپی کنید ، همانطور که نمی توانید از library ها (کتابخانه ها) به این کل استفاده کنید. الگو کد خاصی نیست ، بلکه یک مفهوم کلی برای حل یک مسئله خاص است. می توانید جزئیات الگو را بررسی کنید و راه حلی را متناسب با واقعیت برنامه خود اجرا کنید.</p>



<p>الگوها اغلب با الگوریتم ها اشتباه گرفته می شوند ، زیرا هر دو مفهوم راه حل های معمول برخی از مشکلات شناخته شده را توصیف می کنند. در حالی که یک الگوریتم همیشه مجموعه مشخصی از اقدامات را تعریف می کند که می تواند به هدفی برسد ، در صورتیکه الگو ها در سطح بالاتر قرار دارند. کد یک الگوی اعمال شده برای دو برنامه مختلف ممکن است متفاوت باشد.</p>



<p>در تشبیه به الگوریتم مثل یک دستور العمل پخت و پز است: هر دو مراحل مشخصی برای رسیدن به یک هدف دارند. از طرف دیگر ، یک الگوی بیشتر شبیه یک طرح اولیه است: شما می توانید ببینید که نتیجه و ویژگی های آن چیست ، اما ترتیب دقیق اجرای آن به شما بستگی دارد.</p>



<p><strong>الگو(پترن) از چه چیزی تشکیل شده است؟</strong><strong></strong></p>



<p>بیشتر الگوها بسیار رسمی توصیف می شوند ، بنابراین افراد می توانند آنها را درمفاهیم مختلف تفسیر کنند.</p>



<p>موارد زیر بخشهایی هستند که در تعریف یک الگو معمولا وجود دارند:</p>



<p><strong>هدف</strong> &nbsp;ابطور خلاصه توضیحاتی در مورد هدف الگو داده می شود</p>



<p><strong>کاربرد</strong> هم مسئله و راه حل ممکن را برای الگو توضیح می دهد.</p>



<p><strong>ساختار</strong> وضعیت کلاسها و هر قسمت از الگو و نحوه ارتباط آنها را نشان می دهد.</p>



<p><strong>کد سمپل</strong> ارائه کد مثال در یکی از زبانهای برنامه نویسی درک الگو را ساده تر می کند</p>



<p>الگوهای طراحی جزو معماری‌های نرم افزاری نیستند و فقط شیوه ای صحیح از کدنویسی شی گرا را ارائه می‌دهند. بنابراین این الگوها فقط در قلمرو کدنویسی شی گرا وارد می‌شوند و مستقل از زبان‌های برنامه نویسی هستند.</p>



<p><strong>در پستهای بعدی در مورد تاریخچه، دسته بندی و توضیح هر کدام از الگوها خواهیم نوشت.</strong></p>
<p>بازدیدها: 73</p><p>نوشته <a href="http://recompile.ir/learning/design-pattern/%d8%a7%d9%84%da%af%d9%88%d9%87%d8%a7%db%8c-%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-design-patterns/">الگوهای طراحی &#8211; Design Patterns</a> اولین بار در <a href="http://recompile.ir">بازسازی</a>. پدیدار شد.</p>
]]></content:encoded>
					
					<wfw:commentRss>http://recompile.ir/learning/design-pattern/%d8%a7%d9%84%da%af%d9%88%d9%87%d8%a7%db%8c-%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-design-patterns/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
