SlideShare a Scribd company logo
FireMonkey

Разработка бизнес-приложений
      нового поколнеия



                               1
Ренессанс потребительского ПО




• Развитые средства мульти-медии и графики для
  пользователя
• Интуитивный и интерактивный – легче учиться
• Моделирование физики реального мира
• Управление при помощи касаний и жестикуляции
                                                 2
Застой в ПО для бизнеса и
            производства




• 90’s Windows
• Ограничения “мыши” и клавиатуры
• Медленно учишься, плохо получается


                                       3
Ключевые предметные области




•   “Готовое” ПО   •   Энергетика
•   Медицина       •   Авиация и авто
•   Производство   •   Биология
•   Финансы        •   Фармакология
•   Телеком        •   Утилиты
                                        4
Пользователь
                                FireMonkey




                                ПО
                                для бизнеса
                         VCL    сегодня
Качество




                        MFC
           Производительность
                                          5
Представляем… FireMonkey!




                            6
FireMonkey




•   Новая платформа для разработки бизнес-приложений
•   Производительность CPU и GPU
•   “Родная” для Delphi работа с СУБД (Embarcadero DBTools)
•   Платформы: Windows, Mac и iOS

                                                          7
Managed          RIA



   FireMonkey не есть …

                   Game
HTML5/CSS3         Engine
                            8
FireMonkey – это…
платформа для разработки приложений

   C++Builder        Delphi



  Windows       Mac OS      iOS
                                  9
VCL и FireMonkey

                      Win Mac     iOS
 VCL
 FM
VLC – классика, FM - будущее

                                        10
Native CPU/GPU Application Platform




  • Компиляция в платформенно-ориентированный код
    Windows, Mac и iOS
  • Application, Database и Animation используют CPU
  • Весь UI, графика и эффекты используют GPU



                                                       11
Формы HD




•   Векторная графика, высокая скорость, использование GPU
•   Максимум разрешения
•   Сотни готовых компоненов (+партнеры?)
•   Механизм поддержки стилей на основе GPU
•   Софременные эффекты, поддержка прозрачности и
    переходов

                                                             12
Формы 3D




• Формы 3D, использующие GPU
• Освещение, текстуры и анимация на основе
  современного аппаратного обеспечения
• Формы 3D могут содержать элементы управления HD



                                                    13
Эффекты и анимация




• 50+ эффектов с использованием GPU (а-ля Photoshop)
• Одновременно несколько эффектов без потери
  производительности
• Продвинутая анимация, включая “вдоль линии” для
  любых графических примитивов HD и 3D

                                                       14
Обзор FireMonkey
  • Кросс-платформенная
  • Темы/”шкурки”
  • Высокая производительность: анимация,
  эффекты
  • Direct2D, D3D, Quartz и OpenGL
  •Delphi и C++
  • 100% Object Pascal Framework




                                            15
FireMonkey – технология
     • Mac
       • HD использует Quartz
       • Отрисовка 3D на Mac с помощью OpenGL
     • Windows
       • Direct2D для HD
       • Direct3D для 3D
       • FireMonkey использует GDI+ для
         векторыных HD-форм/элементов, когда
         Direct2D не поддерживается
                                          16
FireMonkey – HD, 3D и GPU
• FireMonkey использует преимущества GPU, где возможно

• Формы HD могут отрисовываться на компьютере без GPU с
  некоторыми ограничениями:
   – Нет TViewport3D, нет фильтров на основе Shader

• Формы 3D требуют GPU – но выполняют сложные преобразования и
  манипуляции с интерфейсом пользователя…

       … другими словами, формы 3D могут быть отличным выбором
  для построения сложного интерфейса HD user interface



                                                                 17
Архитектура FireMonkey
• TFmxObject = class(TComponent)
   – Создание, удаление и освобождение обхъекта
   – Клонирование, хранение и загрузка объекта из потока
   – Манипулирование с дочерним объектом (добавить, удалить,
     искать)
   – Уведомление Free
   – Абстрактный слой для tab order
   – Поддержка ресурсов FireMonkey
   – Поддержка анимации FireMonkey

• IControl
   – Обрабатывает события “фокуса”, “мыши” и клавиатуры
   – Реализован TControl и TControl3D

                                                          18
Архитектура FireMonkey
• IRoot
   – Интерфейс для контейнеров высокого уровня
   – Обрабатывает Focused, Captured, Active controls
   – Реализуется в TCustomForm

• IScene
   – Интерфейс контейнера для объектов 2D
   – Реализован в TForm, TCustomLayer3D

• IViewport3D
   – Интерфейс контейнера для объектов 3D
   – Реализован в TForm3D, TViewport3D

                                                       19
Стили FireMonkey
• Стили FireMonkey
  – Коллекция стилей ресурсов FireMonkey
  – Реализация наподобие WPF
  – Стили можно наследовать, сохранять,
    загружать
  – Файлы стилей “look&feel” для Win7, MacOS, iOS
    и пользовательских “тем”



                                                20
FireMonkey – Анимация
• Используется для изменения свойства во времени
• Не зависит от производительности аппаратного
  обеспечения
• Можно “зациклить” или “обратить”
• Можно изменять во времени / пути
• Срабатывает MouseOver, Focus, Visibility, etc.




                                               21
FireMonkey – Эффекты / Фильтры
 • Прменяются к “битмапам”
 • Применимы к элементам управления
 • Срабатывают на MouseOver, Focus, Visibility,
   etc.
 • Реализация на основе GPU shader




                                              22
Программирование 3D
• Одна объектная модель – много платформ
• FM использует “праворукую” систему
  координат
• Аппаратное ускорение
  – Windows – DirectX
  – MacOS – OpenGL
  – iOS – OpenGL ES


                                           23
FireMonkey и кросс-платформенность
 • FM – платформа, которая поддерживает
   –   RTL
   –   GUI
   –   БД
   –   ОС
 • Компилируется / запускается на всех
   поддерживаемых нами платформах *



               • * подмножество мобильных платформ



                                                     24
Fire Monkey - Демонстрация




                             25
Резюме
• FireMonkey – платформа для разработки бизнес-приложений
  нового поколения
• Полностью использует возможности GPU
• RAD, дающее результаты качественно нового уровня
• Инвестируй в одну платформу, получай поддержку различных
  по природе ОС
• Компиляторы Delphi и C++, платформенно-ориентированные
  исполняемые модули
• Использование анимации и эффектов

• Вы ограничены только вашей фантазией!!!

• FIREMONKEY = светлое будущее!!!


                                                             26

More Related Content

PPT
PPTX
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
PPT
Nix for work_izdat
PDF
Windows at Mac / Windows на мак
PPTX
Alexander Serbul - Development and administration through testing - cloud ser...
PPTX
Alexander Burt - Inside of 2D-graphics
PPTX
Как сделать интернет-сайт на SharePoint и не передумать на полпути
PPTX
Roman Zdebskiy - Windows Azure
CodeFest 2011. Сошников Д. — Разработка игр для Windows Phone 7
Nix for work_izdat
Windows at Mac / Windows на мак
Alexander Serbul - Development and administration through testing - cloud ser...
Alexander Burt - Inside of 2D-graphics
Как сделать интернет-сайт на SharePoint и не передумать на полпути
Roman Zdebskiy - Windows Azure

Viewers also liked (17)

PDF
Dmitry Zavalishin. Successful it-project - where can it fail
PPTX
Alexei Sintsov - "Between error and vulerability - one step"
PPTX
Референсная архитектура приложения на ASP.NET MVC
PPTX
Синяя Борода. История одного проекта.
PPTX
Производительность и энергопотребление мобильных приложений на примере Window...
PDF
Sign Me Up
PPTX
Victor Kuzmin - How to organize service development for several mobile platforms
PPTX
Roman Zdebskiy - Client vs. Browser
PPTX
Проектирование архитектуры приложений
PDF
Alexander Dolgarev "Comparizon of AMQP and Zero MQ"
PPTX
Построение индекса по иерархии записей в реляционной БД
DOC
Asad C.V
PPT
(Eng) How Social Media Worked In #24godyny project (Updated)
PPTX
PPT
Banana Shelf Life Testing
PPTX
об удобстве иерархических структур данных
PPTX
ObjectXPathNavigator - как и зачем?
Dmitry Zavalishin. Successful it-project - where can it fail
Alexei Sintsov - "Between error and vulerability - one step"
Референсная архитектура приложения на ASP.NET MVC
Синяя Борода. История одного проекта.
Производительность и энергопотребление мобильных приложений на примере Window...
Sign Me Up
Victor Kuzmin - How to organize service development for several mobile platforms
Roman Zdebskiy - Client vs. Browser
Проектирование архитектуры приложений
Alexander Dolgarev "Comparizon of AMQP and Zero MQ"
Построение индекса по иерархии записей в реляционной БД
Asad C.V
(Eng) How Social Media Worked In #24godyny project (Updated)
Banana Shelf Life Testing
об удобстве иерархических структур данных
ObjectXPathNavigator - как и зачем?
Ad

