Новости FireMonkey. Книги firemonkey


Поделись с другими!

Вчера Андрей Совцов провёл очень интересный вебинар с участием Ярослава Бровина.  Сейчас Ярослав работает над созданием новой платформы, предназначенной для мобильной разработки. Именно для мобильной. FGX Native.

Поделюсь впечатлениями от увиденного. Сразу оговорюсь, это мои личные впечатления. Возможно я что-то неверно понял или пропустил. Тем. кому интересно рекомендую посмотреть запись вебинара. она должна вскоре появится.

Основная идея FGX Native заключается в создании нативных мобильных приложений. Именно нативных и именно мобильных. FGX приложения используют нативные контролы. Таким образом, приложения, написанные на Delphi избавятся от целого ряда ограничений. Вы сможете создать приложение, которое внешне ничем не будет отличаться от написанного на той же Android Studio. Использование FGX Native для создания настольных приложений не предполагается.

Здесь я позволю себе маленький комментарий. Да действительно, недостаток Firemonkey, в том, что с его помощью создаются мобильные копии десктопных приложений. И на мой взгляд это главный недостаток. Да, многочисленные солюшны и видеоролики рассказывают о том, как делать правильную логику и интерфейсы. Но всё-равно, выходит как в старом анекдоте про Жигули и BMW. Место проклятое… По крайней мере, в моём случае точно

С другой стороны, это же является и главным преимуществом Firemonkey. В случае, когда нужно разработать мобильный клиент как часть некой существующей настольной системы – Firemonkey на высоте. В принципе, для корпоративного сектора ничего другого особо и не нужно. А трудозатраты сокращаются в разы.

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

И здесь сразу возникает множество вопросов, связанных с возможностями нового продукта, состоянием его готовности и перспективами развития. Собственно, в ходе вебинара, который затянулся почти на два часа вместо запланированного часа, Ярослав демонстрировал FGX Native и отвечал на вопросы.

Перескажу вкратце.

Дизайнер форм мне очень понравился. Там реализован принцип Flexbox и выглядит это действительно впечатляюще.

Были продемонстрированы некоторые компоненты. В частности ListView. Насколько я понял, с ним можно работать так же легко как и с ListBox в FireMonkey, но при этом он работает так же шустро как ListView.

было запущено тестовое приложение.

Я еще раз советую посмотреть запись вебинара, лучше один раз увидеть.

Что касается информации о самом продукте (из того, что я запомнил).

  • FGX Native  не использует Firemonkey и является абсолютно независимой платформой.
  • FGX Native не запускаются и не отлаживаются под Windows.
  • Приложения работают довольно быстро, точные замеры будут проводиться позже.
  • Размер приложений меньше чем у приложений Firemonkey. Пока не понятно на сколько. Но не на порядок.
  • Структура классов компонентов приближена к структуре классов аналогичных VCL компонентов. насколько это возможно.
  • Сначала планируется поддержка Android, затем iOS.
  • К лету планируется закрытое бета-тестирование. К осени – релиз.
  • Распространятся будет по подписке. Цена точно не известна, но Ярослав обещает, что она будет демократична.
  • Lazarus поддерживаться не будет.

И всё же, является ли FGX Native конкурентом Firemonkey? Этот вопрос прозвучал напрямую. Ярослав на него ответил.

Я выскажу своё личное мнение. Да! Конечно, в определённой степени является. При чем это хорошо как для конечных пользователей, так и для Embarcadero. Дело даже не в “волшебной руке рынка”. Дело в том, что в Delphi изначально закладывалась концепция расширяемости за счет пользовательских решений. И подобное решение не только стимулирует развитие Firemonkey, но так или иначе способствует популярности Delphi.

Что касается непосредственно FGX Native, – нисколько не сомневаюсь, что у Ярослава получится отличный конкурентоспособный продукт.

P.S.

Чуть позже данный пост будет обновлен ссылками.

Поделись с другими!

delphi2010.ru

Новости FireMonkey. — Delphi в Internet

Хоть в последнее время и отошел немного от дел в части работы с FireMonkey, но, тем не менее, стараюсь отслеживать по мере сил и свободного времени последние события по теме.

Сегодня выдался свободный часик на работе и я решил посмотреть, что нового появилось по части FMX в Сети: заглянул на сайт Embarcadero, посмотрел, что нового появилось на страничке FireMonkey в FaceBook и обнаружил несколько новинок, которыми и решил поделиться с Вами в этом посте. Итак, чего нового и интересного удалось узнать про FireMonkey за час.

Изменения в документации

Помнится, когда Delphi XE2 только-только появилась на свет, с документацией по FMX была беда — официальная wiki практически пуста, нет толком никаких описаний свойств и методов отдельных компонентов, в Сети (что вполне понятно) только поверхностные обзоры. Так было тогда — в теперь уже прошлом.

Сейчас база знаний по FireMonkey значительно расширилась — в Wiki Embarcadero даже появился специальный раздел, помогающий даже самым непосвященным в дела FMX, понять, что это за платформа и как начать с ней работу. И это первое, на что я наткнулся в поисках новой информации по FireMonkey — раздел «FireMonkey Quick Start Guide«.

Здесь также стоит напомнить о том, что практически месяц назад вышел Help Update 4 в котором было добавлено около 1000 новых статей и материалов в том числе и по FireMonkey. Также немного обновился и раздел Wiki с примерами по FireMonkey.

В общем позитивные сдвиги в направлении разработки документации по FMX есть и довольно неплохие.

Видео

