23
Апр
0

Realaxy. Делюсь впечатлениями от презентации на Creative Future 2010

realaxy

Не зря говорят, что лучше один раз увидеть, чем тысячу раз услышать. И я увидел (и услышал) презентацию Ивана Дембицкого и Евгения Потапенко на мероприятии Creative Future 2010 об их детище - редакторе Realaxy. Я думаю,что у этого продукта есть все шансы стать хитом.

Внешне, это обыкновенный редактор кода, однако за довольно привычным интерфейсом скрыты возможности выходящие за рамки привычных представлений о редакторе кода для Action script 3.

Этот продукт построен на базе jetbrains mps. Это система  мета программирования, позволяющая расширять язык программирования по своему усмотрению. Мета программирование… м-м-м? Звучит, мягко говоря  не слишком ясно. Не бойтесь, я постараюсь объяснить… по крайней мере в той степени в которой это доступно моему пониманию.

Во всяком случае, в первую очередь Realaxy это очень, ну просто очень удобный редактор кода. С автокомплитом, с подсказками и автоматической генерацией кода, с подсветкой всего чего только можно. Все это можно внимательно изучить в скринкастах. Я не буду тут слишком углубляться в эти  детали. Я остановлюсь на том, что привлекло мое внимание.

Первое, что удивило  - наличие разбиения документа на секции в совершенно ультимативном порядке. То есть: вы создаете класс, и в документе сразу, жестко размечены секции: <<static fields>>,<static methods>>, <<methods>> и т.п. они обозначены специальными текстовыми тегами. И это означает, что cоответствующие переменные и методы могут быть размещены только там, где обозначен раздел для них. Т.е. вас заставляют делать правильный код, не позволяют мешать все в кучу. Эта идея, на мой взгляд весьма толковая, особенно для таких начинающих деятелей от дизайна,  как я, жестко задавать шаблон документа. И тут настоящий воин должен задаться вопросом какого хрена, а что это простите за формат документа такой, который может, что-то не позволить? Как тупой текстовый документ может не позволить мне что-то?…

А вот в том то и дело, что редактор Realaxy хработает с данными не в виде обыкновенного текстового файла as. Да, дорогие мои девелоперы, это XML (он конечно тоже текст, но все-таки это явно не action script). Получается, что разработка проекта , будучи начатой в этой среде, довольно жестко к ней привязывается.

Такой подход дает довольно интересные возможности.

Например, меня очень порадовала такая возможность редактирования кода: если в уже написанном коде вы измените имя существующей функции, то все ее вхождения в код будут переименованы автоматически.

Безусловно, в любой момент вы можете экспортировать из редактора обыкновенный action script код для использования в других приложениях, но при этом вы получите некоторое количество кода сгенерированного автоматически с о всякими волшебными автоматическими именами типа “bs_23434″.

Еще одной необычная, по крайней мере для меня, возможность - вы можете переопределять синтаксис языка, или  в терминологии этой среды - создавать расширения. Фактически Realaxy позволяет создавать нечто вроде надстройки над используемым языком. Для ясности приведу пример: кто-то из слушателей заметил, что это подобно тому, как если бы вместо ключевого слова function в редакторе показывалась бы условная иконка, наподобие смайлика, а область видимости ptivate или public тоже обозначалась условным значком… То есть у вас есть возможность переопределять конструкции языка для вашего удобства, для лучшей удобочитаемости кода. По существу это и есть основная идея мета программирования - возможность расширения языка, вот тут подробнее, но простите, на английском. Эта, на первый взгляд, неочевидная возможность позволяет улучшить удобочитаемость кода и сократить время разработки за счет уменьшения избыточной писанины (я думаю вы в курсе насчет некоторой избыточности синтаксиса action script). Планируется создать вокруг продукта некое сообщество пишущее эти расширения, с форумами, обсуждениями и т.п. Говорят что, что омериканцы проявляют нешуточный интерес к этим возможностям Realaxy.

(Еще раз подчеркну, я объясняю все так, как я понял, поэтому могу где-то ошибаться. Желающие могут обратиться к первоисточнику: тут в комментариях на хабре сами авторы дают пояснения по вышеописанным пунктам)

И еще пунктирно, что запомнилось:

  • В Realaxy есть богатые возможности рефакторинга, которые на этой платформе можно с легкость выращивать пачками любых размеров и цветов…
  • Код компилируется стандартным компилером flex3.

Переходя к жестокой прозе жизни, хочу отметить, что проект этот пока еще совсем бета – баги, глюки и  прочие прелести большого растущего организма, плюс эффект презентации, когда отказывает и глючит все то, что в повседневности ведет себя пристойно. Но, это как известно, лечится и я надеюсь со временем и глазик перестанет дергаться и ножка выпрямится… Я вот тоже надеюсь получить бету и помучать ее как следует. Документации пока нет никакой, кроме скринкастов, но что касается базовых возможностей редактирования - клавиатурных сокращений там совсем не много, и благодаря подсказкам, все довольно понятно.

Я надеюсь, что ходе своего развития Realaxy не перейдет ту черту за которой начинается пародия на заботу о нуждах пользователя, по типу редактирования текста в ms powerpoint, когда редактор настолько умен, что способен довести до белого каления любого пользователя, которому нужно нечто более сложное, чем типовой шаблон. Я имею ввиду мудацкое поведение пауэрпойнта при атоматическом форматировании текста, которое определяется какими-то неочевидными закономерностями. Или такой необходимый Puntoswitcher, нагло пытающийся переводить код action script на русский язык, штука нужная и умная, но иногда хочется взять и у…ть ее чем-нибудь тяжелым… Простите, отвлекся.

Релиз Realaxy планируется в августе или сентябре (”…Какого года?” - ядовитый вопрос из зала, я лично, очень надеюсь, что 2010).

Иван сказал, что продукт будет платный, стоимость около ста баксов. Возможно когда-нибудь он станет бесплатным.

Подводя итог могу сказать, что было довольно интересно посмотреть живьем скринкаст “людей из Черногории”, редактор получился интересный, хочу себе такой.

P.S.

Несколько слов о собственно мероприятии Creative Future 2010. Организовано все весьма толково, народу было много, вернее ОЧЕНЬ МНОГО. В перерывах раздавали бесплатные кофе-соки-воды и прочие бутерброды и даже пиво с чипсами после 19.00. Самая главная презентация была посвящена новым возможностям CS5. Я честно говоря, читал о них еще недели две назад, а про флеш5 еще с месяца два тому назад… но одно дело читать, а другое живая демонстрация релизного продукта.

Понравилось как грузится 64-битный фотошоп на эппловском ноуте под виндами - 3 секунды. Презентеры явно наслаждались эффектом - нажали кнопку, и сосчитали “раз, два, три” и он открылся. Я вот не могу пожаловаться на свой core i7 c 64-битными win7, но у меня четвертый явно не три секунды грузится…

В целом, не смотря на мой застарелый цинизм в отношении публичных мероприятий такого рода, впечатление осталось положительное.

Enjoyed reading this post?
Subscribe to the RSS feed and have all new posts delivered straight to you.

Comments are closed.

Celadon theme by the Themes Boutique