Re: AMMY - XAML с человеческим лицом
От: Kolesiki  
Дата: 30.12.19 10:56
Оценка: 52 (1)
VD>AMMY — XAML с человеческим лицом

Image: lightweight-syntax.png

Раз про Немерле никто ничё не пишет, напишу про Ammy пару размышлизмов.

1. Ammy как хелпер — превосходно. Mixin и Alias — громадная помощь неуклюжему WPF (вот чем надо было MS заниматься, а не байндинги с триггерами мусолить).
2. При всём моём презрении к раздутому XML, оказалось, что JSON здесь не намного лучше. Есть что-то стилистически неуклюжее в том, что разные по сути элементы выглядят одинаково. Посмотрите на иллюстрацию вверху — казалось бы, StackPanel содержит вполне однотипные с ним контролы внутри — два TextBlock'а. Однако у второго TextBlock'а внутри уже идут не элементы, а инициализация пропертей! Но выглядят-то они абсолютно идентично — внутри скобок. Ещё более наглядный пример:



Ширина, высота,... что?? ТекстБлок? А он там с какого перепугу?

Понятно, что "умный парсер" всё расскажет и покажет, но это неправильно. Распечатайте ч/б эмми-код и поймёте, что у вас нет никакого желания разбираться, кто есть кто.

Я тоже не один день размышлял, как можно красиво-декларативно задавать UI (и тоже попался на удочку JSON), но решил, что тут надо думать глубже и создавать UI-язык без оглядки на существующие решения. Прям вот смело брать и запиливать свой DSL, с конкретной заточкой на сущности "контрол проперть-значение коллекция-контролов". Ну и сахар не забывать, конечно.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.