Bir kütüphane oluştururken, özel yöntemlerin aynı sınıftaki diğer yöntemlerle değil, yansıma yoluyla başka bir kütüphane tarafından çağrıldığında beklendiği gibi çalışması gerekir mi?
Örneğin, özel bir yöntem şunu private DoSomething(int number)
beklerse:
number
sıfırdan farklı bir pozitif tamsayıdır ve:- özel değişken
string abc
null değil ve boş bir dize değil,
ve tamamen, bu iki koşul eşleşmezse çirkin başarısız olur, sınıftaki tüm yöntemlerin çağrılmadan önce her zaman boş olmayan bir değer atayacağını ve buna sıfır olmayan bir tam sayı ileteceğini bilsem bile bu hataları ele almalıyım yöntem?abc
DoSomething
Başka bir deyişle, yansıma yoluyla güvenli olmayan çağrılara karşı korunmayan kod , düşük kaliteli kod olarak kabul edilebilir mi, yoksa çağrının hiçbir şeyi bozmamasını sağlamak için yansıma kullanan arayanın mıdır?
Not: sorum yalnızca standart bir kitaplık grubunu kapsıyor. Bu, son derece güvenli olması gereken kodu kapsamaz (örneğin, birinin beklenmedik şekilde davranması veya çökmesi için yansıma kullanarak ilgilenebileceği durumlarda).
The Sınıf doğru bir şekilde belgelendiğinden, başka bir geliştiricinin bu yöntemi vb. Kırmayacağından emin olmak için yeterli birim sınamaları olduğundan.