کتاب Functional Programming in Golang (برنامهنویسی تابعی در Golang: از تکنیکهای کاربردی در Go برای بهبود تست پذیری، خوانایی و امنیت کد خود استفاده کنید.) یکی از منابع کاربردی و خلاصه برای یادگیری زبان برنامهنویسی Go است که علاوه بر نکات مقدماتی و ابتدایی این زبان، تکینیکها و اصول مهم آن را آموزش خواهد داد.
در ادامه مقدمهای از کتاب Functional Programming in Golang را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Functional Programming in Golang:
Go یک زبان برنامهنویسی چند پارادایم است. این بدان معناست که هم پارادایم شی گرا و هم پارادایم عملکردی رویکردهای کاملاً معتبری برای حل مسئله هستند.
در این کتاب به بررسی کاربردهای تکنیک های برنامهنویسی تابعی در Go میپردازیم. اما به جای اینکه صرفاً روی جنبه عملکردی متمرکز شویم، Go را برای آنچه که هست – چند پارادایم – در آغوش خواهیم گرفت. این بدان معنی است که ما تفاوت بین روش های کاربردی و شی گرا حل مسئله را برجسته میکنیم.
برای نوشتن کد Go که تست پذیرتر، خواناتر و قابل اعتمادتر باشد، به رویکردهای تابعی اول مانند توابع به عنوان شهروندان درجه یک، خلوص تابع، کریینگ و موارد دیگر نگاه خواهیم کرد. ما نه تنها نحوه نوشتن کد عملکردی را بررسی خواهیم کرد، بلکه مفاهیم عملکرد و محدودیت های Go را نیز بررسی خواهیم کرد.
هدف کتاب Functional Programming in Golang این است که خواننده را به برنامهنویسی کاربردی به عنوان یک الگوی معتبر که میتواند کد شما را بهبود بخشد، عادت کند، فرقی نمیکند که روی یک پروژه گرینفیلد کار میکنید یا پروژهای که قبلاً در پارادایم OO جا افتاده است.
برای خوانندگانی که با ژنریک های تازه معرفی شده در Go آشنا نیستند، این کتاب همچنین به عنوان نمونه ای از آنچه اکنون ممکن است که ژنریک ها بخشی از کتابخانه استاندارد هستند عمل میکند. در نهایت، ما همچنین کتابخانههایی را بررسی خواهیم کرد که میتوانند برای نوشتن کدهای عملکردی برای هر دو نسخه پیش ژنریک و پسژنیک Go استفاده شوند.
کتاب Functional Programming in Golang برای چه کسی است؟
اگر شما یک مهندس Go با پیشینه زبان های شی گرا سنتی مانند جاوا یا سی پلاس پلاس هستید و میخواهید دانش خود را در مورد برنامهنویسی تابعی گسترش دهید، این کتاب برای شما مناسب است.
هدف کتاب Functional Programming in Golang این است که به شما بیاموزد که چگونه مفاهیم برنامهنویسی تابعی میتوانند کد Go موجود شما را بهبود بخشند، و همچنین زمان انتخاب رویکرد عملکردی. در هر مرحله، مبادلات بین رویکردهای کاربردی و شی گرا را برجسته میکنیم تا ببینیم چگونه آنها مقایسه میشوند.
آنچه کتاب Functional Programming in Golang پوشش میدهد:
در فصل 1، معرفی برنامهنویسی تابعی، میخواهیم نگاهی پرنده به چیستی و چرایی برنامهنویسی کاربردی داشته باشیم. برای شروع، نگاهی کوتاه به تاریخچه و وضعیت معاصر متدولوژیهای برنامهنویسی تابعی خواهیم داشت. سپس نگاهی خواهیم داشت به اینکه چگونه برنامهنویسی کاربردی با برنامهنویسی شیگرا سنتیتر مقایسه میشود.
در فصل 2، برخورد با عملکردها به عنوان شهروندان درجه یک، دقیقاً به این خواهیم پرداخت که چرا توابع در زبانهایی که با آنها به عنوان شهروندان درجه یک رفتار میکنند قدرتمند هستند.
Go دارای عملکردهایی به عنوان شهروندان درجه یک خارج از جعبه است، به این معنی که ما این قابلیت را دریافت میکنیم. ما میخواهیم ببینیم که چگونه این به ما امکان میدهد ساختارهای تابع محور ایجاد کنیم که خوانایی و آزمایش پذیری کد ما را بهبود میبخشد.
در فصل 3، توابع مرتبه بالاتر، میخواهیم مفهوم ترکیب تابع را از طریق توابع مرتبه بالاتر بررسی کنیم. انواع مختلفی از مفاهیم جدید وجود دارد که در اینجا معرفی میشوند، مانند بسته شدن، کاربرد جزئی، و عملکرد عملکرد. ما نگاهی به چند مثال عملی و موارد استفاده در دنیای واقعی برای این موارد خواهیم داشت.
در فصل 4 کتاب Functional Programming in Golang، نوشتن کد قابل آزمایش با توابع خالص، به معنای خالص در نظر گرفتن یک زبان و یک تابع خواهیم بود. ما نگاهی به برخی از مبادلات بین خلوص تابع و ناخالصی خواهیم داشت و بررسی خواهیم کرد که چگونه توابع خالص به ما در نوشتن کد قابل آزمایش کمک میکنند.
در فصل 5، تغییر ناپذیری، به این میپردازیم که دقیقاً معنی تغییرناپذیر بودن چیست و چگونه زبان Go میتواند به حفظ تغییرناپذیری در سطح ساختار کمک کند.
برای درک این که چگونه این کار میکند، به نحوه مدیریت Go اشارهگرها و ارجاعها به اشیا، پیامدهای عملکرد و نحوه تصمیمگیری بین مبادلات اشارهگر-مرجع میپردازیم. ما همچنین به مفاهیم جمعآوری زباله، آزمایش واحد و برنامهنویسی کاربردی خالص خواهیم پرداخت.
در فصل 6 کتاب Functional Programming in Golang، سه دسته متداول توابع، ما قصد داریم به برخی از پیادهسازیهای عملی توابع که از مفاهیم برنامهنویسی تابعی تحت پوشش تا کنون استفاده میکنند، نگاه کنیم. ما توابع فیلتر، توابع نقشه و کاهشدهندهها را خواهیم ساخت.
در فصل 7، بازگشت، ما قصد داریم در مورد بازگشت صحبت کنیم. این موضوعی است که همه برنامه نویسان دیر یا زود با آن مواجه میشوند، زیرا منحصر به پارادایم عملکردی نیست.
هر زبانی که میتوانید فراخوانیهای تابع را در آن بیان کنید، به شما امکان میدهد توابعی را بیان کنید که ماهیت بازگشتی دارند. اما در زبانهای کاربردی، اینها در مرکز توجه قرار میگیرند. ما به پیامدهای این موضوع در Go نگاه خواهیم کرد.
در فصل هشتم کتاب Functional Programming in Golang، ترکیب تابع خواندنی با برنامهنویسی روان، روشهای مختلف برای زنجیرهبندی توابع در برنامهنویسی تابعی را بررسی میکنیم. هدف نهایی در اینجا نوشتن کدی است که خواندن آن آسانتر باشد و درهم و برهمی بصری کمتری ایجاد کند. ما سه راه برای دستیابی به این هدف را بررسی خواهیم کرد.
ابتدا نگاهی خواهیم داشت به این که چگونه میتوانیم از نام مستعار نوع برای پیوست کردن متدها به انواع کانتینر استفاده کنیم و به ما امکان میدهد توابع زنجیرهای را با نماد نقطه آشنا ایجاد کنیم. در مرحله بعد، ما به سبک برنامهنویسی به سبک ادامه گذر نگاه خواهیم کرد و مبادلات هر رویکرد را در نظر خواهیم گرفت.
در فصل نهم، الگوهای طراحی کاربردی، به سطح بالاتری از انتزاع خواهیم رفت. به جای صحبت در مورد عملکردها و عملیات فردی، به الگوهای طراحی نگاه خواهیم کرد. در حالی که ما به طور گسترده هر الگوی طراحی را توضیح نمیدهیم، نگاهی خواهیم داشت به اینکه چگونه الگوی شی گرا به دنیای عملکردی ترجمه میشود.
در فصل 10 کتاب Functional Programming in Golang، همزمانی و برنامهنویسی عملکردی، ما در نظر میگیریم که چگونه همزمانی در سراسر ما وجود دارد، چه در دنیای واقعی و چه در دنیای مجازی. در این فصل ما با بررسی همزمانی، موازی سازی و محاسبات توزیع شده شروع خواهیم کرد. در مرحله بعد، ما بر این تمرکز خواهیم کرد که چگونه مکانیسمهای همزمانی در Go میتوانند به ما در نوشتن کد عملکردی کمک کنند.
در فصل 11، کتابخانههای برنامهنویسی کاربردی، چندین کتابخانه را بررسی خواهیم کرد که میتوانند به ما در ساختن برنامهها در الگوی عملکردی کمک کنند. ما هم به کتابخانههای پیش ژنریک و هم به کتابخانههای پسا ژنریک نگاه خواهیم کرد.
سرفصلهای کتاب Functional Programming in Golang:
- Functional Programming in Go
- Contributors
- About the author
- About the reviewer
- Preface
- Part 1: Functional Programming Paradigm Essentials
- Chapter 1: Introducing Functional Programming
- Chapter 2: Treating Functions as First-Class Citizens
- Chapter 3: Higher-Order Functions
- Chapter 4: Writing Testable Code with Pure Functions
- Chapter 5: Immutability
- Part 2: Using Functional Programming Techniques
- Chapter 6: Three Common Categories of Functions
- Chapter 7: Recursion
- Chapter 8: Readable Function Composition with Fluent Programming
- Part 3: Design Patterns and Functional Programming Libraries
- Chapter 9: Functional Design Patterns
- Chapter 10: Concurrency and Functional Programming
- Chapter 11: Functional Programming Libraries
- Index
- Other Books You May Enjoy
فایل کتاب Functional Programming in Golang را میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.