воскресенье, 8 июня 2014 г.

О расширенном делегировании


В Delphi, как и в большинстве других современных объектно-ориентированных языков существует поддержка делегирования.
Она основана на определении свойств в классах, тип которых — метод объекта с предопределённым интерфейсом. Рассылка события — это обращение к такому свойству как к методу с передачей в него параметров.

среда, 7 мая 2014 г.

Как разместить исходный код в комментариях Blogger

Иногда возникает потребность разместить исходный код в комментариях Blogger. К сожалению, если ничего не предпринимать, как минимум, начальные пробелы, отражающие структуру исходного текста, будут удалены при публикации комментария, что сделает текст нечитаемым.

среда, 30 апреля 2014 г.

Интерфейсы и исключения в деструкторах

Часто можно встретить рекомендацию, что финализация должна быть всегда успешна.
Ну, в том смысле, что в процессе финализации не должно случаться исключений. А если встречаются, они там же (в процессе финализации) должны обрабатываться.
Пост о безуспешной попытке выйти за рамки ограничений...

пятница, 25 апреля 2014 г.

Мартин Фаулер. Предметно-ориентированные языки программирования

Этот пост о книге Мартина Фаулера, которую он анонсировал здесь, а знакомство с этим постом совпало по времени с моментом, когда нам пришлось разрабатывать свой DSL для описания SQL-запросов в программном коде на Delphi.

пятница, 11 октября 2013 г.

Где кончается SELECT?

Тема, которая сегодня неожиданно возникла, удивила и заставила задуматься о вещах, которые ранее воспринимались совершенно утилитарно.
Ну кто не пользовался оператором SELECT? - Все пользовались. А вот где он кончается и начинается следующий? ;-)
То, что я скажу далее — очень спорно, об этом нигде (в известных мне местах) не говорится, и далее следует исключительно мнение автора, т. е. моё личное.

воскресенье, 15 сентября 2013 г.

Предложил своим студентам попробовать FireMonkey

Программа для V-го курса предусматривает разработку интерактивного приложения с использованием Delphi. Там "многоходовая комбинация", фактически, разработка прототипа информационной системы, на примере которой иллюстрируются реальные задачи. Построение элементов управления по метаданным БД, динамическая компоновка форм из фреймов, загружаемых отдельно, стыковка окон (docking) содержащих представления таблиц на рабочем столе (вкладка, подобно вкладке браузера) и интерактивная установка отношений master-detail меду ними, сохранение и загрузка рабочих столов через фабрики...