Zpo-5-wyk-Slajd50
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Objawy przykrego zapachu
Jak mówi definicja, obecność przykrego zapachu wskazuje na potrzebę refaktoryzacji. Jednak jak stwierdzić, czy przykry zapach faktycznie występuje? Identyfikacja wymienionych na poprzednich slajdach naruszeń zasad projektowych nie jest łatwa, ponieważ ich występowanie nie jest związane prostą zależnością przyczynowo-skutkową z jednym objawem. Przeciwnie – ten sam przykry zapach może przejawiać się na różne sposoby, które niekoniecznie występują wspólnie.
Dlatego wyróżniono sześć odrębnych źródeł, które mogą dostarczać danych o obecności (lub jej wykluczeniu) danego przykrego zapachu. Są to:
- intuicja programisty, która jest niemierzalna i trudna do zdefiniowania, a jednak pełni bardzo ważną rolę w identyfikacji złych praktyk obiektowych;
- metryki, które są podstawowym mechanizmem ilościowej oceny jakości projektu. Metryki dostarczają liczbowej i łatwej do zinterpretowania informacji o wielu aspektach jakości projektu;
- analiza Abstrakcyjnego Drzewa Składniowego (AST), które jest graficzną reprezentacją rozbioru gramatycznego programu. Obecność lub brak określonych elementów w drzewie AST wskazuje na obecność lub wyklucza obecność niektórych zapachów;
- informacja o innych zapachach pozwala wykorzystać znane już fakty o innych przykrych zapachach;
- analiza dynamiczna, która pozwala określić atrybuty programu nie dające się zidentyfikować wyłącznie poprzez analizę statyczną. Przykładem analizy dynamicznej może być wykonanie przypadków testowych;
- historia zmian kodu pochodząca z repozytorium zarządzania konfiguracją pozwala ocenić wpływ niektórych zmian na program.