Unix program farkına benzer, ancak Nesneler için olan bir Java yardımcı programı kitaplığı var mı? Aynı türden iki nesneyi karşılaştırabilen ve aralarındaki farkları temsil eden (ve örnek değişkenlerindeki farklılıkları özyinelemeli olarak karşılaştırabilen) bir veri yapısı oluşturabilen bir şey arıyorum. Ben değilim değil bir metin fark bir Java uygulaması arıyorsanız. Bunu yapmak için yansımayı nasıl kullanacağım konusunda da yardım aramıyorum .
Sürdürdüğüm uygulama, bu işlevselliğin bazı zayıf tasarım seçeneklerine sahip ve yeniden yazılması gereken kırılgan bir uygulamasına sahip, ancak rafta bir şey kullansak daha da iyi olurdu.
İşte aradığım şeylerin bir örneği:
SomeClass a = new SomeClass();
SomeClass b = new SomeClass();
a.setProp1("A");
a.setProp2("X");
b.setProp1("B");
b.setProp2("X");
DiffDataStructure diff = OffTheShelfUtility.diff(a, b); // magical recursive comparison happens here
Karşılaştırmadan sonra, yardımcı program bana "prop1" in iki nesne arasında farklı olduğunu ve "prop2" nin aynı olduğunu söylerdi. DiffDataStructure'ın bir ağaç olması en doğal olduğunu düşünüyorum, ancak kod güvenilirse seçici olmayacağım.