Similar to Vsevolod Leonov "Delphi XE2. Visual tools for cross-platform development" (20)

ODP
Не так страшен Linux…
PDF
Microsoft: Создание игр на DirectX для Windows 8 и Windows Phone 8
PDF
Marmalade: Кроссплатформенность для профессионалов. Как и почему?
PPTX
[Add 4] crossplatform .net
PPT
мбоу сош№1 правка
PDF
Применение low-code платформ в энтерпрайзе
PPTX
Go Mobile! Windows Phone 7 for all
PPT
Сравнение рынков Content Management Software тут и там
PPT
Unreal Engine 4: Best Practices and Recent Showcases
PPT
3D в браузере. Битва за реалистичность / Иван Дембицкий (Realaxy)
PPTX
Wargaming.net: Архитектура современных 3D движков
PDF
CodeFest 2012. Анкудинов Д. — О специфике мультиплатформенного тестирования игр
PDF
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
PDF
Interbase xe7 - универсальная субд для windows linux mac ios android
PDF
{HSE Inc} Разработка под Android
PDF
GNU/Linux и свободное ПО для компьютера
PDF
Интерактивные и динамические цифровые вывески: Новые решения в линейке DMS
PDF
Ценность платформы Octopod для разработчиков мобильных приложений
PPT
Api Bitrix Ryzhikov
PPT
Разработка GUI игрового проекта на Scaleform
Не так страшен Linux…
Microsoft: Создание игр на DirectX для Windows 8 и Windows Phone 8
Marmalade: Кроссплатформенность для профессионалов. Как и почему?
[Add 4] crossplatform .net
мбоу сош№1 правка
Применение low-code платформ в энтерпрайзе
Go Mobile! Windows Phone 7 for all
Сравнение рынков Content Management Software тут и там
Unreal Engine 4: Best Practices and Recent Showcases
3D в браузере. Битва за реалистичность / Иван Дембицкий (Realaxy)
Wargaming.net: Архитектура современных 3D движков
CodeFest 2012. Анкудинов Д. — О специфике мультиплатформенного тестирования игр
Настоящее и будущее решений для разработки кросс-платформенных мобильных гибр...
Interbase xe7 - универсальная субд для windows linux mac ios android
{HSE Inc} Разработка под Android
GNU/Linux и свободное ПО для компьютера
Интерактивные и динамические цифровые вывески: Новые решения в линейке DMS
Ценность платформы Octopod для разработчиков мобильных приложений
Api Bitrix Ryzhikov
Разработка GUI игрового проекта на Scaleform
Ad

