قصد دارم در پروژه 3 لایه خودم از try , catch استفاده کنم اما گیج شدم که در کدام لایه از برنامه خودم از این مورد استفاده کنم؟ مثلا آیا فقط در ui پروژه و یا در قسمت ارتباط با پایگاه داده ، رعایت مبانی کدنویسی تمیز برام مهمه ، لطفا راهنمایی کنید.
در پایین ترین لایه باید استثنا تولید کنید و در بالاترین لایه ها اون ها رو در catch دریافت کنید تا بتونین خطا رو مدیریت کنید.
در ارتباط با پایگاه داده اگر خطایی وجود داشته باشه خود فریم ورک یا orm براتون استثنا تولید میکنه و باید اونها رو در بالاترین لایه دریافت کنید و مدیریت کنید، مثلا به کاربر پیامی بدین و ...
پس درکل: در پایین ترین لایه ها استثنا تولید میشه و در بالاترین لایه ها اون استثناها رو با استفاده از catch مدیریت میکنیم. به غیر از موارد خیلی خاص مثلا میخواهید در زیرلایه اگر خطایی رخ داد false, null, ... برگردونین و اون خطا به لایه بالاتر مربوط نیست و نباید لایه ی بالاتر اون رو مدیریت کنه.
در ضمن این رو اضافه کنم:
معماری سه لایه به خودی خود به درد اینکارها نمیخوره، شما باید لایه ی منطق رو بر روی یک سری ماژولی که خودتون مینویسید پیاده کنید و این خطاها در ماژول ها استثنا تولید کنه و در لایه ی منطق مدیریت بشه و در لایه ی نمایشی به کاربر علت خطا و یا نحوه ی رفع اون رو توضیح بدین.
موفق باشید.
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)