Обновить
82
8
Дмитрий Синявский@r3code

SRE

Отправить сообщение

Преобразование ссылки на интерфейс для реализации класса в Delphi 2010

Время на прочтение2 мин
Охват и читатели5.6K
Не все нововведения в Delphi 2010 большие и заметные. Команда потратила массу времени реализуя множество дополнительных функциональных возможностей, исправлений и улучшений. Некоторые из них могут показаться незначительными по отдельности, но они не только в целом окзывают существенное влияние, но и значительно добавляют гармоничности продукту.

Одна из возможностей Delphi 2010, которая, как мне кажется, породит массу споров — это возможность привести интерфейсную ссылку назад к типу класса, реализующего этот интерфейс.
Читать дальше →

Кратко о RTTI и атрибутах в Delphi 2010

Время на прочтение3 мин
Охват и читатели16K
RTTI (Runtime Type Information) было тщательно переработано в Delphi 2010.
RTTI является центральным элементом, на котором написано Delphi IDE, он существует со времен первого выпуска, однако я слышал от некоторых людей на протяжении многих лет, что они попытались использовать RTTI и нашли это слишком сложным и замысловатым, особенно по сравнению с Reflection API в Java и .NET. Вот это настоящий позор, поскольку возможность писать код для запроса подробной информации о других объектах, не зная заранее их типа, это действительно мощная возможность.
Читать дальше →

Обобщенные интерфейсы в Delphi

Время на прочтение3 мин
Охват и читатели7.2K
Первод стаьи от Malcolm Groves, «Generic Interfaces in Delphi».

imageБольшинство примеров использования дженериков в Delphi используют класс с дженерик-типом. Однако, работая над своим проектом, я решил, что мне нужен интерфейс с дженерик-типом.

В проекте используется встроенный механизм издатель-подписчик. Я захотел чтобы подписчик имел для каждого типа события отдельный метод Receive, а не отдельный метод с огромным case-выражением, выбирающим действие для каждого типа события. Также я не хотел определять интерфейс для каждого типа события. Мне был нужен дженерик интерфейс подписчика, который получает тип события, как параметр.

Однако, я понятия не имел, могу ли я определить дженерик интерфейс, не говоря уже о реализации. Даже если предположить, что я могу сделать это, сможет ли Delphi выбрать правильный метод Receive для вызова? Есть только один способ узнать…
Читать дальше →

Многоуровневое дерево с маркерами, сохраняющее состояние (HTML, CSS, jQuery, Cookies)

Время на прочтение6 мин
Охват и читатели20K
Продолжается развитие темы о многоуровневом дереве с маркерами. Многоуровневое дерево с сохранением состояния узлов
Теперь дерево выросло и окрепло, стало взрослее и помнит выбранный узел и состояние кажого узла в отдельности.
Страницу можно перезагружать, а дерево все равно будет помнить все что вы открыли и выбрали!

Читать дальше →

Многоуровневое дерево с маркерами (HTML, CSS, jQuery). Запоминаем выбранный узел

Время на прочтение5 мин
Охват и читатели6.6K
Дерево помнит выбранный узел по urlЭто продолжение темы про дерево. Хочу его довести до ранга «готов к внедрению». Потому повозился с JavaScript и сделал запоминание выбранного узла на основе адреса ссылки.
Если ссылка вложена в поддерево, дерево развернется до её уровня и, если у неё самой есть поддерево — оно тоже будет развернуто.

JavaScript сделал как смог, т.к. давно не использовал. Прошу помощи в доработке и оптимизации.
Читать дальше →

Многоуровневое дерево с маркерами (HTML, CSS). Продолжение с jQuery

Время на прочтение7 мин
Охват и читатели43K
Посмотреть в работе многоуровневое дерево с маркерами.В продолжение темы про дерево немного переделал код и подключил jQuery. Теперь дерево живое, узлы разворачиваются, как этого многие ожидают видя подобное дерево.
Теперь оформление дерева делает скрипт — сам расставляет маркеры для элементов с вложенными узлами.
Благодаря использованию скрипта HTML стал проще.

UPD 05.04.2009: обновлены скрипты, есть несколько вариантов скриптов.
UPD 09.04.2009: продолжение
Читать дальше →

Многоуровневое дерево с маркерами (только HTML, CSS, без Javascript)

Время на прочтение5 мин
Охват и читатели24K
Многоуровневое дерево с маркерами (только HTML, CSS)До того как заняться верской гитарных аккордов (статьи 1,2,3) я столкнулся с необходимостью сделать человеку на сайте меню-дерево. Рисовать не хотелось вообще, поэтому я взял старый добрый HTML с CSS и начал делать это дерево, начал с простого одноуровневого, а позже сделал многоуровневое с маркерами, которое и представлю.

