کد تکراری

دانشنامه عمومی

کد تکراری یک اصطلاح برنامه نویسی برای بخشی از کد منبع است که بیش از یک بار می آید، چه در درون یک برنامه و چه در برنامه های مختلفی که توسط یک موجودیت نگه داری می شود. به صورت کلی، کد تکراری به دلایلی نامطلوب به حساب می آید. [ ۱] معمولاً حداقل مقدار خط کدی نیاز است تا آن را به جای آنکه تشابه تصادفی دو قسمت بدانیم، تکراری در نظر بگیریم. به این بخش های تکراری کد، کد کلون یا کلون گفته می شود و به فرایند خودکار پیدا کردن تکرارها در کد پیدا کردن کلون می گویند.
دو بخش از کد ممکن است تکراری باشند بدون اینکه همه کاراکترهای آن ها برابر باشد، مثلاً ممکن است وقتی فاصله ها و کامنت ها در نظر گرفته نشوند با هم برابر باشند یا اگر آن ها را تحلیل واژگانی کنیم برابر شوند یا واژه به واژه معادل باشند و در بخش هایی تنوع داشته باشند. حتی بخش هایی از کد که کارکرد یکسان دارند می توانند به عنوان کد تکراری در نظر گرفته شوند.
برخی از راه های تولید کد تکراری عبارت است از:
• برنامه نویسی با کپی و الصاق، که ممکن است به خاطر دستبرد فکری به سایر کد انجام شده باشد.
• برداشتن یک قطعه از کد و کپی کردن آن به خاطر آنکه کار می کند. در اکثر موارد این کار نیاز به تغییر جزئی در کد کپی شده دارد مثل تغییر نام متغیرها با اضافه/کم کردن کد. زبان های برنامه نویسی تقریباً در همهٔ موارد این امکان را می دهند که یک کپی از کد از مکان های مختلفی فراخوانی شوند تا بتواند به اهداف متفاوتی پاسخ دهد و در عین حال نیازی به به وجود آوردن یک کپی دیگر از کد نباشد اما با این حال برنامه نویس به دلایل زیر ممکن است کد را کپی کند:
• با امکانات زبان به اندازهٔ کافی آشنا نباشند.
• به اندازهٔ کافی زمان برای کد زدن خوب نداشته باشند.
• به افزایش خراب شدن فعال نرم افزار اهمیتی ندهند.
همچنین ممکن است عملکردی که برنامه نویس می خواهد پیاده سازی کند بسیار مشابه با عملکرد تکه ای از کد باشد که به صورت مستقل در جای دیگری از کد وجود دارد. مطالعات نشان می دهد که این قسمت های مستقل کد که دوباره نوشته می شوند معمولاً از نظر دستوری مشابه هم نیستند. [ ۲]
کدهایی که به صورت خودکار تولید می شوند که در آن ها کد تکراری ممکن است برای افزایش سرعت یا راحتی توسعه استفاده شوند هم ممکن است دلیل دیگری برای تکرار باشند. توجه کنید که در اینجا تولیدکننده در کد منبع خود قسمت های تکراری ندارد و صرفاً ممکن است در کدی که تولید می کند قسمت های تکراری وجود داشته باشند.
عکس کد تکراری
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلف

پیشنهاد کاربران