![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
За то время, которое уходит на исправление мелкого визуального бага в дотнетовском UI layout (без дизайнера, у меня UI генерируется) в серверном back-end на clojure можно реализовать весь анализ метаданных JDBC и генерацию CRUD запросов к таблицам из них.
Дичь какая-то. При этом баг в принципе не мешает работать с программой, является заведомо менее критичным чем все остальные задачи. Но мелкие косяки UI бесят настолько, что желание вообще этот проект открывать пропадает.
Например, неравномерное расположение текста (текст не помещался в метку, рендерер при этом смещал текст на пару пикселей вверх) или несимметричное расположение поля ввода и названия из справочника для него (размер строки грида для layout был на 2 пикселя больше нужного и textbox при этом не меняет свой размер (игнорируя DockStyle), а label - меняет).
Или еще одно безумие: MenuStrip у которого высота меняется в зависимости от того, есть ли в нем Separator. При этом меню не статическое - оно генерируется исходя из текущей открытой закладки и поэтому переключение между закладками вызывало прыгание всего layout.
Ну это чисто визуальные баги, а еще ж горы юзабилити-багов - то фокус ввода не туда попадет и лишнюю кнопку нажать надо, то горячие клавиши для меню не всегда работают, то еще что.
И, блин, привычные методы починки - медитация на код, логи и структуры данных в этом случае не помогают - потому что моего кода там 10% от кода самого дотнета, который или недоступен или нечитабелен, а все вызовы происходят в контексте обработчиков сообщений винды с дикими стек-трейсами вида "ProcessVoodooItems->DoCallVoodooMethod->DoCallVoodooMethodInternal->GetCanCallVoodooMethod->OurOwnVoodooMethodHandler".
Вместо этого отладчик и пиксель-хантинг, слава богу, хоть в коде а не в дизайнере форм.
Дичь какая-то. При этом баг в принципе не мешает работать с программой, является заведомо менее критичным чем все остальные задачи. Но мелкие косяки UI бесят настолько, что желание вообще этот проект открывать пропадает.
Например, неравномерное расположение текста (текст не помещался в метку, рендерер при этом смещал текст на пару пикселей вверх) или несимметричное расположение поля ввода и названия из справочника для него (размер строки грида для layout был на 2 пикселя больше нужного и textbox при этом не меняет свой размер (игнорируя DockStyle), а label - меняет).
Или еще одно безумие: MenuStrip у которого высота меняется в зависимости от того, есть ли в нем Separator. При этом меню не статическое - оно генерируется исходя из текущей открытой закладки и поэтому переключение между закладками вызывало прыгание всего layout.
Ну это чисто визуальные баги, а еще ж горы юзабилити-багов - то фокус ввода не туда попадет и лишнюю кнопку нажать надо, то горячие клавиши для меню не всегда работают, то еще что.
И, блин, привычные методы починки - медитация на код, логи и структуры данных в этом случае не помогают - потому что моего кода там 10% от кода самого дотнета, который или недоступен или нечитабелен, а все вызовы происходят в контексте обработчиков сообщений винды с дикими стек-трейсами вида "ProcessVoodooItems->DoCallVoodooMethod->DoCallVoodooMethodInternal->GetCanCallVoodooMethod->OurOwnVoodooMethodHandler".
Вместо этого отладчик и пиксель-хантинг, слава богу, хоть в коде а не в дизайнере форм.
no subject
Date: 2013-04-21 06:26 pm (UTC)no subject
Date: 2013-04-21 06:40 pm (UTC)no subject
Date: 2013-04-21 06:35 pm (UTC)Если это так, откуда взялась такая мысль?
no subject
Date: 2013-04-21 06:43 pm (UTC)Я знаю, что один баг где-нибудь в дебрях вычислений или бизнес-логики поймать и починить намного проще, чем починить смещение на 1 пиксель или там отрисовку лишней границы или пустой полосы в UI.
no subject
Date: 2013-04-21 06:39 pm (UTC)no subject
Date: 2013-04-21 06:42 pm (UTC)no subject
Date: 2013-04-21 06:59 pm (UTC)И ещё "эта фича есть в стандарте третьей версии, который пишется уже 7 лет и будет утвержден ещё через пять, а реализован там-то вот так, там через пень-колоду, а вот тут вообще не реализован, так что закатывай солнце вручную".
Хрен редьки не слаще.
no subject
Date: 2013-04-21 07:04 pm (UTC)no subject
Date: 2013-04-23 05:24 am (UTC)no subject
Date: 2013-04-21 07:10 pm (UTC)no subject
Date: 2013-04-21 07:11 pm (UTC)no subject
Date: 2013-04-21 07:11 pm (UTC)no subject
Date: 2013-04-21 07:21 pm (UTC)no subject
Date: 2013-04-21 08:12 pm (UTC)no subject
Date: 2013-04-21 08:40 pm (UTC)no subject
Date: 2013-04-21 07:32 pm (UTC)no subject
Date: 2013-04-22 07:56 am (UTC)no subject
Date: 2013-04-22 08:07 am (UTC)Ваш пост как раз к той теме. :)
Если шашечки - то давайте заюзаем всякое новье с которым еще не трахались.
А если просто ехать - берем давно обкатанный D7 и пишем, не смущаясь его возраста. И получаем результат.
no subject
Date: 2013-04-22 08:18 am (UTC)Но толку все равно нет.
no subject
Date: 2013-04-22 08:25 am (UTC)no subject
Date: 2013-04-21 08:13 pm (UTC)no subject
Date: 2013-04-22 06:02 am (UTC)пысы. заканчиваем 2ю версию софтины с штмл гуем на хроме - не верьте сказкам про веб интерфейсы.
пысы2. дык вставить сепаратор навечно =) например перед меню хээээлп
no subject
Date: 2013-04-22 10:44 pm (UTC)Ну и на жабе свинг тоже напоминает, правда лэйауты вроде не адски прыгают.