Ho due stili di codifica:
public class Age
{
public double AgeYear { get;}
public double AgeInDays {get;}
public Person GetAge()
{
int x;
//implementation that calculates AgeYear and AgeInDays
return this;
}
}
Age a = new Age();
Age a1 = a.GetAge();
Seconda implementazione:
public class Age
{
public double Age { get; set; }
public double AgeInDays { get;set; }
public void CalculateAge()
{
int x;
//implementation that calculates Age and AgeInDays
Age = x;
AgeInDays = Age * 365;
}
}
Age a = new Age();
a.CalculateAge();
double age = a.Age;
double ageInDays = a.AgeInDays;
Questo è solo un semplice esempio. Cosa preferisci: modifica le proprietà dell'oggetto nel metodo void e esponi le proprietà pubbliche o chiama un metodo che restituisce l'oggetto stesso.