Popis: |
Yazılım tasarım kalıpları, nesne yönelimli sistemlerin modellenmesinde yaygın olarak karşılaşılan problemler için sunulmuş, tasarımı iyileştirerek yeniden kullanılabilirliğini arttıran çözüm önerileridir. Karşıt kalıplar Ve kod kusurları ise tasarım kalıplarının zıttı olan önerilerdir. Bunlar yazılım hatası değildir: Programın doğru çalışmasını engellemez ve hatalı kod olarak nitelendirilemezler. Bunun yerine yazılımın geliştirilme sürecini yavaşlatan veya gelecekte hatalar ile karşılaşma olasılığını arttıran tasarım zayıflıklarının işaretçileridirler. Bakım aşamasının maliyetini de arttırırlar. Karşıt kalıplar, geliştiriciler bir tasarım kalıbı uyguladıklarını düşünseler bile, sık karşılaşılan problemler için zayıf çözüm önerileridirler. Kod kusurları ise bir yazılımın kaynak kodunda büyük olasılıkla daha derin sorunlara işaret eden semptomlardır . Poltergeist, bir yazılım geliştirme karşıt kalıbıdır. Bu kalıbı ortaya koyan sınıfların sistemde sınırlı rolü bulunup örneklerinin yaşam süresi sınırlıdır. Bu karşıt kalıp sisteme gereksiz soyutlamalar, karmaşıklık ve bakım zorluğu getirir. Tez çalışmasının amacı bir sınıfın bir Poltergeist örneği olup olmadığının belirlenebilmesi için yazılım ölçütü tabanlı bir yaklaşım ortaya koymaktır. In software engineering, Patterns are techniques which are used to improve the design and enhance the reusability of a solution to commonly occurring problem design and they are general solutions which are used for common problems in object-oriented systems.Antipatterns and code smells are opposites of design patterns. Those are not bugs: They are not technically incorrect coding and they do not currently prevent the program from functioning.Instead, they indicate weaknesses in design that may be slowing down development or increasing the risk of bugs or failures in the future. They also make software maintenance more costly. The antipattern concept is introduced as poor solutions to solve recurring problems, even though developers think that they practice a design pattern. Code smells, also called also as bad smells, refer to any symptom in the source code of a program that possibly indicates a deeper problem. Poltergeist antipattern is one of the software development antipatterns. Poltergeists are classes with limited accountability and roles to be active in the system; thus, their efficient life period is quite short. Poltergeists are messy software design, make needless abstractions; they are overmuch complex, hard to know, and hard to look after. Our objective is to propose a metric based approach to determine whether a class is poltergeist or not. 42 |