برنامهنوسیی وظیفهای در .NET 4.0 & 4.5
ترجمه و تالیف: سید منصور عمرانی
تعداد صفحات: 670
انتشارات: پندار پارس
سال انتشار: اردیبهشت 1391
عرضه شده در بیست و پنجمین نمایشگاه کتاب تهران (1391)، سالن 16B دانشگاهی غرفهی 27، انتشرات پندار پارس.
توضیح مختصر کتاب:
برنامهنویسی چندنخی و موازی همواره یکی از زمینههای ترسناک دنیای برنامهنویسی بوده است. این کتاب شما را دقیقاً به قلب منبع ترس یعنی غار تاریک و دلهرهآور برنامهنویسی موازی در سکوی .NET میبرد و تمام اتاقها، دالانها، دخمهها و راههای این سرزمین پر رمز و راز را برای شما روشن میکند و ضمن برحذر داشتن شما از خطرات و تهدیدهای بالقوه، شما را به گنجها و ثروتهای پنهان این سرزمین رهنمون میکند.
بعد از خواندن این کتاب میتوانید مطمئن باشید چیزی در زمینهی برنامهنویسی چندنخی و موازی در .NET وجود ندارد که از آن مطلع نباشید. مهمترین ویژگی کتاب این است که بحث آن نظری نیست. علاوه بر این که دانش خود را با جدیدترین دستاورد .NET 4.0 و .NET 4.5 یعنی «برنامهنویسی غیرهمزمان» یا async programming به روز میکنید، کاربردهایی را یاد خواهید گرفت که میتوانید به طور عملی آنها را در برنامهها به کار ببرید و با به کار بستن تکنیکهای اجرای موازی، برنامههایی بسیار سریعتر و کاربرپسندتر بنویسید. در واقع بدون اغراق پس از خواندن این کتاب افق جدیدی پیش روی شما باز خواهد شد و میتوانید برنامههایی بنویسید که اجرایی بسیار نرم و روان داشته باشند و مهمتر از همه مقیاسپذیر باشند، به طوری که هر جایی و در هر سیستمی نصب شوند به طور خودکار از حداکثر توان پردازش سکوی سختافزار نیز بهره بگیرند.
برخی از مطالب کتاب:
- کلاس Thread و اصول برنامهنویسی چندنخی کلاسیک
- دستور lock و انواع ساختارهای هماهنگسازی (Monitor، WaitHandle، Mutex، Semaphore، Interlocked، EventWaitHandle، AutoResetEvent، ManualResetEvent، SemaphoreSlim، ManualResetEventSlIm، CountdownEvent، Barrier)
- راهاندازی کُند به صورت ایمن (Safe Lazy Initialization)
- انبار محلی نخ (Thread Local Storage) و انواع متن (CallContext، LogicalCallContext، ExecutionContext، SynchronizationContext)
- انواع تایمرها در .NET (تایمرهای چندنخی و تک نخی و تایمر چند رسانهای ویندوز)
- فراخوانی غیر همزمان نمایندهها ADI (Asynchronous Delegate Invokation)
- الگوی لغو مشارکتی (Cooperative Cancellation)
- کتابخانهی TPL (برنامهنویسی وظیفهای بر اساس Task، وظایف متوالی، TaskCompletionSource و ...)
- کلاس Parallel و حلقههای موازی (For/ForEach)
- فناوری PLINQ (پرس و جوهای LINQ موازی)
- کلکسیونهای همروند (Concurrent collections شامل ConcurrentStack، ConcurrentQueue، ConcurrentBag، BlockingCollcetion)
- الگوی برنامهنویسی غیر همزمان (APM) و بهرهوری در منابع با استفاده از متدهای BeginXXX/EndXXX
- الگوی غیر همزمان مبتنی بر رویداد (EAP) و شرح کامل کلاس BackgroundWorker
- الگوی غیر همزمان وظیفهای TAP
- پیشرفتهترین و سادهترین شکل برنامهنویسی موازی در .NET 4.5 بر اساس کلمات async/await
- روشهای مختلف دسترسی به المانهای واسط کاربر از سایر نخها
- COM و آپارتمانها
- دستورات SIMD و کتابخانههای خاص برنامهنویسی موازی MKL و IPP
محتویات DVD ضمیمه:
- کُدهای ضمیمهی کتاب شامل 176 مثال عملی
- اسناد مفید (مستندات برنامهنویسی وظیفهای و Dataflow نوشتهی استفن توب از مایکروسافت، جزئیات بهبودهای اعمال شده به کتابخانهی TPL در .NET 4.5، توابع غیر همزمان و تکرارگر در VB)
- لینکهای مفید در خصوص برنامهنویسی چندنخی و موازی
- لیست منابع و مراجع کتاب
- تعدای برنامهی مفید شامل:
- Microsoft Visual Studio Async CTP
- Parallel Extension Libraries Samples
- CPU-Z 1.6
- Process Monitor
- T-Monitor
- Oracle VM VirtualBox 4.1
- و 7 ساعت فیلم آموزشی از کارگاههای مایکروسافت در کنفرانس BUILD 2011 (اکتبر 2011) شامل:
- آیندهی زبانهای C# و VB (اندرس سلزبرگ: رهبر و معمار کامپایلرهای .NET)
- قابلیتهای جدید .NET 4.5 (جاشوا گودمن: مدیر تیمها و پروژههای برنامهنویسی در مایکروسافت)
- ساخت برنامههای موازی با استفاده از .NET و Visual Studio (استفن توب: برنامهنویس ارشد تیم برنامهنویسی موازی)
- تفکر غیر همزمان: بهترین رهیافتها برای کسب بهترین سرعت و کارایی (استفن توب)
- نگرش یک برنامهنویس .NET نسبت به برنامهنویسی در Windows 8 (کرزیسلوف کوالیا)
- استفاده از Windows RunTime در C# و VB (هری پیسرسون، جس کاپلان)
- بررسی سرعت و کارایی با استفاده از جعبه ابزار WPT (Windows Performance Toolkit) (مایکل میلراد)
لیست مراجع و منابع اصلی کتاب:
- Essential C# 4.0 از انتشارات Addison-Wesley نوشتهی مارک میکائلیس سال 2010
- Pro .NET 4.0 Parallel Programming in C# از انتشارات Wrox نوشتهی آدام فریمن سال 2010
- Accelerated C# 2010 از انتشارات Apress نوشتهی تری نَش سال 2010
- Pro C# 2010 and .NET 4.0 Platform از انتشارات Apress نوشتهی اندرو ترولسن سال 2010
- C# 4.0 The Complete Reference از انتشارات McGraw-Hill نوشتهی هربرت شیلدت سال 2010
- CLR via C# 3rd Edition از انتشارات مایکروسافت نوشتهی جفری ریچتر سال 2010
- C# 4.0 in a Nutshell از انتشارات OReilly نوشتهی جوزف و بن آلباهاری سال 2010
- Practical .NET 2 and C# 2 از انتشارات ParadoxalPress نوشتهی پاتریک اسماچیا سال 2006
- Professional Parallel Programming with C# 4.0 از انتشارات Wrox نوشتهی گاستون هیلار سال 2010
- Windows Internalls 5th Edition از انتشارات مایکروسافت نوشتهی مارک روزینویچ، دیوید سالامان سال 2009
- Essential COM از انتشارات Addison-Wesley نوشتهی دان باکس سال 1997
- Patterns of Parallel Programming in .NET (C#) از سایت مایکروسافت نوشتهی استفن توب
- Task-Based Asynchronous Pattern از سایت مایکروسافت نوشتهی استفن توب
قابل سفارش از سايت انتشارات پندار پارس www.pendarepars.com