Создавая интерфейс программы для клиента на IronRuby столкнулся с интересной проблемой.
Надо было имитировать бордюр с изображением и своим цветом. Нашёл код, который обеспечивает эмуляцию кнопок окна. Долго не мог понять, почему код не разворачивает окно.
Отладка SharpDevelop не очень помогла. Пошагово в событие даже не заходит, а вывод в лог не даёт нормального отображения.
Пришлось открывать консоль ir и лишь там выяснилось, что есть две структуры WindowState для WPF и FormWindowState для WinForms. И из-за этой мелочи целый день ковырялся в коде, пытаясь понять, что же мешает разворачивать форму.
Вот в этом проблема с динамическими языками. Ты должен быть профессионалом в выбранной тобой библиотеке или инфраструктуре, чтобы мочь писать быстрее с помощью них. Иначе будешь искать долго ошибки, которые выдаёт компилятор на использование не того типа, который тебе нужно.
Так код проходил выполнение и даже не выдавал ошибки, поскольку оба типа имеют очень похожий интерфейс. Даже поля называются одинаково.
Надо было имитировать бордюр с изображением и своим цветом. Нашёл код, который обеспечивает эмуляцию кнопок окна. Долго не мог понять, почему код не разворачивает окно.
Отладка SharpDevelop не очень помогла. Пошагово в событие даже не заходит, а вывод в лог не даёт нормального отображения.
Пришлось открывать консоль ir и лишь там выяснилось, что есть две структуры WindowState для WPF и FormWindowState для WinForms. И из-за этой мелочи целый день ковырялся в коде, пытаясь понять, что же мешает разворачивать форму.
Вот в этом проблема с динамическими языками. Ты должен быть профессионалом в выбранной тобой библиотеке или инфраструктуре, чтобы мочь писать быстрее с помощью них. Иначе будешь искать долго ошибки, которые выдаёт компилятор на использование не того типа, который тебе нужно.
Так код проходил выполнение и даже не выдавал ошибки, поскольку оба типа имеют очень похожий интерфейс. Даже поля называются одинаково.

Комментариев нет:
Отправить комментарий