Позже это дерево дало мне плоды в виде habrahabr.ru/blogs/css/53792
Читать дальше →

Продолжение идеи записи гитарных аккордов в HTML. Версия 3, оптимизированные варианты

Время на прочтение9 мин
Охват и читатели1.3K

Продолжаем разработку записи аккордов в HTML. В камментах предыдущего топика selenit предложил оптимизированный вариант(1,2), где кода еще меньше.

Для ознакомления с темой подробно, почитайте предыдущий топик.
Читать дальше →

Запись гитарных аккордов HTML+CSS (теперь с баррэ)

Время на прочтение12 мин
Охват и читатели3.4K
Большое и малое баррэ (CSS,HTML only)
Увлекло меня это дело — описание гитарных аккордов, по научному — аппликатура. Начало было положено в предыдущим топике про запись аккордов и теперь получило своё развитие.
Я учел пожелания и сделал новую версию.
Теперь метка прижимаемой струны — это точка • (& bull;) вместо © (& copy;).
В прошлой версии не было поддержки отображения баррэ — теперь есть и большое, и малое баррэ.
Добавлена поддержка Google Chrome.
Читать дальше →

Глюки плагина Tags для Trac — ошибка UnicodeEncodeError

Время на прочтение2 мин
Охват и читатели772

Trac — управление проектом и документацией


Trac — это такая удобная штука, которая позвляет создавать wiki-пдобную документацию и управлять проектом. В нем есть система тикетов для создания планов задач, отчетов об ошибке или запроса на улучшение. Trac может быть привязан к SVN, а SVN к нему, то получается отличная связка для правления кодом. В Svn при фиксировании изменений указываем номер тикета с подробным описанием проблемы, а в Trac пишем как эта проблема решилась.

Проблема

Trac
Два дня танцевал с бубном, переустанавливая много раз Trac 0.11.3, никак не мог понять, почему в одном проекте плагин Tags прекрасно работает, а в другом я получаю ошибку
UnicodeEncodeError: 'ascii' codec can't encode character

Читать дальше →

Запись гитарных аккордов HTML+CSS (пока без барре)

Время на прочтение3 мин
Охват и читатели6.1K
Запись гитарных аккордов при помощи HTML,CSSКак обычно представляют гитарные аккорды на веб-страничках?
Картинками!

Вот только не всегда это удобно, потому что их приходиться рисовать.

Вот у меня родилась идея:
отображать гитарные аккорды используя только HTML и CSS.
Читать дальше →

Поломка флеш-карты OCZ ATV 4GB или кто такой USB MEMORY BAR?

Время на прочтение2 мин
Охват и читатели3.9K
Подарили мне месяц назад этот чудесный пылевлагозащищенный накопитель на 4Гб. Однако радость моя была не долгой.
Нет я не сломал флешку и не проверял молотком ударопрочность, я просто в очередной раз придя домой воткнул ее в компьютер. Каково же было мое удивление, когда Windows собщил «Устройство не опознано!».
Читать дальше →

Установка и настройка SVN, Apache, Trac для Windows. Часть 4 —Последняя. Apache и Trac

Время на прочтение2 мин
Охват и читатели2.2K
Назад к: Часть 3 — Trac ...


В этой части:
  • Настройка Apache для работы с Trac
  • Завершение установки
Читать дальше →

Установка и настройка SVN, Apache, Trac для Windows. Часть 3 — Trac

Время на прочтение1 мин
Охват и читатели3.9K
Назад к: Часть 2 — Apache и SVN ...


В этой части:
  • Устанавливаем Python
  • Устанавливаем Trac
  • Создаем экземпляр Trac для проекта
Читать дальше →

Установка и настройка SVN, Apache, Trac для Windows. Часть 2 — Apache и SVN

Время на прочтение4 мин
Охват и читатели7.5K
Назад к: Часть 1 — SVN ...
В этой части:
  • Устанавливаем Apache
  • Подключаем SVN к Apache
  • Настройка Apache для работы с SVN
  • Настройка SVN Авторизации по пути (Path-Based Authorization)
Читать дальше →

Установка и настройка SVN, Apache, Trac для Windows. Часть 1 — SVN

Время на прочтение2 мин
Охват и читатели6.5K

Содержание


— Подготовка к установке (см. ниже)
— Установка:
Завершение установки

Читать дальше →
2

Информация

В рейтинге
667-й
Откуда
Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Site Reliability Engineer
Старший
SRE
Мониторинг
GitLab
Golang
Высоконагруженные системы
Проектирование архитектуры приложений