TGViewer
Go Casts | Systems & Agents 🚀 Go Casts | Systems & Agents 🚀 @gocasts · 10.2K subscribers
Post #92 944
Go Casts | Systems & Agents 🚀 سوال بعدی این بود که تو پروژه هامون چه موقع باید یه چالشی رو داخل پروژه حل کنیم و به پروژه complexity اضافه کنیم (مثل cache کردن) و چه موقع باید از ابزارهای خارجی استفاده کنیم (مثل redis) و پروژه هامون رو بهشون وابسته کنیم؟ بیل پاسخ داد که این موضوع خیلی…
سوال بعدی این بود که یادگیری concurrency تو گولنگ کار ساده ای نیست، هم به این دلیل که نسبت به زبان های رایج دیگه شیوه متفاوتی داره و هم اینکه در پروژه های تیپیکال هم خود کتابخونه و پکیج هایی که استفاده میکنیم این موضوع رو هندل میکنن و برنامه نویس کمتر میتونه خودش با concurrency سر و کله بزنه، برای اینکه concurrency رو در حد production بتونیم یادبگیریم باید چیکار کنیم؟

بیل پاسخ داد که اول باید مطمئن بشید که concurrency برای رفع مساله ای که پیش روتونه لازمه. مفهوم concurrency یعنی out of order execution، یعنی شما چند تا کار رو میخوای انجام بدی و مهم نیست ترتیب اجراشون چی باشه. این میشه concurrency. شما باید به دنبال چالش هایی باشی که out of order execution لازم داشته باشن، مثل همون سرویس distributed chat. یا مثلا من تو تمریناتم یه مثال barber shop دارم که برای آموزش concurrency ازش استفاده میکنم.
من سعی میکنم چالش رو بصورت single thread حل کنم که به اندازه کافی سخت خواهد بود، بعد اگر تونستم از مزیت concurrency بهره ببرم کد رو refactor میکنم. کلا multi thread programming خیلی سخته و من نمیگم که گولنگ اونو ساده کرده، من میگم گولنگ به ما ابزار میده، اگه ازش درست استفاده کنیم، به ما کمک میکنه، اگه درست استفاده نکنیم به پروژه مون complexity اضافه کردیم.
اتفاقی که خیلی میفتاد و تو خیلی از کدها همه جا از channel استفاده میشد و تو ریفکتور میدیدی که حذفش میکردن! اتفاقی که ممکنه برای جنریک هم بیفته

فکر کنم این باشه
https://github.com/ardanlabs/gotraining/blob/master/topics/go/algorithms/fun/barber/shop/shop.go

#bill_kennedy

@gocasts
GitHub gotraining/topics/go/algorithms/fun/barber/shop/shop.go at master · ardanlabs/gotraining Go Training Class Material : . Contribute to ardanlabs/gotraining development by creating an account on GitHub.
  • ❤ 1
  • 👍 1
More from @gocasts
  1. Oct 11, 2026روحت شاد آقای چاپلین. باورم نمیشه که عصر جدید داره برامون تکرار میشه! انگار خط تولید «عصر…
  2. Oct 9, 2026با یه پارادوکسی مواجه هستیم که خیلی مهمه درست درکش کنیم. وقتی در مورد کارایی که با ایجنت‌ه…
  3. Oct 4, 2026از دیروز چند آیتم ظاهری در GoCasts به‌روز شده 🚀 اگه دقت کرده باشید، لوگو، اسم کانال و بیو…
  4. Oct 1, 2026اینم از عمو باب که تسلیم شد! کاری ندارم که با ایشون هم نظر بودید و هستید یا نه. به دور از…
  5. Oct 1, 2026ترکیب Sonnet 5.5 و Opus 5.5 این روزا خیلی خوب جواب میده. الگویی که برای من جواب داده اینه:…
  6. Sep 24, 2026این بهترین تجربه‌ای بود که تا حالا با یه agent داشتم. دیشب با تاخیر چند ساعته ایمیل هاستین…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →