Quantcast
Channel: haxe - StablexUI
Viewing all articles
Browse latest Browse all 4

История StablexUI, перспективы UI в Haxe

$
0
0

Этот пост является ответом на вопросзаданный zzzzzzergв рамках инициативы "Спроси меня"

Тут есть некоторое количество ностальгических воспоминаний о зарождении StablexUI, немного о проблемах, лежащих в его основе и ещё чуть-чуть о GUI в Haxe в целом.

Моим первым знакомством с игростроем была работа в одной конторе, которая разрабатывала браузерную игру. Когда начальство решило портироваться в социалки, наш flash-программист (я был серверником) стал писать клиентскую часть с применением собственных наработок, среди которых был некий фреймворк, позволяющий строить интерфейсы разметкой xml (и это был не флекс, а самопальный велосипед :) ). В тот xml можно было добавлять некоторые обработчики событий, но только на lua. После увольнения флешера, мне пришлось тянуть ещё и клиентскую часть. Тогда я столкунлся с большим количеством проблем, рождённых тем самопальным фреймворком. Самыми большими из них были: непредсказуемость позиционирования элементов интерфейса (несмотря на задание точных координат в xml), проблемы с конвертацией as3-переменных в lua и обратно, молчаливое проглатывание ошибок в lua-интерпретаторе (из-за чего отладка превращалась в ад) и протекание памяти на десятки мегабайт в минуту.

Вот именно эта ситуация меня и вдохновила на создание StablexUI :) Я хотел создать библиотеку, которая всегда будет вести себя так, как я того от неё ожидаю, и позволит писать простую логику интерфейсов внутри xml-разметки на том же языке, на котором написан код остального проекта.

На тот момент (да и до сих пор) я не был знаком ни с одним другим GUI фреймворком ни в мире флеша, ни где-либо ещё. И это мой большой минус. Т.к. сейчас я понимаю, что некоторые вещи в StablexUI можно было реализовать иначе, и это позволило бы проще расширять функциональность фреймворка.
По ходу работы я часто посматривал на проекты типа Feathers, Minimal comps и т.п. Но всё равно не припомню ни одного раза, когда я взял бы из них какие-то идеи. Каждый раз думал, что реализую ту или иную фичу так, что её будет удобнее использовать, чем, например, в Feathers (NIH, наверное :) )

Работа над StablexUI сильно продвинула мои знания по макросам и Haxe в целом. До этого макросы были для меня чёрным ящиком.

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

С WPF и XAML я пока не знаком (чтение статьи в википедии не в счёт). А вот биндинги мне нравятся :) Рекомендую всем использовать библиотеку, созданную Димой - bindx. Надо только не забывать при удалении объектов освобождать обработчики, создаваемые для биндинга данных.

Для облегчения работы со StablexUI очень бы пригодился визуальный редактор интерфейсов. Ещё я очень надеюсь, что в следующих версиях StablexUI мне удастся использовать HML (about) вместо самописного xml-парсера.

Хотелось бы, конечно, иметь некий волшебный фреймворк, который позволить создавать интерфейсы не только из кастомных элементов в играх, но и используя нативные интерфейсы на различных платформах (и такая попытка была: GUISE), но пока что я не представляю, как это реализовать так, чтобы с этим было удобно работать разработчику. Однако, считаю, что возможность создавать нативные интерфейсы очень важна, т.к. игры это не весь софт. И всякий там enterprise, который мог бы влить немало денег в мир Haxe, это как раз не игры. Надеюсь Basisвсё-таки получит развитие, или у него появятся преемники.


Viewing all articles
Browse latest Browse all 4

Latest Images

Pangarap Quotes

Pangarap Quotes

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Trending Articles


Gwapo Quotes : Babaero Quotes


Winx Club para colorear


Girasoles para colorear


Loro para colorear


Renos para colorear


Lagarto para colorear


Long Distance Relationship Tagalog Love Quotes


Tagalog Love Facts About Men


RE: Mutton Pies (mely)


El Vibora (1971) by Francisco V. Coching and Federico C. Javinal





Latest Images

Pangarap Quotes

Pangarap Quotes

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC