١
٠
میپسندم
نمیپسندم
|
دفعات مشاهده: ١١٠٩٤١
|
بازگشت |
امتياز:٥ از ٥
امتیاز دادن سریع
تعداد امتياز دهندگان: ١٠
|
الگوهاي طراحي در C# 5.0
مولف:سيد منصور عمراني
یکی از ابزارهای مهمی که یک برنامهنویس در اجرای یک پروژهی نرمافزاری باید از آن بهرهمند باشد، درک مفهومی به نام الگو و آگاهی از الگوهای رایج و اثبات شده است. الگوها، راهحلهایی انتزاعی هستند که بر اساس تجربیات گروه بیشماری از برنامهنویسان در طول سالهای برنامهنویسی بهدست آمدهاند و درستی و اعتبار آنها، به اثبات رسیده است. الگوها دیدگاهی فراهم میکنند که برنامهنویسان با استفاده از آن میتوانند خصوصیتهایی مانند قابلیت استفادهی مجدد، آزمونپذیری و نگهداریپذیری را به شکل بهتری برای برنامههای خود فراهم کنند. در این کتاب تمام 23 الگوی GoF که معروفترین الگوهای طراحی بوده و در کتاب ماندگار Design Patterns: Elements of Object-Oriented Software در اواخر سال 1994 معرفی شد، آموزش داده میشود. این کتاب با دو دیدگاه تحلیلی و کاربردی نوشته شده و مؤلف سعی نموده، وراي بحث نظری هر الگو، حاشیهها و پیامدهای آن را بهطور عملیتری بررسی کند و الگوها را در سکوی NET. به زبان #C با نگاهي به جدیدترین قابلیتهای آنها آموزش بدهد و نقاط قوت و ضعف الگوها را بیان نماید.
|
||||||
شابک: ٤-٤٢-٦٥٢٩-٦٠٠-٩٧٨
تعداد صفحه: ٤١٦
نوبت چاپ: دوم
سال چاپ: پاييز ١٣٩٢
قيمت پشت جلد:
با تخفیف خرید اینترنتی: ٢٨٥،٠٠٠ تومان |
|
- نيازمندي ها
- مخاطبین
- تصحيحات
- سورس کُد و ضمائم
- فهرست
- توضيح
مسعود رضاعی
١٣٩٢/٠٨/٠١ ???? ١١:٠٣ آقا خدا قوت دستتون درد نکنه
|
|
بهزاد علی محمدزاده
١٣٩٢/٠٩/١٤ ???? ٠١:٠٧ من يه پيام براي يکي از دوستان در فروم برنامه نويس فرستادم تا کتاب رو بهش معرفي کنم . متنش و اينجا ميذارم :
سلام . خوب هستين ؟ چند روزي هست که کتاب الگوهاي طراحي در #C به دستم رسيده . از انتشارات پندار پارس ... مدتي هست که کتابهاي ترجمه ايي نمي خونم اما کتابهاي تاليفي رو يه مکثي روشون دارم و اگر خوب باشه سفارش ميدم . راستش کتاب رو هنوز نخوندم . بصورت پراکنده مطالعه ايي داشتم اما به راحتي ميشه آثار تاليف و در اين کتاب ديد . خواننده مي تونه با اين کتاب ارتباط خوبي برقرار کنه . مطالب با مثال هاي سي شارپ ارائه شدن . و به نظرم از کتاب هاي ارزشمند فارسي زبان هست . من تصميم گرفتم يه پيام براي شما بفرستم تا در تاپيک هايي که ازتون سوال ميشه به عنوان يه مرجع خوب معرفي کنيد . اگر در نمايشگاهي يا جايي ديدين حتما روش توقفي داشته باشيد . |
|
سيد منصور عمراني
١٣٩٢/٠٩/١٤ ???? ١٩:٠٨ نظر لطف شما است. حقيقتش من خودم هم علاقهاي به ترجمه ندارم. چون هر چقدر هم ترجمهي مترجم عالي باشه، از نظر بيان مطلب، باز هم محدود به نگارش نويسندهي اصليه و اختلاف فرهنگ هم قطعا در کاهش خوانايي و روان بودن متن نهايي، تاثير گذاره.
اميدوارم کتاب فعلي هم مورد پسند دوستان قرار بگيره. |
|
پارسا گرجی
١٣٩٣/٠٢/٢٠ ???? ١٠:٠٥ از نويسنده کتاب تشکر مي کنم . اين کتاب، يک مرجع بسيار خوب در زمينه الگوي طراحي است . قبل از تاليف اين کتاب هيچ مرجع فارسي در اين زمينه وجود نداشت.
|
|
سيد منصور عمراني
١٣٩٣/٠٢/٢٠ ???? ١١:٤٧ خواهش ميکنم. در اين زمينه قبلا کتاب فارسي هم بوده که از سوي ديگر ناشران چاپ است. سعي من در اين کتاب اين بوده که کمي عمليتر به الگوهاي طراحي بپردازم و با ديدگاه تحليلي کاربرديتري حواشي و مسائل مترتب بر آنها را ذکر کنم. اميدوارم در اين زمينه موفق بوده باشم.
|
|
saeed rezaei
١٣٩٣/٠٧/٢٨ ???? ٠٠:٣٤ اين کتاب عاليهههههه
|
|
سینا سلطانی
١٣٩٣/٠٨/٠٦ ???? ٢١:٠١ کتاب خوبي هست.
ولي انتقادي که دارم اينه که مثال هايي که براي الگوها زده شده ساده و قابل فهم نيست. بهتر بود که براي چنين الگوهاي پيچيده اي، مثال هاي خيلي ساده که در دنياي واقعي وجود داره (مثل رابطه اعضاي شرکت يا مثلا ارتباط ميان خانواده حيوانات و از اينجور مثال ها) زده ميشد نه مثال هاي منطقي. و همينطور در رابطه با مثال هاي پياده سازي کدنويسي که بعد از تشريح الگو ها زده شده هم اگر مثال هاي ساده تري زده ميشد بهتر بود تا اينکه مستقيما خوده رابطه ي منطقي الگو مثال زده بشه. اميدوادم منظورم رو رسونده باشم. با تشکر. |
|
سيد منصور عمراني
١٣٩٣/٠٨/٠٧ ???? ٠٦:٥٦ از شما سپاسگزارم.
مولف نيز بر ارائه نمونههاي ملموس و قابل فهم اهتمام داشته و هنگام توضيح هر الگو بر اين امر تلاش نموده است. برخي الگوها ماهيتي پيچيده يا کاملا فني دارند که يا معادل مستقيمي در دنياي واقعي براي آنها وجود نداشته و کاملا فني هستند و يا پيچيدگي آنها باعث پيچيده بودن مثالشان شده است. همچنين در نظر داشته باشيد پيچيدگي همهي الگوها يکسان نيست. برخي الگوها مانند Prototype، ساده و قابل فهم هستند اما برخي الگوها مانند Command پيچيده هستند. علي اي حال مولف در پيوست کتاب جدولي افزوده و براي هر الگو نمونهي دنياي واقعي، نمونه عملي، ميزان پيچيدگي و ميزان کاربرد را ذکر نموده که با مراجعه به آن به سرعت ميتوانيد ديدي کلي نسبت به الگوهاي طراحي، پيدا کنيد. |
|
سيد منصور عمراني
١٣٩٣/٠٨/٠٧ ???? ٠٦:٥٧ در خصوص کُدها نيز طبعا پيچيدگي کُدها متاثر از پيچيدگي الگوها است. اما انتزاعي بودن کُدهاي پيادهسازي به دليل هماهنگي با نمودار UML هر الگو انجام شده است (اين مساله تنها محدود به اين کتاب نيست). مولف تلاش نموده در هر الگو، مثالي عملي نيز ذکر نمايد تا الگو بهتر درک شود. بخش «نمونه عملي در .NET» در هر الگو نيز در راستاي همين امر قرار داده شده است.
در انتها به ياد داشته باشيد کاربرد الگوهاي طراحي به مورد استفاده بستگي دارد و همان طور که در مقدمه کتاب توضيح داده شده، در يک برنامه ممکن است تنها بخشي از الگوها را استفاده کنيد و عدم استفاده از برخي الگوها، خللي به بنيان برنامه وارد نميکند. در انتهاي کتاب نيز، به طور خلاصه، الگوها بر اساس ميزان کاربردشان به چهار دستهي «پر کاربرد»، «کاربرد متوسط»، «کم کاربرد» و «داراي کاربرد ويژه» تقسيم شده تا اهميت الگوها بهتر درک شود. باز هم از شما سپاسگزارم. |
|
محمدرضا کرمی
١٣٩٣/٠٨/١٥ ???? ١٩:٣٠ متاستفانه من اصلا نتونستم با کتاب ارتباط برقرار کنم و به سردي در حال دنبال کردن کتاب هستم با شناختي که از آقاي عمراني در کتاب هاي ديگشون بدست آورده بودم (برنامه نويسي موازي ) اين کتاب رو تهيه کردم ولي متاستفانه قابل وصف با کتاب فوق ذکر نيست
|
|
سيد منصور عمراني
١٣٩٣/٠٨/١٥ ???? ٢٠:٣٢ به هر حال هر فردي نظري دارد و نظرش قابل احترام است. ممنون ميشوم اگر انتقادتان را دقيقتر بيان کنيد.
|
|
محمدرضا کرمی
١٣٩٣/٠٨/١٦ ???? ٠٠:٠٧ با تشکر از انتقاد پذيريتون و احترام به افکار ديگران در حال اتمام کتاب هستم ان شاالله بعد از پايان مطالعه شرح نقد خود را به ايميل ذکر شده شما در کتاب ارسال خواهم کرد موفق باشيد
|
|
حسین زارع
١٣٩٤/٠٤/٣١ ???? ١٢:٣٨ با سلام و خسته نباشید من این کتاب رو تازه شروع کردم کتاب قبلی که از شما خوندم برنامه نویسی موازی بود خیلی ازش راضی واقعا بهترین کتاب فارسی در زمینه کامپیوتر بود که تا بحال خوانده بودم ولی در این هنگام که فصل سوم این کتاب را خواندم دارم با تردید ادامه می دهم زیرا دو مساله که ممکنه به خوبی نتونم از این کتاب استفاده کنم وجود داره که من نسبت به آنها دانش کمی دارم مورد اول تحلیل و طراحی شی گرا(OOA & OOD) و مورد دوم UML که مورد اول مورد خیلی مهتری می باشد بنظر خودم البته فقط یه نظر شخصیه در این زنجیره یادگیری زبان شی گرایی مانند سی شارپ تا استفاده از الگوهای طراحی حلقه ای به نام تحلیل و طراحی شی گرا یه حلقه گمشده و باعث کاربردی نبودن الگوی طراحی و استفاده صحیح در پروژه می باشد زیرا بنده که هنوز نمی توانم سیستم را به شکل شی گرا طراحی کنم چطور می توانم از الگوهای آماده طراحی استفاده کنم به همین دلیل انگیزه ام در خواندن این کتاب پایین آمده در ضمن بنده برنامه نویسی هستم که الان حدود 10 ساله برنامه نویسی شی شارپ انجام می دهم در کار خودم سطح نسبتا خوبی دارم و در شرکتی که با همکاران داریم پروژه های متعددی انجام می دهیم ولی از زبان شی گرا استفاده می کنیم برنامه نویسی شی گرا بلد نیستیم به همین دلیل بنده از طرف شرکت مامور شده ام در یک فرصت مطالعاتی سطح روند تولید نرم افزار را در شرکت ارتقا بدهم یکی از مواردی که باعث شده نتونم توی این مبحث و کلا تمامی مباحث کامپیوتر دانش خودم رو ارتقا بدم اینکه بنده و همکاران در خواندن منابع و کتاب های انگلیسی مشکل داریم بازم بنظر بنده یکی از پیشنهاد های بنده که خیلی می تونه به فروش این کتابتون نیز کمک کنه اینکه این زنجیره رو کامل کنید وکتاب خوبی را در مورد OOA & OOD به چاپ برسونید و اینکه مثل کتاب های قبلی تون کاربردی و قابل استفاده عملی باشه این کتاب اگر هم اقدام به تالیف و چاپش نمودید به فرصت مطالعاتی بنده نمی رسه ولی در اینجا وظیفه خودم دونستم این مساله رو مطرح کنم خیلی صحبت کردم :) بازم ممنون که کتاب های خیلی خوبی رو تالیف می کنید و دانش کسانی امثال من که با منابع انگلیسی به مشکل برخورد می کنند را ارتقا می دهید با تشکر
|
|
سيد منصور عمراني
١٣٩٤/٠٤/٣١ ???? ١٧:٤٢ با سلام
از توجه شما سپاسگزارم و خوشحالم که کتاب برنامهنویسی موازی موردپسند قرار گرفته و متاسف از این که نتوانستید استفادهای را که باید از کتاب الگوهای طراحی ببرید. اما به شما حق میدهم. واقعیت مطلب این است که الگوهای طراحی GoF الگوهایی بسیار پایهای و زیر بنایی هستند. در واقع با توجه به ماهیت انتزاعیشان چارهای از بیان آنها به صورت نظری یا تئوریک نیست و برای موردکاربرد تنها اشارهای به یک یا دو نمونهی عملی میشود. پیدا کردن موردکاربرد و نحوهی پیادهسازی الگوها و این که کدام الگو را باید استفاده کرد و کدام یک بسته به نیاز پروژه مفید نخواهد بود به خود فرد بر میگردد. البته من هم به شخصه تئوریک بودن کتاب را احساس میکردم و با توجه به این مساله هنگام تالیف تلاش کردم بر خلاف رویهی نسخهی اصل کتاب الگوهای GoF به طور عملیتری کاربرد آنها را نشان بدهم (اگر کتاب اصل لاتین را میخواندید چه میگفتید!). اما همان طور که گفتم ماهیت انتزاعی و زیر بنایی این الگوها به گونهای است که تئوریک شدن کتاب را ناگزیر میکند. |
|
سيد منصور عمراني
١٣٩٤/٠٤/٣١ ???? ١٧:٤٨ با این وجود مطالب زیر را هم در نظر داشته باشید:
این الگوها لزوماً نیازی به دانش تحلیل و طراحی ندارند. همچنین به هیچ وجه نیازی به تسلط به UML ندارید. تنها همان مقداری که در کتاب بیان شده و آشنایی با نمودار کلاس (Class Diagram) برای درک الگوهای طراحی کفایت میکند (به ویژه با توجه به رهیافت برنامهنویسی چابک یا Agile نیاز به دانش UML هم امروزه بسیار کمتر شده است). مطلب دوم که در خود کتاب هم بیان کردهام این است که نیازی نیست همهی الگوهای طراحی را در یک پروژه استفاده کنید. تنها باید با آنها آشنا باشید و بسته به نیاز هر پروژه ببینید کدام الگوها به آن پروژه میخورد. به ویژه برخی الگوها واقعا خاص منظوره هستند و باید کاربردش پیش بیاید که بخواهید از آنها استفاده کنید. با توجه به این مساله اگر کتاب را خواندید و بعد در یک پروژه تنها از تعداد بسیار کمی از الگوها استفاده کردید هیچ نگران نباشید و نباید به این دلیل (استفادهی کم از الگوهای طراحی) در طراحی نرمافزار خود تردید کنید. از آن سو هم نباید نسبت به الگوهای کم کاربردتر بدبین شوید. اتفاقا در انتهای کتاب الگوها را به چهار دسته تقسیم کردهام و اگر دقت کنید خواهید دید تنها 7 الگو از بین 23 الگوی GoF بیشترین کاربرد را دارند. |
|
سيد منصور عمراني
١٣٩٤/٠٤/٣١ ???? ١٨:١١ چند مطلب دیگر به خودتان بگویم:
خیلی در مورد طراحی شیگرا به خودتان سختگیر نباشید. کسی که 10 سال برنامهنویسی سی شارپ میکند قطعا با برنامهنویسی شیگرا به میزان خوبی آشنا است. ضمن این که میگویند تجربه از علم بالاتر است. قطعا شما بر حسب تجربه در این 10 سال چیزهای زیادی را یاد گرفتهاید. حتی ممکن است بدون آن که بدانید از قبل با برخی الگوها هم آشنا باشید و از آنها استفاده کرده باشید. اجرای موفقیتآمیز یک پروژه هم به یدک کشیدن مجموعهای از اصطلاحات پر طمطراق و عناوین عجیب و غریب نیست. چه بسیار طراحیهایی که ممکن است در آنها از بهترین الگوها، پیشرفتهترین تکنولوژیها و انواع و اقسام رهیافتهای پیشرفته و hot و cutting-edge دیگر استفاده شده باشد اما باز هم موفق از آب در نیاید. تعداد پروژههای نرمافزاریای که شکست میخورد هم اگر از تعداد خود نرمافزارهایی که تاکنون تولید شده بیشتر نباشد کمتر هم نیست. آنچه به عقیده من مهم است دو چیز است: 1. متدولوژی تحلیل و طراحی 2. تسلط فنی بر ابزار متدولوژی تحلیل و طراحی هم چیزی است که تمام دنیای امروز دنبالش هستند و از گذشته تا حال دست و پا زده و میزنند تا بتوانند پروژههای نرمافزاری را به بهترین شکل ممکن پیادهسازی و اجرا کنند و از شکست پروژه جلوگیری کنند، بتوانند از هدر رفتن هزینه و وقت جلوگیری کنند، بهتر بتوانند نرمافزار را نگهداری کنند و توسعه بدهند و با تغییرات بسیار زیادی بیزینس آن را همگام نگه دارند. اینها چیزی است که کل دنیا دنلاش است. لذا خیلی به خودتان سخت نگیرید. |
|
سيد منصور عمراني
١٣٩٤/٠٤/٣١ ???? ١٨:٤٠ اما در مورد آیتم دوم یعنی تسلط فنی بر ابزار حتما به خودتان سخت بگیرید. زیرا این چیزی است که مسیرش کاملا روشن و مشخص است و دستیابی به آن هم شدنی است. اگرچه وقتگیر است، اما مطمئن خواهید بود به چیزی که باید دست خواهید یافت.
مقصودم از ابزار چیست؟ یعنی هر چیزی که پروژهی نرمافزاری را با آن انجام میدهید. مثلا در یک پروژه وب ابزار شما در کمترین حدش اینها است: HTML، CSS، Javascript، jQuert داتنت، سیشارپ، ASP.NET MVC SQL Server کافی است در مورد تک تک این ابزارها از خودتان بپرسید «آیا با تمام قابلیتها و امکانات این ابزار آشنایی دارم یا خیر» تا متوجه مقصودم شوید. قطعا تصدیق خواهید کرد بدون تسلط بر تمام feature ها و قابلیتهای ابزار کار نمیتوان به طراحی خوبی دست پیدا کرد، حتی اگر از بهترین رهیافت و متدولوژی و الگو و توصیه هم استفاده کنید. این یک واقعیت است که قابلیتها و امکانات ابزار به طور مستقیم بر طراحی تاثیر میگذارد. به نظر من در طراحیای که نتواند از قابلیتهای ابزار به بهترین شکل استفاده کند باید تردید کرد. بحث در مورد اجرای موفق یک پروژهی نرمافزاری بسیار مفصل است و خارج از حوصلهی این مختصر است. در مورد این که پیشنهاد کردید کتابهای عملیتری در زمینهی طراحی نرمافزار بنویسیم، واقعیتش قصد شخصی خودم هم همین بوده و هست و کتاب الگوهای طراحی فعلی هم قرار بود نخستین کتاب از یک سری باشد. اما متاسفانه اوضاع نشر بسیار اسفبار است و درآمد مادیاش برای مولف در مقابل وقتی که صرف کرده بسیار ناچیز است. برای این که کتاب هم چیز خوبی از آب در بیاید واقعا باید وقت گذاشت. اما مشکلات و هزینههای زندگی مانع میشود بتوانی آنطور که مایل هستی به این زمینه بپردازی و مطالعه و تحقیق کنی. من شخصا تا اینجا مقاومت کردهام. اما متاسفانه آن طور که دوست داشتم نتوانستم روی موضوعاتی که در نظر دارم کار کنم. چنان که اکنون حداقل 6 عنوان کتاب دیگر برای تالیف در دست اجرا دارم، اما تالیف هر کدام حداقل 4 یا 5 ماه وقت صرف میکند. از این رو نمیدانم چقدر دیگر واقعا میتوانم ایستادگی کنم. اما در هر حال دارم پیش میروم! در انتها بار دیگر از شما بابت ثبت نظرتان سپاسگزارم و برایتان آرزوی موفقیت میکنم. |
|
حمید رضا اسماعیلی
١٣٩٥/٠٤/٠١ ???? ١١:٤٦ با سلام
خدا قوت عالی بود تاکنون چنین مرجع خوبی درباره الگوها به زبان فارسی ندیده بودم دارای زبانی شیوا و قابل فهم |
|
النا دهنوی
١٣٩٥/٠٨/٠٦ ???? ٠٩:١٩ جناب آقای عمرانی سلام
سوالی از خدممتون در ارتباط با این کتاب داشتم و آن هم اینکه آیا این کتاب پاسخگوی نیاز من در مورد برخی تمریناتی که پیرامون الگوهای مهندسی نرم افزار در درس مربوطه اش در دانشگاه مطرح میشود هست یا خیر؟ یعنی ایده ها یا حداقل راهنمایی ها در جهت اضافه شدن تغییرات به یک نرم افزار که از یک الگوی مهندسی نرم افزار خاص تبعیت میکنه آیا هست یا خیر ؟؟! بعنوان مثال در الگوی State چنانچه بخواهیم متدی جدید اضافه کنیم چگونه اینکار را انجام داده و در کجا که هزینه تغییرات ما مینیمم باشد و در عین حال اصل open-close حفظ شود ؟ و دیگر سوالاتی از این دست پیرامون سایر الگوها پیشاپیش از پاسخ شما ممنون و یپاسگزارم |
|
النا دهنوی
١٣٩٥/٠٨/٠٦ ???? ١٣:٣٢ عرض سلام
جناب آقای عمرانی سوالی از خدمتتون داشتم و آن هم اینکه آیا این کتاب پاسخگوی نیاز دانشجویان در مورد تغییرات آتی ناشی از تحلیل هر یک از الگو ها میباشد. بطور واضح تر یعنی با مطالعه این کتاب بنده راه حل یا حداقل دید و ایده ای کاربردی در رابطه با مثلا تغییر الگوی state با اضافه کردن یک متد جدید در آن به گونه ای که هزینه تغییر و sub class کردن مینیمم باشد، می یابم؟؟! |
|
سيد منصور عمراني
١٣٩٥/٠٨/١١ ???? ٢١:٤٧ سلام.
خیر. در این کتاب تنها به الگوهای God در کُدنویسی پرداخته میشود و دیگر مسائل مرتبط با مهندسی نرم افزار مانند مطالعه و تحلیل، چرخه تولید، انواع متدلوژی ها و فرآیندها، ارزیابی هزینه، مدیریت و برنامه ریزی، استخراج پلان اجرا، بررسی ریسک و دیگر دغدغه های یک پروژه نرم افزاری را باید در کتابهای اختصاصی مهندسی نرم افزار جستجو کنید. برخی از چیزهایی که پرسیدید را دقیقا متوجه نشدم: «اضافه شدن تغییرات به یک نرم افزار که از از یک الگوی خاص تبعیت میکند»، «افزودن متد جدید در الگوی state با مینیمم نگه داشتن هزینه و حفظ اصل open-close«، «به دست آوردن دید در خصوص تغییر الگوی state هنگام افزودن متد جدید به آن با مینیمم نگه داشتن هزینه تغییر و sub-class کردن». |
|
سعید محمدی
١٣٩٥/١٠/٠٤ ???? ٢٢:١٤ مهندس عمرانی 3 تا از کتاباتونو سفارش دادم. امروز رسید به دستم نزدیک امتحانات هم هست فک کنم چند تا از درسامو بیفتمبد موقعی با کارای شما آشنا شدم :) . کتاب هاتون حرف نداره. همیشه موفق باشید
|
|
سيد منصور عمراني
١٣٩٥/١٠/٠٥ ???? ١٩:٣٩ خواهش میکنم. نظر لطف شما است.
درسها رو هم بچسبید. حیفه. فقط باید کمی در طول ترم وقت بگذارید. با آرزوی موفقیت |
|
تورج استواری
١٣٩٥/١١/١٨ ???? ١١:١٢
این نظر توسط
omrani
مورد پذيرش قرار نگرفته است.
علت: لطفا پیشنهاد ترجمه کتاب را در بخش ویژه همین کار ثبت کنید
تاريخ رسيدگي: ١٣٩٦/٠٢/٢٥ ???? ٢٣:١٩ |
|
احمدرضا صالحوند
١٣٩٦/٠٤/٣٠ ???? ١٧:٢٣ سلام
کتاب رو خوندم کتاب خیلی خوبیه شاید کاملترین منبع برای الگوهای طراحی باشه که تاحالا خوندم درمورد طراحی جلد هم خیلی ایده ی جالبی بود Gang of four |
|
سيد منصور عمراني
١٣٩٦/٠٥/١١ ???? ٠٠:٠٦ نظر لطف شما است. خوشحالم که کتاب مورد پسند قرار گرفته.
|
|
تورج استواری
١٣٩٦/٠٩/٢٤ ???? ٢٢:٣٥ سلام فکر نکنم که بحث الگوی طراحی یک بحث واقعا جدی باشه برای بازار کار که باید حتما یاد گرفت درست میگم استاد؟
ممنون میشم که راجب اجبارش بگید. چون من توی سایت ها که سرچ میزنم از 10 تا مثلا یکیش شرط بلد بودن این بحث گذاشته. |
|
سيد منصور عمراني
١٣٩٦/١٢/٠٢ ???? ١٥:٥٢ ضمن پوزش بابت تاخیر.
چند نکته در این خصوص قابل توجهه. الگوهای طراحی مهم هستن. ولی کافی نیستن. خیلی چیزهای دیگه هم هست که برنامه نویس ها باید بدونن. الگوهای طراحی نوعا خیلی basic، انتزاعی و زیر بنایی هستن. لذا عموما استفاده ازشون به روشنی دیده نمیشه. اما به طور ویژه موقع لایبرری نوشتن خیلی به کار میان. تمام الگوهای طراحی کاربرد یکسانی ندارن. برخی خاص منظوره هستن و برخی به ندرت استفاده میشن. از بین الگوهای طراحی GoF شاید فقط هفت هشت تا از بقیه مهمتر و پرکاربردتر باشه. |
|
سیامک مهندسان
١٣٩٧/٠٣/٢٩ ???? ٠٨:٣٦ سلام
آیا امکان تهیه کتاب از جای دیگه وجود دارد که منتظر چاپ مجدد نباشم فکر کنم چاپ مجدد زمان زیادی ببره |
|
سيد منصور عمراني
١٣٩٧/٠٣/٢٩ ???? ١٢:١٢ سلام.
بنظرم ناشر قصد دارند به طور محدود کتاب را به صورت دیجیتال چاپ کنند. با دفتر ناشر تماس بگیرید. |
|
محمد مومنی
١٣٩٧/١١/٠٦ ???? ١٣:٤٥ نسخه دیجیتالی کتاب جایی نیست؟
|
|
سيد منصور عمراني
١٣٩٧/١١/١٤ ???? ١٤:٤٢ خیر. نسخه دیجیتال به شکل pdf قابل دانلود موجود نیست.
|
|
سيد منصور عمراني
١٣٩٧/١١/١٤ ???? ١٤:٤٥ البته نسخه دیجیتالی کتاب جهت مطالعه به صورت آن لاین در سایت کتبابخانه آن لاین انتشارات به آدرس ekup.ir قرار است اضافه شود.
http://ekup.ir/course/%D8%A7%D9%84%DA%AF%D9%88%D9%87%D8%A7%D9%8A-%D8%B7%D8%B1%D8%A7%D8%AD%D9%8A-%D8%AF%D8%B1-c-5-0/ |
|
پیام برومندی
١٣٩٨/١١/٢٧ ???? ١٧:٠٠ درود بر شما جناب مهندس عمرانی عزیز
من این کتاب رو تهیه کردم ولی اصلا فرصتی برای مطالعه اون پیش نمیومد تا اینکه چند وقت پیش شروع به مطالعه کتاب کردم. فصلهای ابتدایی در مورد آموزش شی گرایی و سایر مباحث خیلی خوب توضیح داده شده ولی مورد مباحث اصلی کتاب یعنی الگوهای طراحی کمی بصورت کلی گویی آموزش داده شده بعنی شما در ابتدا در مورد الگوی طراحی کمی توضیحات ارایه دادید و سپس یک نمونه کامل از کدهای الگو نوشته شده بدون اینکه در مورد کدها توضیحی داده بشه و یا حتی مابین کدها هم اصلا توضیحی داده نشده بنابراین کسانیکه که به سراغ این کتاب میاین حتما قبلش باید مطالعه ای در مورد الگوهای طراحی داشته باشن برای کسانیکه که میخوان آموزش الگوهای طراحی را از صفر شروع کنن این کتاب رو اصلا بهشون پیشنهاد نمیکنم در چندیدن مورد از الگوهای طراحی آموزش داده شده کاملا شبیه به کتابهای ترجمه ای مباحث آموزش داده شده است به شدت کلی گویی مثل الگوی طراحی Abstract Factory البته برای مطالعه ابتدایی بهترین منبع سایت دات نت تیپس هست که تا حد زیادی میتونه نیاز شما را مرتفع کنه |
|
سيد منصور عمراني
١٣٩٨/١٢/٢٩ ???? ٠٨:٢٠ از نظر شما ممنونم.
برای معرفی الگوها از نظر محتوا ساختاری به صورت زیر استفاده شده که کم و بیش در تمام الگوها رعایت شده: هدف انگیزه توضیح نمونه عملی در .NET دیاگرام UML شرکت کنندگان (توضیح اجزای دیاگرام UML) نکته کلیدی پیاده سازی نکته ها و پیامدها پیاده سازی الگو در C# نقاط قوت و ضعف کاربرد الگوهای مرتبط با توجه به این ساختار به عقیده این حقیر مطلبی باقی نمی ماند که در بیان هر الگو گفته نشده باشد و الگو با تمام جزئیات و حواشی به طور کامل و دقیق با جزییات کامل توضیح داده شده و واقعا کلی گویی انجام نشده است. به خصوص برای برخی الگوها مانند Decorator، Composite، Iterator حقیقتا هر آنچه از تبعات و پیامدهای الگو قابل بیان بوده ارائه شده و مطالب ارائه شده را بدون اغراق در هیچ کتاب دیگری نمی توان پیدا کرد. به نظرم مقصود شما این بوده که سورس پیاده سازی C# الگو نیاز به توضیح داشته. به عبارت دیگر بهتر میبود سورس C# نیز توضیح داده میشد. تصور نگارنده این بود که خواننده با مطابقت دادن دیاگرام الگو با سورس C# بر اساس اجزا و اسامی و شرکت کنندگان الگو سورس C# را متوجه شود که ظاهرا این مقصود حاصل نشده است. از نظر تکراری به نظر رسیدن برخی الگوها با دیگر منابع شاید علت این باشد که همگی به هر حال یک چیز را توضیح میدهند. از این رو آنقدرها نمیتوان انتظار داشت محتوا آنقدرها فرق کند. شاید تنها فرق قضیه میتواند در ارائه مثال های متفاوت و عملی باشد. نباید فراموش کرد الگوهای GoF عمدتا زیر بنایی هستند و سوای گنگ و ثقیل بودن شان ارائه یک مثال عملی همیشه آنقدرها میسر نیست. از این منظر میتوان به الگوهای Prototype، Adapter، Facade، Bridge اشاره کرد. در نتیجه ارائه یک مثال عملی مستلزم نوشتن سورس کُدی طولانی است که خواننده را خسته یا گیج کرده یا جزئیات اضافی آن او را از مطلب دور میکند. به همین دلیل است که نویسندگان در کتابهای الگوهای طراحی سعی میکنند سورس پیاده سازی الگو را به صورت محمل و در تطابق با نمودار UML بیان کنند تا ذات الگو بهتر درک شود. این یکی دیگر از دلایلی است که باعث میشود بیان الگوها توسط منابع مختلف تکراری بنظر برسد. با این وجود ارائه مثال عملی قطعا درک الگو را بهتر میکند. نگارنده نیز سعی نموده برای الگوها مثالی کاملا عملی هم ارائه بدهد. این مطلب در خصوص الگوهایی مانند Command، State، Interpreter، Iterator پر رنگ تر است و مثال عملی ارائه شده را جای دیگری نمی توان پیدا کرد. البته نظر شما نیز قابل قبول است و در برخی الگوها مانند Abstract Factory مثال عملی تری لازم است. انشالله اگر عمری بود و فرصتی برای ویرایش مجدد میسر شد این مساله را مد نظر قرار میدهم. |
|
پیام برومندی
١٣٩٨/١٢/٢٩ ???? ١٩:٤٠ سپاس از جناب مهندس عمرانی بزرگوار
بله خوب در مورد سه الگوی اولی که نام برده اید واقعا توضیحات کامل هستند و کاملا قابل فهم البته نظر بنده در برخی از الگوهای طراحی بوده که abstract factory جر آنها دسته الگوهایی میباشد بسیار پرکاربرد است. بنا بر همین من هم نقد خود را بیان کردم در هر صورت از لحاظ کلی تمامی کتاب های اتشارات شما در زمینه برنامه نویسی دارای محتوای بسیار قوی و عالی بوده در هیچ یک از سایر کتاب های برنامه نویسی قابل مقایسه با شما دیده نمی شود و بسیار خوشحالم از اینکه چند سالی میباشد که افتخار آشنایی با انتشارات شما را دارم |
|
سيد منصور عمراني
١٣٩٩/٠١/٠٣ ???? ١٦:١١ نظر لطف شما است و نظرات دلگرم کننده شما مشوق ما در این راه است.
چند سالی است قصد دارم کتاب دیگری در زمینه الگوهای برنامه نویسی تالیف کنم که عملی تر باشد، اما متاسفانه گرفتاری مجال نمی دهد. امیدوارم در آینده نزدیک بتوانم این ایده را عملی کنم. با آرزوی موفقیت |
|
در حال حاضر 10 نظر در وضعیت مخفی نیز وجود دارد که توسط اعضای سایت قابل مشاهده است.
|
بخش اول: مفاهيم اوليه
فصل 1: مروري بر شيءگرايي و زبان #C
فصل 2: مروري بر UML
فصل 3: مروري بر اصول طراحي شيءگرا
بخش دوم: الگوهاي ساختاري يا Structural
فصل 4: الگوي آذينگر يا Decorator
فصل 5: الگوي واسطه يا Proxy
فصل 6: الگوي پل يا Bridge
فصل 7: الگوي Composite
فصل 8: الگوي Flyweight
فصل 9: الگوي تطبيقدهنده، هماهنگساز يا Adapter
فصل 10: الگوي نماي بيروني يا Facade
بخش سوم: الگوهاي ايجادي يا Creational
فصل 11: الگوي نمونهي اوليه يا Prototype
فصل 12: الگوي متد كارخانهاي يا Factory Method
فصل 13: الگوي شيء يگانه يا Singleton
فصل 14: الگوي كارخانهي انتزاعي يا Abstract Factory
فصل 15: الگوي خانهساز يا Builder
بخش چهارم: الگوهاي رفتاري يا Behavioral
فصل 16: الگوي Strategy
فصل 17: الگوي وضعيت يا State
فصل 18: الگوي متد قلابدار يا Template Method
فصل 19: الگوي زنجيرهي مسئوليت يا Chain of Responsibility
فصل 20: الگوي فرمان يا Command
فصل 21: الگوي تكرارگر يا Iterator
فصل 22: الگوي ميانجي، كارگردان يا Mediator
فصل 23: الگوي مشاهدهگر يا Observer
فصل 24: الگوي ديدارگر يا Visitor
فصل 25: الگوي مفسر يا Interpreter
فصل 26: الگوي خاطره يا Memento
عنوان |
نام فايل |
توضيح |
دفعات دانلود |
---|---|---|---|
سورس کامل کُدها و مثالهاي کتاب | ٢٥٥٢ |
تصحیحات
سیاوش ابراهیمی
١٣٩٤/٠٩/١٦ ???? ١٤:٥٠ در صفحه 62 در نمودار کامنتی که طراحی کردید متد Operation خروجی ندارد ( void ) ولی در کد آن از دستور return استفاده کرده اید .
|
|
سیاوش ابراهیمی
١٣٩٤/٠٩/٢٩ ???? ١٩:٥٩ در صفحه 86 کتاب برای مقایسه متغیر bd با null باید از عملگر == استفاده بشه نه =! .
|
|
سیاوش ابراهیمی
١٣٩٥/٠٤/٢٠ ???? ١٠:٢١ سلام آقای عمرانی ، در صفحه 124 و در کلاس ComponentCollection عملیات مدیریت Component ها رو قرار دادین . در این کلاس یک فیلد به نام Parent تعریف کردید که ارجا Component پدر رو تنظیم می کنه . خوب الان چطور زمانی که یک Component رو دارید به عنصر پدرش دسترسی داشته باشیم ؟ چون در متد Add و Remove اونو در فیلد Parent کامپوننت فرزند قرار ندادین
|
|
سيد منصور عمراني
١٣٩٥/٠٤/٢٢ ???? ٠٠:٣٦ حق با شما است. البته در این قسمت موضوع صحبت و تاکید بر نحوه تعریف یک کلاس مجزا برای نگهداری کمپوننت های فرزند است که خودش اعتبار کمپوننت هایی که به او افزوده می شود را بررسی می کند (به جای یک لیست List ساده از جنس Component که هر چیزی را در آن می توان درج کرد و هیچ اعتباری را هم بررسی نمی کند). در خصوص نحوه تعریف یا مدیریت ارجاع به parent در صفحات قبل توضیح داده شده است.
برای تکمیل کُد این صفحه می توانید به روشی که در قسمت ج توضیح داده شده، در متد Add() پس از افزودن یک Component به لیستی که داخل ComponentCollection قرار دارد متد SetParent() آن را صدا زده و فیلد خصوصی parent را به component ای که در حال افزوده شدن به این ComponentCollection است به آن سازندة آن پاس بدهید. داخل متد Remove() نیز متد ClearParent() را برای کمپوننتی که حذف شده صدا بزنید. |
مخاطبین
نیازمندی ها
این کتاب ٠ روز دیگر به چاپ رسیده و برایتان ارسال می شود. آیا مایل به پیش خرید هستید؟
سبد خرید شما حاوی کتابی است که به صورت پیش خرید تعریف شده است.
با توجه به این که آن کتاب هنوز به چاپ نرسیده، در صورت افزودن کتاب فعلی به سبد خرید، امکان ارسال آن تا زمان موجود شدن کتاب پیش خرید شده میسر نیست.
اگر می خواهید کتاب فعلی را زودتر دریافت کنید ابتدا سفارش قبلی را نهایی کنید، سپس کتاب فعلی را در قالب یک سفارش دیگر ثبت کنید.
مشکلی با ارسال با تاخیر کتاب فعلی همراه با کتاب پیش خرید ندارم. کتابها همراه هم ارسال شود
اگر کتاب فعلی را پیش خرید کنید کتاب های قبلی سبد خرید ٠ روز دیگر همراه با این کتاب (پس از چاپ آن) برایتان ارسال خواهد شد.
اگر کتاب های سبد خرید را هم اکنون نیاز دارید ابتدا آنها را نهایی کنید، سپس کتاب فعلی را در قالب یک سفارش دیگر به صورت جدا پیش خرید کنید.
مشکلی با ارسال با تاخیر کتاب های موجود در سبد خرید همراه با کتاب پیش خرید فعلی ندارم. کتابها همراه هم ارسال شود