自分のニーズに合わせて他の誰かのオープンソースライブラリを変更しています。その過程で、ライブラリ自体がかなり壊れていることに気付いています。テストはなく、コードの重要な部分は、Android SDKの権限レベルを回避するためにリフレクションを使用しています。私はこれが悪い習慣であると認識していますが、私はこのケースで元の著者には、プライベートまたはプライベートのマークが付いているSDKの一部が保護されているか、公開されていることに同意します。反射の堅牢性をどのように改善できますか?
例えば、あるクラスは、標準のAndroid UIクラスを拡張するだけで何もしませんが、他の方法では変更できないビューの色のゲッターとセッターを提供します。
明らか、本質的に脆いの誰かが他の人のコードベースでのプライベートコードに依存しているコードが、私は私が行うことができ、少なくとも理解はそれのためにいくつかのテストを書くです。しかし、私が考えることができるのは、それをインスタンス化し、色を変更し、クラッシュするかどうかを確認することだけです。プライベートメンバーにアクセスせずに私が望むことをする方法がないとすれば、これをより美味しくするにはどうしたらよいですか?