فصل ۳.
پیکربندی و مدیریت خطا (Configuration and Error Handling)
در این بخش از کتاب، قصد داریم به برخی از بهبود ساختار و نگهداری کد بپردازیم. ما عملکرد جدید زیادی به برنامه خود اضافه نخواهیم کرد، بلکه بر بهبودهایی تمرکز خواهیم کرد که توسعه و مدیریت آن را آسانتر میکند.
شما یاد خواهید گرفت که چگونه:
- تنظیمات پیکربندی برنامه خود را به روشی آسان و ایدئوماتیک با استفاده از پرچمهای خط فرمان (Command-line Flags) در زمان اجرا منتقل کنید.
- یک لاگر سفارشی (Custom Logger) برای نوشتن ورودیهای لاگ ساختاریافته و سطحبندی شده ایجاد کنید و از آن در سراسر برنامه خود استفاده کنید.
- وابستگیها (Dependencies) را به روشی که قابل توسعه، ایمن از نظر نوع و در هنگام نوشتن تستها مزاحمتی ایجاد نمیکند، در اختیار هندلرهای خود قرار دهید.
- مدیریت خطای متمرکز (Centralized Error Handling) را پیادهسازی کنید تا نیازی به تکرار خود در هنگام نوشتن کد نداشته باشید.
واژهنامه اصطلاحات فنی
| اصطلاح فارسی | معادل انگلیسی | توضیح |
|---|---|---|
| پیکربندی | Configuration | تنظیمات و پارامترهایی که رفتار برنامه را کنترل میکنند |
| مدیریت خطا | Error Handling | مکانیزمهای کنترل و پاسخ به خطاها در برنامه |
| پرچمهای خط فرمان | Command-line Flags | پارامترهایی که هنگام اجرای برنامه از طریق خط فرمان به آن منتقل میشوند |
| لاگر سفارشی | Custom Logger | سیستم ثبت رویدادها که برای نیازهای خاص برنامه سفارشیسازی شده است |
| لاگ ساختاریافته | Structured Logging | ثبت رویدادها در قالبی ساختاریافته که امکان پردازش و تحلیل آسانتر را فراهم میکند |
| وابستگیها | Dependencies | اجزا و سرویسهایی که یک بخش از برنامه برای عملکرد صحیح به آنها نیاز دارد |
| تزریق وابستگی | Dependency Injection | الگوی طراحی که در آن وابستگیهای یک شیء از بیرون به آن تزریق میشوند |
| مدیریت خطای متمرکز | Centralized Error Handling | رویکردی که در آن مدیریت خطاها در یک مکان مرکزی انجام میشود |
| ایمن از نظر نوع | Type-safe | ویژگی که تضمین میکند عملیاتهای مرتبط با نوع داده در زمان کامپایل صحیح هستند |
| قابل توسعه | Scalable | قابلیت گسترش و تغییر سیستم بدون نیاز به تغییرات اساسی در ساختار آن |