namespace MindBox.Lib;
/// <summary>
/// Абстрактный класс, реализующий интерфейс двумерной фигуры.
/// Посчитал нужным создать отдельный абстрактный класс, это более гибкое решение.
/// Такой класс можно расширить другими интерфейсами, например IColorful - контракт для методов получения и/или изменения цвета фигуры.
/// Прочие интерфейсы могут быть применимы не только к двумерным фигурам
/// </summary>
public abstract class FlatShape : ITwoDimensional
{
/// Поле для хранения вычисляемого значения площади.
/// Вычисляем значение только один раз.
protected double? _area;
public abstract double GetArea();
}