HeMet
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору sergionn Мне кажется, что делфистам (тем кому не пофиг) безразлично кто сделает паскаль поверх llvm, если оно будет работать как надо: EMB, RemObjects или FPC. А вот направлением OP - JS никто кроме Эрика Гранжа не занимается. Да и сдается мне, что нынче голому компилятору без RTL и фреймворков будет тяжело взлететь. Те же RO делают компиляторы, но при этом тянут к себе все что только можно. P.S. Отходя от глобальных тем: ковыряюсь с мартышкой (пилю тихонько техно-демку) и дошла очередь до иконок для кнопок. Поскольку Мартышка по сути векторная, взор обратился в сторону SVG, тем более, что как бы TPath принимает информацию по кривым, которую как раз использует этот формат. Ну, так вот, ничего сложнее самых простых вещей с ходу нарисоваться не смогло. Полез разбираться почему. Данные парсит и хранит TPathData и там такое... Такое ощущение, что тому кто его писал дали на это пару обеденных перерывов, либо постоянно капали на мозги. Из самого примечательного: * многослойная копипаста * старательное избегание case и repeat и промежуточных перменных * старательное использование TStringBuilder, там где он него никакого толку, т.к. цепочные вызовы не используются (да и вообще, теперь это все сам string умеет) * таскание по алгоритму пары переменных с одинаковым по сути назначением и перекладывание данных то туда то сюда, а в итоге сами себе на ноги наступают. * не реализованы почти все команды рисования кривых, хотя в классе уже есть все необходимое (такое ощущение, что начали, но не закончили). * куча проверок на всякий случай, потому что парсер ведет себя черт знает как * забивание на то, что написано в спецификации (правда, никто в хелпе не заявлял о поддержке SVG Path) Итого парсер почти никакой: куча жирного кода, которая работает раз через раз. При этом не в нем нашел только одну ошибку, ЕМНИП. Поправишь одну ошибку (по-любому, хелперы добавили именно для этого ) и тут же видишь как все криво, отрефакторишь, найдешь ещё что-нить. В итоге, к тому времени, когда правильные svg-пути начали рисоваться как положено, весь парсер оказался переписан почти вчистую, хотя я себе изначально такой цели не ставил. Но при всем при этом жалоб на более низкие слои Мартышки у меня не возникало, кроме рендеринга текста (ну когда уже через Direct2D текст перестанет рисоваться размытым). Всё весьма шустро работает и по сравнению с чистым Direct2D гораздо меньше возни со всякими ресурсами. Накопилось  | Всего записей: 212 | Зарегистр. 05-09-2007 | Отправлено: 19:40 24-01-2013 | Исправлено: HeMet, 20:08 24-01-2013 |
|