namespace MindBox.Lib;

/// <summary>
/// Абстрактный класс, реализующий интерфейс двумерной фигуры. 
/// Посчитал нужным создать отдельный абстрактный класс, это более гибкое решение. 
/// Такой класс можно расширить другими интерфейсами, например IColorful - контракт для методов получения и/или изменения цвета фигуры.
/// Прочие интерфейсы могут быть применимы не только к двумерным фигурам
/// </summary>
public abstract class FlatShape : ITwoDimensional
{

	/// <summary>
	/// Поле для хранения вычисляемого значения площади.
	/// Вычисляем значение только один раз.
	/// </summary>
	protected double? _area;
	public abstract double GetArea();
}