TGViewer
Go Casts | Systems & Agents 🚀 Go Casts | Systems & Agents 🚀 @gocasts · 9.91K subscribers
Post #357 4.7K
برنامه هایی که با گولنگ نوشته میشن یکی از شایع ترین خطاهایی که در runtime و روی production باهاش مواجه میشن خطای panic از جنس nil pointer هست. که میتونه منجر به از کار افتادن برنامه هم بشه، هر چند راه هایی وجود داره که شما بتونید panic رو recover کنید، اما اصولا جواب بهتر اینه که سعی کنید قسمت هایی از کد که باعث ایجاد این دسته از panic ها میشن رو شناسایی کنید و مشکل رو از ریشه حل کنید.


panic: runtime error: invalid memory address or nil pointer dereference

شرکت Uber اخیر مقاله ای منتشر کرده که در این مورد توضیحات خوبی رو ارائه داده، دوست داشتید مطالعه کنید.

NilAway: Practical Nil Panic Detection for Go

یه پروژه open-source هم در همین رابطه منشتر کرده که من روی یکی از پروژه هام اجراش کردم و کلی statement پیدا کرد که این مشکل رو داره احتمالا.

خودش هشدار داده که پروژه در دست توسعه ست و ممکنه خطای false positive داشته باشید، ولی بد نیست به پروسه ci اضافه بشه یا حداقل لوکال چک کنید.

نصب و اجراشم ساده ست.


go install go.uber.org/nilaway/cmd/nilaway@latest
nilaway ./...



@gocasts

#golang
  • 👍 40
  • 🔥 6
More from @gocasts
  1. Oct 9, 2026با یه پارادوکسی مواجه هستیم که خیلی مهمه درست درکش کنیم. وقتی در مورد کارایی که با ایجنت‌ه…
  2. Oct 4, 2026از دیروز چند آیتم ظاهری در GoCasts به‌روز شده 🚀 اگه دقت کرده باشید، لوگو، اسم کانال و بیو…
  3. Oct 1, 2026اینم از عمو باب که تسلیم شد! کاری ندارم که با ایشون هم نظر بودید و هستید یا نه. به دور از…
  4. Oct 1, 2026ترکیب Sonnet 5.5 و Opus 5.5 این روزا خیلی خوب جواب میده. الگویی که برای من جواب داده اینه:…
  5. Sep 24, 2026این بهترین تجربه‌ای بود که تا حالا با یه agent داشتم. دیشب با تاخیر چند ساعته ایمیل هاستین…
  6. Sep 23, 2026بچه ها اگه تجربه software factory جدی داشتید توی شرکت و سازمان و محصول تون، بهم فیدبک بدید…
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 →