https://bitbucket.org/ingword/mindstream/commits/3c86615cd0c66236e7f8b7cdc9aca8eb66daec17
Контекст - это "нечто", что влияет на ПОВЕДЕНИЕ объекта, НЕ ВЛИЯЯ на его (объекта) СОСТОЯНИЕ.
Т.е. мы "настраиваем" поведение ОБЪЕКТА не трогая его СОСТОЯНИЯ. И МИНИМИЗИРУЕМ необходимость изменения сигнатур методов объектов.
ОСОБЕННО тех, которые - override.
Мысль понятна?
type TmsDrawContext = record // Контекст рисования. // "Лирика" - тут - http://habrahabr.ru/post/170125/ // Ну и "связанное" - https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D1%80%D0%B0%D1%82%D0%B5%D0%B3%D0%B8%D1%8F_(%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F) // // Зачем же НАМ нужен "контекст"? // // Всё - БАНАЛЬНО. Чтобы НЕ ТРОГАТЬ сигнатуры методов. Мысль понятна? public rCanvas : TCanvas; rOrigin : TPointF; rMoving : Boolean; // - определяем, что текущий рисуемый примитив - двигается constructor Create(const aCanvas : TCanvas; const aOrigin : TPointF); end;//TmsDrawContext
Контекст - это "нечто", что влияет на ПОВЕДЕНИЕ объекта, НЕ ВЛИЯЯ на его (объекта) СОСТОЯНИЕ.
Т.е. мы "настраиваем" поведение ОБЪЕКТА не трогая его СОСТОЯНИЯ. И МИНИМИЗИРУЕМ необходимость изменения сигнатур методов объектов.
ОСОБЕННО тех, которые - override.
Мысль понятна?
Комментариев нет:
Отправить комментарий