Uważam, że taki void jest bez sensu, bo i tak przypisujesz wartość, tylko w innym miejscu.
Wolałbym rozwiązanie na podobieństwo tego:
using System;
namespace SomeNamespace
{
public static class SquareAreaCalculator
{
public static double CalculateArea(double a)
{
return Math.Pow(a, 2);
}
}
}
namespace SomeNamespace
{
public class Square
{
public string Name { get; set; }
public double Area { get; set; }
public Square(string name, double a)
{
Name = name;
Area = SquareAreaCalculator.CalculateArea(a);
}
}
}
Ewentualnie – już przy tworzeniu obiektu po prostu obliczyć pole.