برنامه نویسی

مورد 39: حاشیه نویسی را به استانداردهای نامگذاری ترجیح دهید

مشکلات استانداردهای نامگذاری:

اشتباهات تایپی:

  • خرابی‌های بی‌صدا به دلیل نام‌های نادرست (مانند tsetSafetyOverride به جای testSafetyOverride).

سوء استفاده:

  • هیچ راهی برای تضمین استفاده از نام‌ها فقط در عناصر مناسب وجود ندارد (مثلاً نامگذاری یک کلاس TestSafetyMechanisms).

ارتباط پارامتر:
مشکل در مرتبط کردن پارامترها با عناصر برنامه (مثلاً کدگذاری انواع استثنا در نام روش‌های آزمایش).

راه حل با حاشیه نویسی:
مثال حاشیه نویسی: ایجاد حاشیه نویسی تست برای روش های تست.

متا حاشیه نویسی:
– @Retention(RetentionPolicy.RUNTIME): یادداشت ها را در زمان اجرا نگه دارید.
– @Target(ElementType.METHOD): حاشیه نویسی فقط در روش ها مجاز است.

توضیحات تصویر

استفاده عملی:

  • حاشیه نویسی Test روش های استاتیک بدون پارامتر را برای تست های خودکار که در صورت ایجاد استثنا با شکست مواجه می شوند، علامت گذاری می کند.
  • مثال: کلاس نمونه با روش‌هایی که به عنوان تست مشروح شده‌اند (بعضی معتبر، برخی نامعتبر).

توضیحات تصویر

ابزار تست ساده:

  • Test Runner: روش های حاشیه نویسی شده با Test را به صورت بازتابی اجرا می کند.
  • از Method.invoke و isAnnotationPresent برای شناسایی و اجرای روش های حاشیه نویسی استفاده می کند.
  • موارد استثنایی را که با روش های آزمایشی پرتاب شده اند را می گیرد و گزارش می دهد.

توضیحات تصویر

حاشیه نویسی با پارامترها:

  • تست با استثناها: ایجاد حاشیه نویسی ExceptionTest برای تست هایی که در صورت ایجاد یک استثنا خاص، موفق می شوند.
  • نوع پارامتر: کلاس Throwable> را گسترش می دهد تا نوع استثنا مورد انتظار را مشخص کند.

توضیحات تصویر

توضیحات تصویر

اصلاح دونده تست:

  • پشتیبانی از ExceptionTest را اضافه می کند.
  • بررسی می کند که آیا استثنای پرتاب شده از نوع صحیح است یا خیر.

توضیحات تصویر

یادداشت های تکراری:

  • استفاده از آرایه ها:
  • تغییر پارامتر ExceptionTest به آرایه کلاس.

توضیحات تصویر

توضیحات تصویر

یادداشت @قابل تکرار:
به شما امکان می دهد یک عنصر را چندین بار با حاشیه نویسی یکسان حاشیه نویسی کنید.
مثال: @Repeatable در حاشیه نویسی ExceptionTest.

پردازش حاشیه نویسی قابل تکرار:

  • مراقبت در پردازش:
  • استفاده از getAnnotationsByType برای دسترسی به یادداشت های تکراری و غیر تکراری.
  • بررسی هر دو نوع حاشیه نویسی (فردی و ظرفی).

نتیجه:
مزایای یادداشت ها:

  • برتری حاشیه نویسی بر استانداردهای نامگذاری برای ارائه اطلاعات اضافی به کد منبع.
  • تشویق به استفاده از حاشیه نویسی های از پیش تعریف شده و ارائه شده توسط ابزار.

اهمیت نکات:
برای برنامه نویسان:

  • برنامه نویسان باید از حاشیه نویسی های از پیش تعریف شده ارائه شده توسط IDE ها یا ابزارهای تجزیه و تحلیل استاتیک برای بهبود کیفیت اطلاعات تشخیصی استفاده کنند.
  • این خلاصه نکات اصلی مورد بحث در گزیده ای را در مورد تکامل استفاده از حاشیه نویسی برای جایگزینی استانداردهای نامگذاری سنتی، پرداختن به مزایای آنها و ارائه مثال های عملی و پیشنهادات اجرایی برجسته می کند.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا