Odbicie Java i ból w refaktoryzacji
Odbicie Java zapewnia mechanizm introspekcji obiektu w czasie wykonywania. Żadnych wątpliwości, to świetna funkcja, ale łamie wszystkie konwencje Refactoring!
Nie ma łatwego sposobu (innego niżFile Search
) nawet we współczesnych IDE, aby wiedzieć, do którego atrybutu się odwołuje i gdzie. To sprawia, że Refaktoryzacje są bardziej złożone (męczące!) I podatne na błędy.
Szczerze mówiąc, to nie tylkoReflection API
; Hibernate mapping files (hbm.xml)
iJSP files
oba odnoszą się do atrybutów jako String, a kiedy zmieniasz nazwę atrybutu, musisz ręcznie zmienić we wszystkich tych miejscach.
Co gorsza, zmiany w plikach mapowania Hibernate lub plikach JSP powodują błędy w czasie wykonywania.
Jestem zainteresowany wiedzą, jak inni programiści radzą sobie z tym w Javie. Czy są jakieś narzędzia? Używam Eclipse / IBM RAD jako głównej platformy programistycznej. Normalnie używamyconstant
zdefiniować atrybut i używać go, gdy tylko jest to możliwe, ale nie zawsze jest to możliwe.
Byłbym również zainteresowany, jak inne języki sobie z tym poradzą!