為了擴充性,將資料獲取、圖元展示、地圖顯示三大關注點徹底分離,打造彈性易維護的架構。
定義單一核心方法:
public interface IDataProvider
{
///
/// 取得所有資料主方法
///
/// 實體清單
List<AbstractEntity> GetData();
}
回傳 List<AbstractEntity>,代表多個待顯示的圖元集合。
AbstractEntity 為核心,定義座標屬性:
public abstract class AbstractEntity
{
public double X { get; set; }
public double Y { get; set; }
}
具體實體繼承此類別,即可統一被地圖渲染引擎處理。