По?кольку новый продукт Microsoft дл? ?оздани? интерфей?ов очень интере?ует как мен? лично, так и многих моих знакомых, а информации о нём практиче?ки нет, ? про?мотрел ча?овое видео Introducing Sparkle и теперь делю?ь ? вами увиденным.
Вкратце моё ощущение от Sparkle можно ?формулировать так: Sparkle не ?вл?ет?? продуктом, ра??читанным и?ключительно на прототипирование интерфей?ов, и по?тому не идеален дл? такого применени?. Однако возможно?ти, которые он предо?тавл?ет, позвол?т ?оздавать более каче?твенные а также ранее про?то невозможные интерфей?ы значительно бы?трей и удобней.
Е?ли бы удало?ь попробовать продукт вживую, на каком-нибудь реальном примере прототипа, можно было бы уже ? полной уверенно?тью ?казать, ?танет ли Sparkle о?новным рабочим ин?трументом дл? прототипировани? интерфей?ов или нет. ?о уже ?ейча? в?ё больше аргументов говор?т в пользу ответа «да».
Ча?ть новых возможно?тей предо?тавл?ет ?ам механизм отображени? WPF (Windows Presentation Foundation, в недалёком прошлом Avalon):
Векторное пред?тавление. Ве?ь интерфей? в Vista – векторный. Это значит что можно под?траивать интерфей? под разные размеры ?крана без в??кой переделки. В ?амом Sparkle так и делает?? – в его интерфей?е е?ль ?лайдер Workspace Zoom, который уменьшает или наоборот увеличивает площадь под панели ин?трументов. Чем больше разрешение ?крана, тем каче?твенней будет выгл?деть один и тот же интерфей?.
XAML и ?в?зь ? кодом. Ве?ь ?оздаваемый в Sparkle интерфей? опи?ывает?? в XAML, а ?то значит он может напр?мую и?пользовать?? дл? ?оздани? реального приложени?. Тем ?амым по ?ути решает?? давн?? проблема не-и?пользовани? прототипа дл? имплементации: дизайнеры интерфей?а могут ?оздавать какой угодно заковыри?тый интерфей?, а у разработчиков не болит голова о том, как его запрограммировать. Кроме того цепочка проектирование -> ?оздание прототипа -> разработка -> те?тирование ?тановит?? непрерывной, что позвол?ет проще вно?ить неоходимые изменени?.
?икакого программировани?. Sparkle предо?тавл?ет богатейшие возможно?ти ?оздани? интерфей?ов без единой ?трочки кода. Сделано ?то оп?ть таки на о?нове XAML. Даже в?? динамика и ?обытийное управление реализует?? ? помощью ?пециальной панели Timeline.
Трёхмерно?ть. Работать ? трёхмеными объектами в Sparkle ни ?колько не ?ложнее, чем ? обычными двухмерными, по?тому на? ожидают невиданные ранее интерактивные интерфей?ы.
Сам интерфей? программы (к?тати его делали тоже на Sparkle, примерно так же как ?оздатели ?зыка C по?тепенно пи?али компил?тор ?зыка на ?амом C) также задаёт новый уровень каче?тва взаимодей?тви?. Приведу только два примера:
Полно?тью по?троенное на direct manilpulation управление прив?зкой объекта к границам объекта-родител?. Это один из ин?трументов, который нужен по?то?нно, но по каким-то причинам ни в одной программе он до ?их пор не был реализован правильно.


Принцип работы про?т: при выделение объекта по?вл?ют?? линии, ?в?зывающие его ? границами рабочей обла?ти. Путём щелчка на ме?те пере?ечени? ?тих линий ? границей (их ? пометил ?трелками) можно включать/выключать фик?ацию ра??то?ни? от границы объекта до ?той точки.
Вы будете ?ме?ть??, но у мен? в черновиках новых заметок из моей ?ерии Preview давно лежит незаконченный прототип интерфей?а дл? управлени? прив?зкой объектов:

Отличи? и?кать не надо, уже поздно.
Второй пример: на?тройка градиента также ? помощью ?пециального ?лемента управлени?.


В заключение немного и?тории:
valerydl утверждает, что Sparkle о?нован на программе LivingCells. Суд? по приведённой по ??ылке выше картинке, ?то дей?твительно так. Однако мне кажет?? что из LivingCells была вз?та лишь удачна? иде? интерфей?а. Скорее в?его Sparkle был полно?тью переделан «? нул?» и вме?те ? новой вер?ией Windows даёт более широкий ?пектр возможно?тей и применени?.
“Ве?ь ?оздаваемый в Sparkle интерфей? опи?ывает?? в XAML, а ?то значит он может напр?мую и?пользовать?? дл? ?оздани? реального приложени?”
Может, но не будет и?пользовать?? в ?ложных проектах ещё 3 или 5 лет — дорого. Зато ?тартапам будет где развернуть??.
Смотр? что ?читать ?ложными проектами. Волны перехода на новые технологии периодиче?ки повтор?ют??: ?начала в?е бро?или?ь переходить на ?ву, не так давно - на .Net и как по?ледний пример - на Ajax. Потом в?е немного у?покаивают??, и начинают думать головой.
?а?чёт ?рока - ?огла?ен ? Вами, ещё года 3, не меньше, пока .Net/XAML не ?танет ?тандартом де-факто. Правда в ?тот раз в гонке учав?твует Google, так что можно ожидать ?юрпризов.
…предполагал, что Sparkle о?новывает?? на LivingCells, по?кольку куда-то же оно дело?ь за год, а Microsoft их же Expressions запу?тил как раз под названием Acrylic. ?о информации не было, а ?криншот видео вообще за?тавил ?омневать?? в таком предположении…
?о вот любопытно очень по поводу ?той ?амой прив?зки объектов… Попробую ?ейча? положить картинку на LJ но?тальгиче?кую: кажет??, требуема? программа уже давно ?уще?твовала, но заботами Adobe была закатана в а?фальт…
Прив?зка к границам таким образом делала?ь в Interface Builder он NextStep (а теперь и в Mac OS X) примерно 10 лет назад
Еще вот тут древно?ть:
http://www.livejournal.com/community/ru_ucdesign/198415.html
IntelliDraw и Professional Draw. Первый, где прив?зка была упрощенна? и через чи?ловой ввод — от 1992 года…
Здорово, что в?е интере?ные находки наконец ?обрали вме?те!
Да и в той же Visual Studio 2003/5 она е?ть, и в BCB3 была как помню, хот? и не?колько в другом виде - без визуальных поло?очек. Отличие только в том, что в вашем прототипе поло?ка вверх идёт до тек?тбок?а, а у мелко?офта и борланда - до верхней границы формы (т.к. прив?зка о?уще?твл?ет?? к контейнеру, а контейнером кнопки в Вашем ?лучае будет форма)…
Вот именно, визуальной на?тройки нет ни в Builder ни в VS.
Да, было бы смешно, если б к сожалению не было так грустно …