Vsevolod Leonov "Delphi XE2. Visual tools for cross-platform development"

  • 2. Ренессанс потребительского ПО • Развитые средства мульти-медии и графики для пользователя • Интуитивный и интерактивный – легче учиться • Моделирование физики реального мира • Управление при помощи касаний и жестикуляции 2
  • 3. Застой в ПО для бизнеса и производства • 90’s Windows • Ограничения “мыши” и клавиатуры • Медленно учишься, плохо получается 3
  • 4. Ключевые предметные области • “Готовое” ПО • Энергетика • Медицина • Авиация и авто • Производство • Биология • Финансы • Фармакология • Телеком • Утилиты 4
  • 5. Пользователь FireMonkey ПО для бизнеса VCL сегодня Качество MFC Производительность 5
  • 7. FireMonkey • Новая платформа для разработки бизнес-приложений • Производительность CPU и GPU • “Родная” для Delphi работа с СУБД (Embarcadero DBTools) • Платформы: Windows, Mac и iOS 7
  • 8. Managed RIA FireMonkey не есть … Game HTML5/CSS3 Engine 8
  • 9. FireMonkey – это… платформа для разработки приложений C++Builder Delphi Windows Mac OS iOS 9
  • 10. VCL и FireMonkey Win Mac iOS VCL FM VLC – классика, FM - будущее 10
  • 11. Native CPU/GPU Application Platform • Компиляция в платформенно-ориентированный код Windows, Mac и iOS • Application, Database и Animation используют CPU • Весь UI, графика и эффекты используют GPU 11
  • 12. Формы HD • Векторная графика, высокая скорость, использование GPU • Максимум разрешения • Сотни готовых компоненов (+партнеры?) • Механизм поддержки стилей на основе GPU • Софременные эффекты, поддержка прозрачности и переходов 12
  • 13. Формы 3D • Формы 3D, использующие GPU • Освещение, текстуры и анимация на основе современного аппаратного обеспечения • Формы 3D могут содержать элементы управления HD 13
  • 14. Эффекты и анимация • 50+ эффектов с использованием GPU (а-ля Photoshop) • Одновременно несколько эффектов без потери производительности • Продвинутая анимация, включая “вдоль линии” для любых графических примитивов HD и 3D 14
  • 15. Обзор FireMonkey • Кросс-платформенная • Темы/”шкурки” • Высокая производительность: анимация, эффекты • Direct2D, D3D, Quartz и OpenGL •Delphi и C++ • 100% Object Pascal Framework 15
  • 16. FireMonkey – технология • Mac • HD использует Quartz • Отрисовка 3D на Mac с помощью OpenGL • Windows • Direct2D для HD • Direct3D для 3D • FireMonkey использует GDI+ для векторыных HD-форм/элементов, когда Direct2D не поддерживается 16
  • 17. FireMonkey – HD, 3D и GPU • FireMonkey использует преимущества GPU, где возможно • Формы HD могут отрисовываться на компьютере без GPU с некоторыми ограничениями: – Нет TViewport3D, нет фильтров на основе Shader • Формы 3D требуют GPU – но выполняют сложные преобразования и манипуляции с интерфейсом пользователя… … другими словами, формы 3D могут быть отличным выбором для построения сложного интерфейса HD user interface 17
  • 18. Архитектура FireMonkey • TFmxObject = class(TComponent) – Создание, удаление и освобождение обхъекта – Клонирование, хранение и загрузка объекта из потока – Манипулирование с дочерним объектом (добавить, удалить, искать) – Уведомление Free – Абстрактный слой для tab order – Поддержка ресурсов FireMonkey – Поддержка анимации FireMonkey • IControl – Обрабатывает события “фокуса”, “мыши” и клавиатуры – Реализован TControl и TControl3D 18
  • 19. Архитектура FireMonkey • IRoot – Интерфейс для контейнеров высокого уровня – Обрабатывает Focused, Captured, Active controls – Реализуется в TCustomForm • IScene – Интерфейс контейнера для объектов 2D – Реализован в TForm, TCustomLayer3D • IViewport3D – Интерфейс контейнера для объектов 3D – Реализован в TForm3D, TViewport3D 19
  • 20. Стили FireMonkey • Стили FireMonkey – Коллекция стилей ресурсов FireMonkey – Реализация наподобие WPF – Стили можно наследовать, сохранять, загружать – Файлы стилей “look&feel” для Win7, MacOS, iOS и пользовательских “тем” 20
  • 21. FireMonkey – Анимация • Используется для изменения свойства во времени • Не зависит от производительности аппаратного обеспечения • Можно “зациклить” или “обратить” • Можно изменять во времени / пути • Срабатывает MouseOver, Focus, Visibility, etc. 21
  • 22. FireMonkey – Эффекты / Фильтры • Прменяются к “битмапам” • Применимы к элементам управления • Срабатывают на MouseOver, Focus, Visibility, etc. • Реализация на основе GPU shader 22
  • 23. Программирование 3D • Одна объектная модель – много платформ • FM использует “праворукую” систему координат • Аппаратное ускорение – Windows – DirectX – MacOS – OpenGL – iOS – OpenGL ES 23
  • 24. FireMonkey и кросс-платформенность • FM – платформа, которая поддерживает – RTL – GUI – БД – ОС • Компилируется / запускается на всех поддерживаемых нами платформах * • * подмножество мобильных платформ 24
  • 25. Fire Monkey - Демонстрация 25
  • 26. Резюме • FireMonkey – платформа для разработки бизнес-приложений нового поколения • Полностью использует возможности GPU • RAD, дающее результаты качественно нового уровня • Инвестируй в одну платформу, получай поддержку различных по природе ОС • Компиляторы Delphi и C++, платформенно-ориентированные исполняемые модули • Использование анимации и эффектов • Вы ограничены только вашей фантазией!!! • FIREMONKEY = светлое будущее!!! 26