بازسازی خودکار کد زبان اصلی نرمافزار برای رفع پادالگوهای زبانشناختی مربوط به توابع
نویسندگان
1 دانشگاه شهید بهشتی
2 دانشگاه ایلام
3 دانشگاه آزاد اسلامی
doi
10.22034/csj.2025.214934چکیده
امروزه معیارهای فراوانی برای سنجش کیفیت نرمافزار وجود دارد که هر کدام از جهتی به سنجش آن میپردازند. وجود یا عدم وجود پادالگوها میتواند معیاری برای سنجش کیفیت کدِ زبان اصلی نرمافزار باشد. برخی پادالگوهای شناخته شده با توجه به تاثیرشان بر روی کارایی، اطمینانپذیری و سایر معیارهای مرتبط مطالعه میشوند. یکی از این معیارها، خوانایی کدِ زبان اصلی نرمافزار است. سازنده یا سازندگان یک برنامه تنها کسانی نیستند که به توسعه آن میپردازند. به همین دلیل رعایت نکاتی که فهمیدن چگونگی کارکرد برنامه را برای توسعهدهندگان احتمالی سادهتر میکند ضروری است. این مقاله به بررسی پادالگوهای مرتبط با نامگذاری توابع و ارائه راهحل برای رفع خودکار آنها میپردازد. به پادالگوهایی که مربوط به نامگذاری توابع، متغیرها و سایر اعضا در کدِ زبان اصلی نرمافزار و همچنین مستندات آن هستند پادالگوهای زبانشناختی گفته میشود. در این مقاله روشی برای تشخیص و رفع خودکار پادالگوهای زبانشناختی به کمک درخت نحو انتزاعی ارائه میشود. سپس روش ارائه شده بر روی کدِ زبان اصلی چهار نرمافزار متنباز که در مجموع بیش از ۱۵۰۰۰۰ خط کد دارند، آزمایش میشود. در نتیجه این آزمایشها ۵۱ پادالگو به درستی شناسایی و اصلاح میشوند. اصلاح شدن به گونهای است که حدود ۵۰ خط کد به مجموعه کدها اضافه میکند. مزیت این پژوهش نسبت به پژوهشهای مشابه، ارائه روشی برای رفع پادالگوها و اعمال تغییرات در کدِ زبان اصلی است. زیرا بسیاری از پژوهشها تنها به تشخیص پادالگوهای زبانشناختی اکتفا کردهاند. همچنین، تاثیری که این بازسازی بر روی تعداد خطوط کدِ زبان اصلی میگذارد نیز بررسی شده است.