نام کتاب
Learn Concurrent Programming with Go

James Cutajar

Paperback329 Pages
PublisherManning
Edition1
LanguageEnglish
Year2024
ISBN9781633438385
1K
A4661
انتخاب نوع چاپ:
جلد سخت
582,000ت
0
جلد نرم
522,000ت
0
طلق پاپکو و فنر
532,000ت
0
مجموع:
0تومان
کیفیت متن:اورجینال انتشارات
قطع:B5
رنگ صفحات:دارای متن و کادر رنگی
پشتیبانی در روزهای تعطیل!
ارسال به سراسر کشور

#Concurrency

#Go

#Concurrent_Programming

توضیحات

همزمانی نباید گیج‌کننده باشد.


شروع به نوشتن کدی همزمان کنید که عملکرد را بهبود می‌دهد، قابلیت مقیاس‌پذیری دارد تا حجم بالای داده را پردازش کند، و از توان سخت‌افزارهای چندپردازنده‌ای مدرن به‌خوبی بهره می‌برد.

تعداد زیادی از توسعه‌دهندگان تصور می‌کنند برنامه‌نویسی همزمان کاری بسیار دشوار است.


کتاب «یادگیری برنامه‌نویسی همزمان با Go» آمده تا خلاف این را ثابت کند!


این کتاب با استفاده از ابزارهای ساده و قابل درک زبان Go، مفاهیم و تکنیک‌های برنامه‌نویسی همزمان را آموزش می‌دهد و گام‌به‌گام شما را با بهترین شیوه‌های نوشتن کدهای مؤثر همزمان آشنا می‌سازد.

تکنیک‌هایی که در این کتاب می‌آموزید، قابلیت انتقال و استفاده در زبان‌های برنامه‌نویسی دیگر را نیز دارند.


در «یادگیری برنامه‌نویسی همزمان با Go» می‌آموزید:

پیاده‌سازی همزمانی مؤثر برای تولید نرم‌افزاری پاسخ‌گوتر، سریع‌تر و مقیاس‌پذیرتر

اجتناب از مشکلات رایج همزمانی مانند بن‌بست (Deadlock) و شرایط رقابتی (Race Condition)

مدیریت همزمانی با استفاده از goroutine‌ها، mutex‌ها، قفل‌های خواننده-نویسنده و سایر ابزارها

شناسایی الگوهای رایج همزمانی مانند خطوط پردازش (Pipelining)، تجمع کارگرها (Worker Pools) و ارسال پیام (Message Passing)

درک مزایا، محدودیت‌ها و ویژگی‌های محاسبات موازی (Parallel Computing)

ارتقای مهارت کدنویسی در Go با موضوعات پیشرفته در زمینه چندریسمانی (Multithreading)

برنامه‌نویسی همزمان این امکان را فراهم می‌سازد تا چند وظیفه به‌طور هم‌زمان اجرا و با یکدیگر تعامل داشته باشند؛ که این امر منجر به بهبود عملکرد برنامه و کاهش زمان انتظار کاربر می‌شود.

در این کتاب، اصول عمومی همزمانی را خواهید آموخت و یاد می‌گیرید چطور از آن‌ها برای افزایش سرعت و کارایی در برنامه‌های Go استفاده کنید.

جیمز کوتاجار (James Cutajar) نویسنده‌ی کتاب، از مدل‌سازی ساده همزمانی آغاز می‌کند، تفاوت میان ارسال پیام و اشتراک‌گذاری حافظه را توضیح می‌دهد، و در ادامه به موضوعات پیشرفته‌ای همچون متغیرهای اتمیک (Atomic Variables) و فوتکس‌ها (Futexes) می‌پردازد.


درباره‌ی تکنولوژی

شما می‌توانید عملکرد و پاسخ‌گویی تقریباً هر نرم‌افزاری را با افزودن همزمانی به کد آن بهبود دهید. این کتاب راهنمای شما برای این کار است!

از مفاهیم پایه شروع می‌کند و به‌صورت گام‌به‌گام مهارت‌های لازم را در بستر موقعیت‌های واقعی توسعه نرم‌افزار آموزش می‌دهد.

نویسنده با زبانی ساده و با استفاده از امکانات قدرتمند زبان Go، هر مفهوم را به‌وضوح شرح می‌دهد.

درباره‌ی کتاب

یادگیری برنامه‌نویسی همزمان با Go یک معرفی کاربردی و عملی برای ساخت نرم‌افزارهای مبتنی بر سیستم‌های چندپردازشی مدرن است.

در این کتاب می‌آموزید چگونه وظایف بزرگ را به بخش‌های مستقل تقسیم کنید تا به‌صورت هم‌زمان اجرا شوند.

همچنین خواهید آموخت که چگونه با استفاده از قفل‌های خواننده-نویسنده، سموفورها (Semaphores)، ارسال پیام و اشتراک‌گذاری حافظه الگوهای رایج همزمانی را در Go پیاده‌سازی کنید.

مهارت‌هایی که از این کتاب می‌آموزید به‌راحتی قابل انتقال به زبان‌های دیگر نیز هستند.


مطالب کلیدی کتاب

جلوگیری از بن‌بست‌ها و شرایط رقابتی

ویژگی‌های همزمانی در Go مانند goroutine، mutex، channel و غیره

الگوهای همزمانی مانند pipelining و worker pool



Concurrency doesn’t need to be confusing. Start writing concurrent code that improves performance, scales up to handle large volumes of data, and takes full advantage of modern multi-processor hardware.


Too many developers think concurrency is extremely challenging. Learn Concurrent Programming with Go is here to prove them wrong! This book uses the easy-to-grasp concurrency tools of the Go language to demonstrate principles and techniques, steadily teaching you the best practices of effective concurrency. Techniques learned in this book can be applied to other languages.


In Learn Concurrent Programming with Go you will learn how to:


  • Implement effective concurrency for more responsive, higher performing, scalable software
  • Avoid common concurrency problems such as deadlocks and race conditions
  • Manage concurrency using goroutines, mutexes, readers-writer locks, and more
  • Identify concurrency patterns such as pipelining, worker pools, and message passing
  • Discover advantages, limits, and properties of parallel computing
  • Improve your Go coding skills with advanced multithreading topics


Concurrent programming allows multiple tasks to execute and interact simultaneously, speeding up performance and reducing user wait time. In Learn Concurrent Programming with Go, you’ll discover universal principles of concurrency, along with how to use them for a performance boost in your Go applications. Expert author James Cutajar starts with the basics of modeling concurrency in your programs, demonstrates differences between message passing and memory sharing, and even introduces advanced topics such as atomic variables and futexes.


About the technology

You can improve almost any application’s performance and responsiveness by introducing concurrency into the codebase. This book will show you how! It starts with the basics of concurrent programming and builds your skills step by step by exploring scenarios you’ll face every day as a developer. Author James Cutajar explains each aspect of concurrency in plain language using the intuitive features baked into the Go language.


About the book

Learn Concurrent Programming with Go provides a practical, hands-on introduction to creating software for modern multiprocessor systems. In it, you’ll learn how to divide larger programming tasks into independent parts that can run simultaneously. You’ll use the Go language to implement common concurrency patterns by utilizing readers-writer locks, semaphores, message passing, and memory sharing. The skills you learn will easily transfer to other languages.


What's inside

  • Prevent deadlocks and race conditions
  • Go concurrency features like goroutines, mutexes, channels, and more
  • Concurrency patterns including pipelining and worker pools


About the reader

For programmers with basic knowledge of Go or another C-style language. No experience in concurrent programming required.


Table of Contents

PART 1 FOUNDATIONS

1 Stepping into concurrent programming

2 Dealing with threads

3 Thread communication using memory sharing

4 Synchronization with mutexes

5 Condition variables and semaphores

6 Synchronizing with waitgroups and barriers

PART 2 MESSAGE PASSING

7 Communication using message passing

8 Selecting channels

9 Programming with channels

PART 3 MORE CONCURRENCY

10 Concurrency patterns

11 Avoiding deadlocks

12 Atomics, spin locks, and futexes


About the Author

James Cutajar has been programming for more than 20 years. He’s an open source contributor, blogger, tech evangelist, Udemy instructor, and author.

دیدگاه خود را بنویسید
نظرات کاربران (0 دیدگاه)
نظری وجود ندارد.
کتاب های مشابه
GO
1,261
Domain-Driven Design with Golang
426,000 تومان
GO
1,099
Go Programming - From Beginner to Professional
1,068,000 تومان
GO
1,010
Go in Practice
506,000 تومان
GO
1,205
Ultimate Go Notebook
548,000 تومان
GO
1,488
Learn Data Structures and Algorithms with Golang
529,000 تومان
GO
1,110
Learning Go Programming
534,000 تومان
GO
2,505
Learning Go
704,000 تومان
DevOps
2,167
Go for DevOps
1,018,000 تومان
GO
1,438
Functional Programming in Go
433,000 تومان
GO
760
Effective Go Recipes
456,000 تومان
قیمت
منصفانه
ارسال به
سراسر کشور
تضمین
کیفیت
پشتیبانی در
روزهای تعطیل
خرید امن
و آسان
آرشیو بزرگ
کتاب‌های تخصصی
هـر روز با بهتــرین و جــدیــدتـرین
کتاب های روز دنیا با ما همراه باشید
آدرس
پشتیبانی
مدیریت
ساعات پاسخگویی
درباره اسکای بوک
دسترسی های سریع
  • راهنمای خرید
  • راهنمای ارسال
  • سوالات متداول
  • قوانین و مقررات
  • وبلاگ
  • درباره ما
چاپ دیجیتال اسکای بوک. 2024-2022 ©