<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0">
	<channel>
		<title><![CDATA[به برنامه نویسی + مهندسی نرم افزار علاقه داری ِ بیا تو]]></title>
		<link>http://www.hamedanprogramig.blogsky.com</link>
		<description><![CDATA[برنامه نویسی :C#.Net , VB.Net , Delphiو ...]]></description>
		<language>fa</language>
		<generator>RSS Generated by BlogSky.com</generator>
		
			
				<item>
					<title><![CDATA[C#.Net2008]]></title>
					<link>http://www.hamedanprogramig.blogsky.com/1387/04/22/post-104/</link>
					<description><![CDATA[سلام<br>دوست عزیز آقا امید من چند وقت بود درگیر بودم متأسفانه نتونستم Update کنم.<br>یک کتاب خوب و کامل واسه C#.Net2008 واست سراق دارم لینکش رو واست میزارم امید وارم به دردت بخوره<br>موفق و پیروز باشید.<br>اگه سؤالی داشتین در خدمتم.<br>البته قبلش باید تو سایت http://www.persiadevelopers.com عضو بشی<br>ا<br>http://www.persiadevelopers.com/files/books/Apress.Beginning.C.Sharp.2008.From.Novice.to.Professional.Nov.2007.rar<br><br><br><br>]]></description>
					<pubDate>Sat, 12 Jul 2008 23:49:05 GMT</pubDate>
					<comments>http://www.hamedanprogramig.blogsky.com/Comments.bs?PostID=104</comments>
          <guid>http://www.hamedanprogramig.blogsky.com/1387/04/22/post-104/</guid>
				</item>
			
				<item>
					<title><![CDATA[aspect oriented programing _3]]></title>
					<link>http://www.hamedanprogramig.blogsky.com/1386/11/03/post-103/</link>
					<description><![CDATA[<P class=a dir=rtl style="MARGIN: 12pt 0.25in 3pt 0in" align=right><A name=_Toc95910121><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1><SPAN lang=FA style="FONT-FAMILY: 'B Titr'; mso-fareast-font-family: 'B Titr'"><SPAN style="mso-list: Ignore"><STRONG><FONT color=#003366><FONT color=#000000>بخش۶</FONT><SPAN style="mso-spacerun: yes"><FONT color=#000000>&nbsp;&nbsp;</FONT>&nbsp;</SPAN></FONT></STRONG><SPAN style="FONT: 7pt 'Times New Roman'"><FONT color=#003366>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT><FONT color=#000000>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT></SPAN></SPAN></SPAN></FONT><SPAN dir=rtl><SPAN lang=FA style="FONT-FAMILY: 'B Titr'"><STRONG><FONT color=#000000 size=2>مبانی برنامه نویسی جنبه گرا</FONT></STRONG></SPAN></SPAN></FONT></A><SPAN lang=FA style="FONT-FAMILY: 'B Titr'"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1><FONT color=#000000><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT size=1>تا اینجا به این نتیجه رسیدیم که پیاده‌سازی دغدغه‌های متداخل به طور جداگانه کار مفیدی است. محققین روش‌های متعددی برای این کار پیشنهاد کرده‌اند که به طور کلی به آن «جداسازی دغدغه‌ها» می‌گویند. برنامه‌نویسی جنبه‌گرا یکی از این روش‌هاست</FONT>.<FONT size=1> در واقع</FONT> </SPAN><SPAN dir=ltr>AOP</SPAN><SPAN dir=rtl></SPAN><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><SPAN dir=rtl></SPAN> <FONT size=1>می‌کوشد دغدغه‌های موجود در یک سیستم کاملاً از یکدیگر جدا شوند تا مشکلاتی که در بخش‌های قبلی مورد بررسی قرار گرفتند پیش نیاید.<o:p></o:p></FONT></SPAN></FONT></FONT></FONT></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><o:p><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>&nbsp;</FONT></o:p></SPAN></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1><FONT color=#000000><FONT size=1><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT size=1>برنامه‌نویسی جنبه‌گرا به شما این اجازه را می‌دهد تا دغدغه‌های مختلف را به صورت مستقل و با ارتباط و وابستگی پایین پیاده سازی کنید. سپس با ترکیب کردن این پیاده‌سازی‌ها سیستم نهایی را برای شما آماده می‌کند. در واقع در</FONT> </SPAN><SPAN dir=ltr>AOP</SPAN><SPAN dir=rtl></SPAN></FONT><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><SPAN dir=rtl></SPAN><FONT size=1> سیستم‌ها با پیاده‌سازی مستقل، مؤلفه‌بندی شده، و با وابستگی پایین دغدغه‌های <SPAN class=a4><EM>متداخل</EM></SPAN> ساخته می‌شود. در صورتی‌که در</FONT> </SPAN><SPAN dir=ltr>OOP</SPAN><SPAN dir=rtl></SPAN><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><SPAN dir=rtl></SPAN> <FONT size=1>سیستم‌ها با پیاده‌سازی مستقل، مؤلفه‌بندی شده، و با وابستگی پایین دغدغه‌های <SPAN class=a4><EM>مشترک </EM></SPAN>ساخته می‌شود. ‌ واحد پیمانه‌بندی در </FONT></SPAN><SPAN dir=ltr>AOP</SPAN><SPAN dir=rtl></SPAN></FONT><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><SPAN dir=rtl></SPAN><FONT color=#000000 size=1> جنبه</FONT><A title="" style="mso-footnote-id: ftn1" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftn1" name=_ftnref1><SPAN class=MsoFootnoteReference><SPAN dir=ltr style="mso-special-character: footnote"><SPAN class=MsoFootnoteReference><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 13.0pt; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT color=#000000 size=1>[1]</FONT></SPAN></SPAN></SPAN></SPAN></A><FONT size=1> است، در صورتی‌که در این واحد در </FONT></SPAN><SPAN dir=ltr>OOP</SPAN><SPAN dir=rtl></SPAN><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><SPAN dir=rtl></SPAN><FONT size=1> کلاس است. <o:p></o:p></FONT></SPAN></FONT></FONT></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><o:p><FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1>&nbsp;</FONT></o:p></SPAN></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1>توسعه‌ی برنامه در روش برنامه نویسی جنبه گرا به طور کلی از سه مرحله تشکیل شده‌است:<o:p></o:p></FONT></FONT></SPAN></P>
<P class=1 dir=rtl style="MARGIN: 0in 31.3pt 0pt 0in" align=right><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore"><FONT color=#000000></FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;<FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT></SPAN></SPAN></SPAN><SPAN dir=rtl><STRONG><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT color=#000000 size=2>تجزیه‌ی جنبه‌ای</FONT><A title="" style="mso-footnote-id: ftn2" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftn2" name=_ftnref2><SUP><SPAN dir=ltr style="mso-special-character: footnote"><STRONG><SUP><SPAN style="FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 13.0pt; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-bidi-font-weight: normal; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT color=#000000 size=2>[2]</FONT></SPAN></SUP></STRONG></SPAN></SUP></A><FONT color=#000000 size=2>:</FONT></SPAN></STRONG></SPAN><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"> <FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1>تجزیه‌کردن نیازمندی‌ها، برای اینکه دغدغه‌های مشترک و متداخل مشخص شوند. در این قسمت دغدغه‌های در سطح پیمانه‌ها از دغدغه‌های سطح سیستمی جدا می‌شوند. مثلاً در مورد سیستم کارت اعتباری دغدغه‌ها عبارتند از: بخش پردازش اعتبار، ثبت وقایع، و هویت شناسی.</FONT></SPAN></FONT></FONT></P>
<P class=1 dir=rtl style="MARGIN: 0in 31.3pt 0pt 0in" align=right><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore"><FONT color=#000000></FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;<FONT color=#000000>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT></SPAN></SPAN></SPAN><SPAN dir=rtl><STRONG><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT color=#000000 size=2>پیاده‌سازی دغدغه‌ها:</FONT></SPAN></STRONG></SPAN><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"> <FONT size=1>پیاده‌سازی هر دغدغه به طور کاملاً جداگانه. مثلاً در سیستم کارت اعتباری باید بخش مرکزی پردازش کارت اعتباری، بخش ثبت وقایع، و بخش هویت شناسی پیاده‌سازی شوند. </FONT></SPAN></FONT></FONT></P>
<P class=1 dir=rtl style="MARGIN: 0in 31.3pt 0pt 0in" align=right><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore"><FONT color=#000000></FONT><SPAN style="FONT: 7pt 'Times New Roman'"><FONT color=#000000>&nbsp;&nbsp;</FONT>&nbsp;&nbsp;<FONT color=#000000>&nbsp;&nbsp;&nbsp;<FONT face="Tahoma, Arial, Helvetica, sans-serif" size=2> </FONT></FONT></SPAN></SPAN></SPAN><SPAN dir=rtl><STRONG><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=2>ترکیب مجدد جنبه‌ای</FONT><A title="" style="mso-footnote-id: ftn3" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftn3" name=_ftnref3><SUP><SPAN dir=ltr style="mso-special-character: footnote"><STRONG><SUP><SPAN style="FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 13.0pt; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-bidi-font-weight: normal; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT color=#000000><FONT size=2><FONT face="Tahoma, Arial, Helvetica, sans-serif">[3</FONT>]</FONT></FONT></SPAN></SUP></STRONG></SPAN></SUP></A><FONT color=#000000 size=2>:</FONT></SPAN></STRONG></SPAN><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1> در این مرحله مجتمع‌ساز جنبه‌ها</FONT><A title="" style="mso-footnote-id: ftn4" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftn4" name=_ftnref4><SPAN class=MsoFootnoteReference><SPAN dir=ltr style="mso-special-character: footnote"><SPAN class=MsoFootnoteReference><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 13.0pt; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1>[4]</FONT></SPAN></SPAN></SPAN></SPAN></A><FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1> قوانین مربوط به ترکیب مجدد را مشخص می‌کند و به این وسیله </FONT></SPAN><FONT face="Tahoma, Arial, Helvetica, sans-serif"><SPAN dir=ltr>aspect</SPAN><SPAN dir=rtl></SPAN><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><SPAN dir=rtl></SPAN><FONT size=1> ها را می‌سازد. فرآیند ترکیب مجدد، که به تلاقی</FONT><A title="" style="mso-footnote-id: ftn5" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftn5" name=_ftnref5><SPAN class=MsoFootnoteReference><SPAN dir=ltr style="mso-special-character: footnote"><SPAN class=MsoFootnoteReference><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 13.0pt; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT size=1>[5]</FONT></SPAN></SPAN></SPAN></SPAN></A><FONT size=1> یا مجتمع سازی نیز معروف است، این اطلاعات را می‌گیرد و سیستم نهایی را آماده‌می‌کند. برای مثال پردازش کارت اعتباری: باید توسط یک یک زبان جنبه‌گرا مشخص کرد که اطلاعات در اول و آخر هر عملیات پردازش اعتبار ثبت شوند. همچنین باید مشخص کرد که قبل از ورود به هر کدام از عملیات تجاری عمل هویت شناسی انجام شود و در صورت درستی عملیات مورد نظر انجام گیرد. </FONT></SPAN></FONT></FONT></FONT></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><o:p><FONT face="Tahoma, Arial, Helvetica, sans-serif"><FONT size=1>&nbsp;</FONT></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT size=1><FONT face="Tahoma, Arial, Helvetica, sans-serif">برنامه نویسی جنبه‌گرا در برخورد با دغدغه‌های متداخل با برنامه نویسی شیء گرا متفاوت است. در برنامه نویسی جنبه‌گرا پیاده سازی هر دغدغه از اینکه توسط دغدغه‌های دیگر تحت نظر است بی‌خبر است. مثلاً قسمت پردازش کارت اعتباری نمی‌داند که دغدغه‌های دیگری آغاز و پایان عملیات آن‌را ثبت می‌کنند یا هویت کاربر را قبل از آن چک می‌کنند. این نشان‌دهنده یک تغییر تفکر از نگرش شیء گرا است. <o:p></o:p></FONT></FONT></SPAN></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><o:p><FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1>&nbsp;</FONT></o:p></SPAN></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><FONT size=1><FONT face="Tahoma, Arial, Helvetica, sans-serif">یک زبان جنبه‌گرا ممکن است یک روش دیگر برنامه‌نویسی را در خدمت خود بگیرد تا بتواند از مزیت‌های آن استفاده کند. برای مثال یک زبان جنبه‌گرا ممکن است یک زبان شی‌ء گرا را به عنوان پایه برای خود در نظر بگیرد. به این وسیله می‌تواند در پیاده‌سازی هر یک از دغدغه‌ها، از امکانات شیء‌گرایی استفاده کند. این موضوع دقیقاً شبیه به زبان‌های شیء‌گرا است که زبان‌ها روالی را به عنوان پایه برای خود انتخاب کردند. <o:p></o:p></FONT></FONT></SPAN></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 13pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 12.0pt"><o:p><FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1>&nbsp;</FONT></o:p></SPAN></P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><FONT size=1></FONT></FONT></o:p></SPAN></P>
<P class=a3 dir=rtl style="MARGIN: 0in 0in 0pt" align=right><SPAN lang=FA style="FONT-SIZE: 11pt; FONT-FAMILY: Lotus; mso-ansi-font-size: 10.0pt"><STRONG><FONT face="Tahoma, Arial, Helvetica, sans-serif" size=1></FONT></STRONG></SPAN>&nbsp;</P>
<P class=MsoNormal dir=rtl style="MARGIN: 0in 0in 0pt" align=right><A title="" style="mso-footnote-id: ftn2" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftnref2" name=_ftn2><SPAN class=MsoFootnoteReference><SPAN dir=ltr><SPAN style="mso-special-character: footnote"><SPAN class=MsoFootnoteReference><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>[2]</FONT></SPAN></SPAN></SPAN></SPAN></SPAN></A><SPAN dir=rtl></SPAN><SPAN style="FONT-FAMILY: Lotus"><SPAN dir=rtl></SPAN><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1> </FONT></SPAN><SPAN dir=ltr><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>Aspectual Decomposition</FONT></SPAN></P>
<DIV id=ftn3 style="mso-element: footnote" align=right>
<P class=MsoFootnoteText dir=rtl style="MARGIN: 0in 0in 0pt"><A title="" style="mso-footnote-id: ftn3" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftnref3" name=_ftn3><SPAN class=MsoFootnoteReference><SPAN dir=ltr><SPAN style="mso-special-character: footnote"><SPAN class=MsoFootnoteReference><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>[3]</FONT></SPAN></SPAN></SPAN></SPAN></SPAN></A><SPAN dir=rtl></SPAN><SPAN style="FONT-FAMILY: Lotus"><SPAN dir=rtl></SPAN><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1> </FONT></SPAN><SPAN dir=ltr><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>Aspectual Recomposition</FONT></SPAN></P></DIV>
<P class=MsoFootnoteText dir=rtl style="MARGIN: 0in 0in 0pt; mso-element: footnote" align=right><A title="" style="mso-footnote-id: ftn4" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftnref4" name=_ftn4><SPAN class=MsoFootnoteReference><SPAN dir=ltr><SPAN style="mso-special-character: footnote"><SPAN class=MsoFootnoteReference><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>[4]</FONT></SPAN></SPAN></SPAN></SPAN></SPAN></A><SPAN dir=rtl></SPAN><SPAN style="FONT-FAMILY: Lotus"><SPAN dir=rtl></SPAN><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1> </FONT></SPAN><SPAN dir=ltr><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>Aspect Integrator</FONT></SPAN></P>
<P class=MsoFootnoteText dir=rtl style="MARGIN: 0in 0in 0pt; mso-element: footnote" align=right><A title="" style="mso-footnote-id: ftn5" href="http://www.blogsky.com/cp/weblog/post.bs?rnd=sjYDAJ8WH68ttGBL55L3Y0UX2OZ5XXJUJK46H2ER#_ftnref5" name=_ftn5><SPAN class=MsoFootnoteReference><SPAN dir=ltr><SPAN style="mso-special-character: footnote"><SPAN class=MsoFootnoteReference><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Lotus; mso-bidi-language: FA; mso-ansi-language: EN-US; mso-fareast-language: EN-US"><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>[5]</FONT></SPAN></SPAN></SPAN></SPAN></SPAN></A><SPAN dir=rtl></SPAN><SPAN style="FONT-FAMILY: Lotus"><SPAN dir=rtl></SPAN><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1> </FONT></SPAN><SPAN dir=ltr><FONT face="Tahoma, Arial, Helvetica, sans-serif" color=#000000 size=1>Weaving</FONT></SPAN></P>]]></description>
					<pubDate>Wed, 23 Jan 2008 12:31:13 GMT</pubDate>
					<comments>http://www.hamedanprogramig.blogsky.com/Comments.bs?PostID=103</comments>
          <guid>http://www.hamedanprogramig.blogsky.com/1386/11/03/post-103/</guid>
				</item>
			
				<item>
					<title><![CDATA[تولید و توسعه نرم‌افزار]]></title>
					<link>http://www.hamedanprogramig.blogsky.com/1386/10/20/post-102/</link>
					<description><![CDATA[<TABLE dir=rtl style="BORDER-RIGHT: #ffffff 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: #ffffff 1px solid; PADDING-LEFT: 4px; PADDING-BOTTOM: 1px; BORDER-LEFT: #ffffff 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: #ffffff 1px solid" height=167 width="100%" border=0>
<TBODY>
<TR>
<TD>
<P align=center><FONT size=2><BR></FONT></P></TD></TR>
<TR>
<TD>
<P class=shownewstitle2><FONT size=2><STRONG>&nbsp;100 اصل در تولید و توسعه نرم‌افزار</STRONG></FONT></P></TD></TR>
<TR>
<TD><FONT size=2>&nbsp;</FONT></TD></TR>
<TR>
<TD class=shownewsdetailes><FONT size=2>در تولید نرم‌افزار نکاتی وجود دارد که یا از طریق تجربه بدست می آید و یا از طریق مطالب نهفته در متون علمی. اما به دلیل ماهیت پیچیده و متغیر مفاهیم و روش‌های توسعه و تولید نرم‌افزار، استفاده از تجربیات سایرین در پروژه‌های قبلی می تواند بسیار راهگشا باشد و از بسیاری دوباره‌کاری‌ها جلوگیری نماید.<BR><BR>در این مقاله سعی شده است به نکاتی اشاره شود که می‌تواند شما را در اجرای پروژه‌های نرم‌افزاری یاری دهد در پس هر یک از این نکات مطالب بسیاری نهفته است که با دقت در هر کدام از آنها می‌توان بخشی از مشکلات درگیر در زمان اجرای پروژه را مرتفع نمود.<BR><BR>یکی از نکاتی که در این مقاله آورده شده این جمله است که «هرچه را می‌خوانید باور نکنید»، بنابراین هر یک از این نکات را به دقت با دوستان و هم تیمیهایتان بحث کرده و آنگاه به کار برید.<BR><BR>1- کیفیت حرف اول را می‌زند.<BR>2- کیفیت در چشمان بیننده است.<BR>3- کیفیت و کارائی دو جز، جدا نشدنی هستند.<BR>4- بالاترین کیفیت در نرم‌افزار امکان پذیر است.<BR>5- قابلیت اعتماد کم، بدتر از کارایی کم است.<BR>6- محصول را هر چه زودتر به مشتری/کاربر بدهید.<BR>7- دائما با مشتری/کاربر در ارتباط باشید.<BR>8- محرکهایی را برای برنامه‌نویسان و مشتریان ایجاد کنید.<BR>9- یک نمونه اولیه درست ارائه نمائید(ProtoType).<BR>10- قابلیت‌های عملیاتی را در نمونه اولیه بسازید.<BR>11- نمونه اولیه را خیلی سریع بسازید.<BR>12- سیستم را به صورت افزایشی تولید کنید.<BR>13- بیشتر ببینید تا احساس ضرورت بیشتری کنید.<BR>14- تغییرات در زمان توسعه نرم‌افزار اجتناب ناپذیر است.<BR>15- در صورت امکان، بجای تولید اجزا، آنها را بخرید.<BR>16- بعد از تولید نرم‌افزار نیاز به یک راهنمای کاربری کوچک دارید.<BR>17- هر مسئله پیچیده ای راه حلی دارد.<BR>18- فرضیاتتان را ثبت کنید.<BR>19- تکنولوژی قبل از ابزار اهمیت دارد.<BR>20- از ابزارها استفاده کنید اما واقع بین باشید.<BR>21- همیشه ابزارهای خوب را به مهندسین خوب بدهید.<BR>22- دانستن «چه موقع» مهم تر از دانستن «چطور» است.<BR>23- زمانی که به اهدافتان رسیدید پروژه را متوقف کنید.<BR>24- روش‌های مرسوم توسعه نرم‌افزار را خوب بشناسید.<BR>25- تکنولوژی را هرگز فراموش نکنید.<BR>26- از استانداردهای مستندسازی استفاده نمائید.<BR>27- هر مستندی به واژه نامه نیاز دارد.<BR>28- هر مستندی به یک فهرست نیاز دارد.<BR>29- برای مفاهیم یکسان از اسامی یکسان استفاده نمائید.<BR>30- مفاهیم را جست‌وجو کنید و سپس انتقال بدهید.<BR>31- مسئولیت پذیر باشید.<BR>32- نیازمندی‌های ضعیف زمینه برآورد هزینه اشتباه است.<BR>33- قبل از ثبت نیازمندی‌ها، مسئله را تعریف کنید.<BR>34- خطاها را در توضیحات نیازمندی‌ها شناسایی و برطرف نمائید.<BR>35- نمونه اولیه، ریسک انتخاب UI مناسب را کم می کند.<BR>36- اینکه نیازمندی‌ها شامل چه چیزهایی هستند را به خوبی ثبت نمائید.<BR>37- زیرسیستم‌ها را به خوبی شناسایی کنید.<BR>38- نیازمندی‌ها را بازبینی نمائید.<BR>39- از طراحی در مرحله شناخت نیازمندی‌ها اجتناب کنید.<BR>40- به نیازمندی‌ها از زوایای مختلف نگاه کنید.<BR>41- نیازمندی‌ها را اولویت بندی کنید.<BR>42- خلاصه نویسی کنید.<BR>43- ابهام را در نیازمندیها برطرف نمائید.<BR>44- قبل از تبدیل به هرگونه مدل رسمی، نیازمندیها را به صورت توضیحات زمان طبیعی بنویسید.<BR>45- انتقال از مرحله شناخت نیازمندی‌ها به طراحی آسان نیست.<BR>46- طراحی بدون مستندسازی طراحی نیست.<BR>47- چرخ را دوباره اختراع نکنید.<BR>48- خطاهای مفهومی بسیار مهم تر از خطاهای Syntax می باشند.<BR>49- طراحی کنید که تغییرات داشته باشید.<BR>50- طراحی را به گونه ای انجام دهید که نگهداری آن امکان پذیر باشد.<BR>51- طراحی بایستی به نحوی باشد که خطاها به راحتی قابل تشخیص باشند.<BR>52- از الگوریتم‌های با کارایی بالا استفاده نمائید.<BR>53- به کاربر فقط اطلاعاتی را نمایش دهید که مورد نیاز وی می باشد.<BR>54- طراحی بایستی چند بعدی باشد.<BR>55- نرم‌افزاری که قصد تولید آن را دارید به خوبی بشناسید.<BR>56- « ورود اطلاعات نادرست –- خروج داده‌های غلط » را در پی دارد.<BR>57- از به کار بردن متغیرهای غیر محلی خودداری نمائید.<BR>58- به شکلی کدنویسی نمائید که بتوان آن را از بالا به پائین خواند.<BR>59- مراقب اثرات جانبی کدی که می نویسید باشید.<BR>60- از اسامی با مفهوم در نامگذاری ها استفاده نمائید.<BR>61- قبل از اینکه به فکر سریع اجرا شدن کد باشید به فکر درست کارکردن آن باشید.<BR>62- قبل از اینکه کد را به پایان برسانید توضیحات آن را بنویسید.<BR>63- هر بخش از کد را جداگانه هم اجرا کنید.<BR>64- کد نوشته شده را ممیزی کنید.<BR>65- از زبان برنامه نویسی مناسب استفاده کنید.<BR>66- کد نویسی را خیلی زود شروع نکنید.<BR>67- تست را از نیازمندیها شروع کنید.<BR>68- نرم‌افزار را خودتان تست نکنید.<BR>69- طرح تست را خودتان ننویسید.<BR>70- نیمی از خطاها در 15 درصد از کدها می باشند.<BR>71- همیشه از تست فشار استفاده نمائید.<BR>72- قبل از تست واحدها یکپارچه سازی را اعمال نکنید.<BR>73- مدیریت قوی بسیار مهم‌تر از تکنولوژی قوی می باشد.<BR>74- هر چه را که می خوانید باور نکنید.<BR>75- نیروی انسانی راه رسیدن به پیروزی می باشد.<BR>76- نیروی انسانی خوب ولی کم بهتر است از نیروی انسانی زیاد ولی ضعیف.<BR>77- به پرسنل تان گوش دهید.<BR>78- به نیروهایتان اطمینان کنید.<BR>79- مهارتهای ایجاد ارتباط بسیار مهم می باشند.<BR>80- به پرسنل تان بوسیله ابزارهای مختلف روحیه دهید.<BR>81- محیط کاری تان را آرام و ساکت نگه دارید.<BR>82- دو چیز قابل برگشت نیستند یکی نیروی انسانی و دیگری زمان.<BR>83- هر چیزی را که در حال انجام آن می باشید می توان به بهترین شکل به اجرا در آورد.<BR>84- موارد غیر ممکن را کنار بگذارید.<BR>85- کار تیمی را هرگز فراموش نکنید.<BR>86- برنامه زمانی پروژه ها را به ریز نگه دارید و همیشه آن را به روز نگه دارید.<BR>87- 10 ریسک اول را شناسایی کنید.<BR>88- برای پروژه حتی در حین اجرا نام و شماره نسخه در نظر بگیرید.<BR>89- همه چیز را ثبت و مستندسازی نمائید.<BR>90- سعی نکنید علائم مربوط به مشکلات را حذف کنید، بلکه آنها را حل کنید.<BR>91- هرچه از عمر نرم‌افزار بیشتر می گذرد پشتیبانی آن سخت تر خواهد بود.<BR>92- برای کنترل پیشرفت نرم‌افزار جلسات بررسی پیشرفت کار را به شکل دائمی برگزار کنید.<BR>93- برنامه نویسانتان را به دو گروه تقسیم کنید : گروه اول برنامه نویسانی که بر روی منطق و الگوریتم نرم‌افزار کار می کنند، گروه دوم آنانی که برروی کارهای روتین و تکراری کار می کنند.<BR>94- برای نوشتن نرم‌افزارهای جدید حتما از مشاور مرتبط با موضوع در تیم تحلیل استفاده نمائید.<BR>95- به افراد تیم تان بیاموزید که این مشتری است که قرار است از نرم‌افزار استفاده نماید نه آنان.<BR>96- استانداردهای لازم جهت مراحل مختلف از قبیل تحلیل، طراحی و برنامه نویسی را قبل از شروع به کار در هر یک از مراحل تدوین نمائید.<BR>97- با توجه به محدوده و بزرگی یا کوچکی نرم‌افزار، متدلوژی توسعه نرم‌افزار را به درستی انتخاب نمائید.<BR>98- قبل از شروع کردن هر پروژه ای، تیم اجرایی آن را به دقت تشکیل دهید.<BR>99- در ابتدای پروژه مسئولیتها و وظایف هر یک از افراد تیم را به روشنی به آنها توضیح دهید.<BR>100- در صورت امکان یک نفر را به عنوان مشاور فنی در تیم در نظر بگیرید.</FONT></TD></TR>
<TR>
<TD><BR><BR>
<P class=shownewstitle><FONT size=2>منبع&nbsp; :<SPAN lang=en-us> </SPAN>ایتنا - </FONT><A class=headermenu1 href="http://www.itna.ir/archives/article/008900.php" target=_blank><FONT size=2>http://www.itna.ir/archives/article/008900.php</SPAN></FONT></A></P></TD></TR></TBODY></TABLE>]]></description>
					<pubDate>Thu, 10 Jan 2008 10:30:16 GMT</pubDate>
					<comments>http://www.hamedanprogramig.blogsky.com/Comments.bs?PostID=102</comments>
          <guid>http://www.hamedanprogramig.blogsky.com/1386/10/20/post-102/</guid>
				</item>
			
		
	</channel>
</rss>