В последние месяцы Embarcadero все больше и больше радует любителей видео-уроков по Delphi новыми материалами — то декабрьский видео-марафон запустят, то просто в канале на YouTube чего-нибудь интересное и полезное выложат. В общем это направление у Embarcadero развивается.

А сегодня обнаружил, что кроме всего прочего, Embarcadero создали даже отдельный раздел на своем сайте и назвали его «FireMonkey Tutorial Series«. На этой страничке можно найти список уже опубликованных на YouTube роликах по FMX, а также список с названиями будущих виде-материалов по работе с платформой. Кстати, вот ссылочка на канал YouTube «FireMonkey Tutorial Video Series», если решите на него подписаться. Кое-какие ролики перетянул на свою страничку «Видео» — пригодятся на будущее.

Исходники

Конечно, документация, видео, отзывы пользователей — это всё важно и полезно, но, на мой взгляд, наибольшую пользу приносят исходники — реальные примеры использования возможностей FireMonkey. Пока копался на каналах YouTube, нашел один хоть и старенький, но довольно интересный короткий ролик, демонстрирующие анимацию FireMonke. Вот он:

[youtube_sc url=»http://www.youtube.com/watch?v=zrkV96LLeEM»]

Порадовало то, что автор видео не пожалел и поделился исходниками. Их можно найти прямо в подписи к видео на YouTube. Думаю, что этот исходник будет полезен тем, кто хочет разобраться с тем как можно использовать анимацию :) Я и сам скачал этот архивчик — на днях гляну код.

 

Вот, собственно, и все. До новых встреч и удачных вам разработок :)

Все исходники, рассмотренные в статье можно скачать со страницы "Исходники"

www.webdelphi.ru

Когда с FireMonkey работа над проектом идёт быстрее. — Delphi в Internet

На сегодняшний день складывается такое впечатление, что старая добрая VCL в Delphi позабыта, позаброшена и все силы Embarcadero направлены на доработку/переработку платформы FireMonkey. Оно, в принципе, и понятно — поддержка мобильных платформ, Mac OS опять же…для поддержки всего этого разнообразия операционных систем требуется много сил, времени и денег и, кто бы чего не говорил, но FireMonkey в этом случае подходит как нельзя кстати. Другой момент — качество платформы и её удобство. Наверное, только самый ленивый не сталкивался при работе с FireMonkey с разного рода ошибками, «тормозами» и т.д. В результате чего многие разработчики на форумах и в блогах откровенно недоумевали:

Одни проблемы платформы решаются оперативно, другие — долго и упорно «висят». Но тем не менее трудно не признать того факта, что FireMonkey развивается, постоянно улучшается, обрастает новыми возможностями, компонентами и т.д. И это обстоятельство всё-таки вселяет надежду на то, что когда-нибудь FireMonkey сравняется по качеству и удобству с VCL. Но речь сегодня не совсем об этом

Одной из проблем разработки проекта с FireMonkey является не столько скорость работы программы (по крайней мере на старте работы), сколько скорость разработки вообще. В FireMonkey все по-другому — по другому организована работа с компонентами, по другому работают стили, по другому реализован механизм Drag&Drop. И даже имея более-менее целостное представление о том как использовать возможности FireMonkey перед началом работы даже над самой мелкой программкой задаешься вопросом: а не быстрее ли будет всё то же самое собрать с использованием VCL? И, как бы это не прискорбно прозвучало, в 99% случаев выбор остается за VCL.

А буквально вчера произошел случай, когда разработка программки с FireMonkey оказалась на много быстрее, чем с VCL.

С чего все началось: потребовалась простенькая программка  для работы с реестром Windows 7. Суть программки: запрет запуска определенных программ пользователем…ну, например, онлайн-игрушек. Портрет пользователя программы в трех словах: вообще не знает компьютер. То есть, если бы я накидал на форму кнопок, создал бы парочку диалоговых окон с подробнейшим описанием того, что и как надо нажать, чтобы программа сработала как надо, то даже в этом случае пользователь врядли бы прочитал хоть что-то и сделал все правильно…ну не лежит у человека душа к компьютерам :) Пришлось импровизировать.

И тут как раз-таки «необычность» FireMonkey оказалась кстати. Первое, что я решил — задействовать Drag&Drop. Про работу с Drag&Drop в FireMonkey я рассказывал и здесь очень кстати мне пригодился объект:

TDragObject = record     Source: TObject;     Files: array of string;     Data: TValue;   end;

TDragObject = record     Source: TObject;     Files: array of string;     Data: TValue;   end;

Для перетаскивания файлов из проводника в программу — в самый раз и не надо заморачиваться над WinApi (хоть там все относительно просто, но тем не менее).

Неопытному пользователю ведь всяко проще мышкой перетянуть файлик в программку, чем нажимать кнопки и открывать диалоговые окна. А в качестве приемника файлов, опять же, в FireMonkey имеется довольно удобный компонент TDropTarget.

В итоге получился вот такой незамысловатый интерфейсик программы:

Запустил программку, передвинул один переключатель, набросал exe-шников и всё. Никаких тебе «Применить», «Ок» и пр. Надо снять ограничения на запуск — передвинул переключатель в другую сторону и все встало на свои места как и было раньше. Дополнительно бросил на форму три чекбокса для запрета запуска командной строки, менеджера задач и редактора реестра…но это уже вообще для «продвинутых» :).

Итог разработки: на все про все ушло чуть более часа из которого минут 15 читал инфу по работе с реестром (где какие ключики добавить, какие значения присвоить и т.д.)

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

Обсудить статью на форуме

Все исходники, рассмотренные в статье можно скачать со страницы "Исходники"

www.webdelphi.ru