مدیریت خطا
بخشی از دوره Go
در این دوره بیش از یکبار if err != nil را تایپ کردهاید بیآنکه بایستید و بپرسید err اصلاً چیست و از کجا میآید. توابع مدام و به شکلهای عادی و قابل انتظار شکست میخورند: فایلی که فراخواننده خواسته روی دیسک نیست، عددی که داده از محدوده بیرون است، مخرج یک تقسیم صفر است.
در درس گذشته با رابطها (interface) آشنا شدید، فهرستی از امضای متدها که هر نوعی فقط با داشتن متدهای درست برآوردهشان میکند، بیآنکه هیچ اعلانی این دو را به هم وصل کند. error سادهترین نمونه ممکن همین ایده است که مستقیم در خود زبان ساخته شده:
میخواهی Go مدیریت خطا را در یک محیط واقعی یاد بگیری؟
روی دکمه زیر بزن تا یک ماشین لینوکس با Go آماده دریافت کنی و مدیریت خطا را بهصورت عملی با یک مربی هوشمند که کدت را میشناسد تمرین کنی.
شروع این درسمدیریت خطاچه چیزهایی یاد میگیری
- Error interface
- Fmt.Errorf with %w
- Errors.Is
- Errors.As
- Custom error types
- Panic vs error
- Wrapping context into errors
