Глава 15. Путь в будущее
Вы сделали это! Вы стали супергероем-разработчиком, и теперь у вас есть все необходимые навыки для быстрого создания потрясающих нативных мобильных приложений из единой кодовой базы в рекордные сроки.
В этой заключительной главе мы рассмотрим некоторые из наиболее важных трендов в мобильной разработке и поразмышляем над инновационными и успешными мобильными приложениями, которые вы теперь можете создавать.
В этой короткой главе будут рассмотрены следующие темы:
- Обзор того, что мы изучили
- Тренды в мобильной разработке
- Идеи для новых и инновационных приложений, которые вы можете создать
Цель этой главы — показать вам путь к успеху в мире разработки мобильных приложений.
Обзор изученного материала
На протяжении всей книги мы совершили путешествие по различным темам, связанным с программированием на Delphi, с точки зрения создания мобильных приложений. Здесь мы стремимся дать краткое резюме, а также предложить ссылки на более специализированные книги для дальнейшего изучения тем, затронутых в этой книге.
Основной целью Главы 1 была установка и настройка IDE Delphi для кроссплатформенной мобильной разработки. Это самая главная особенность кроссплатформенной разработки на Delphi: из одной кодовой базы, из одного проекта, просто переключая целевые платформы в Project Manager, вы можете компилировать свой код в бинарный исполняемый файл для всех основных мобильных и настольных платформ, включая Android, iOS, Windows, macOS и Linux. Если вам нужна дополнительная информация о настройке IDE, вы можете воспользоваться онлайн-документацией Delphi по адресу docwiki.embarcadero.com.
Глава 2 была полностью посвящена языку программирования Object Pascal. От базовых концепций и структуры программы на Delphi мы быстро перешли к пониманию более сложных конструкций, таких как анонимные методы, обобщения (generics), пользовательские атрибуты и использование информации о типах времени выполнения (RTTI). Свободное владение кодом на Object Pascal очень важно, когда речь заходит о написании собственного кода или понимании исходного текста кроссплатформенной библиотеки FireMonkey или других фреймворков Delphi. Для получения дополнительной информации о языке вы можете приобрести книгу Марко Канту, ориентированную на язык, Object Pascal Handbook.
Последующие главы Части 1 были сосредоточены на основных строительных блоках библиотеки времени выполнения Delphi, включая написание многопоточного кода с помощью библиотеки параллельного программирования (PPL) и обработку данных JSON и XML. Для получения дополнительной информации в этой области лучшим ресурсом является книга Приможа Габриэльчича Delphi High Performance.
Вооружившись этими знаниями, вторая часть книги глубже погружается в разработку пользовательского интерфейса (UI) мобильных (и настольных) приложений с использованием FireMonkey. Мы затронули элементы управления UI, 3D, стили архитектуры и многое другое. Есть еще одна книга, которая предлагает много полезной информации в этой области: Delphi GUI Programming with FireMonkey Андреа Маньи.
Последняя часть книги была посвящена управлению данными: от локальных баз данных до HTTP REST-сервисов и облачного доступа, включая разработку бэкендов с помощью WebBroker и RAD Server.
Что касается RAD Server, рекомендуется обратиться к бесплатному онлайн-контенту и электронной книге RAD Server Technical Guide, предоставленной компанией Embarcadero. Подробнее см. blogs.embarcadero.com.
Наконец, Глава 14 охватывала практические аспекты развертывания мобильных приложений Delphi в магазинах приложений и затрагивала фундаментальные методы, используемые для хорошо структурированного процесса разработки приложений. Когда ваше приложение наконец попадает в App Store, его жизнь не заканчивается. Вы также хотите следить за появляющимися технологиями, которые можно использовать в существующих и новых проектах приложений.
Тренды в мобильной разработке
Идеи о том, как вы должны структурировать свои программные архитектуры, меняются быстрее, чем когда-либо. Очевидно, что технологии становятся все сложнее, и есть множество вещей, на которые стоит обратить внимание.
С точки зрения мобильных разработчиков, существуют сами мобильные платформы, новые возможности которых добавляются с каждой новой версией операционной системы, но есть и другие области, за которыми нужно следить, и большинство из них актуальны для каждого типа приложений, а не только мобильных.
Подумайте о взрывном мире искусственного интеллекта (ИИ), новые релизы и функции которого появляются почти каждую неделю, о непрерывном переходе к облачным инфраструктурам и о мириадах облачных и REST-сервисов (или API), с которыми вы можете интегрироваться, чтобы создавать свои приложения быстрее. Даже пространство разработки игр, которое является значительной частью бизнеса мобильных приложений, постоянно развивается с появлением новых библиотек и трендов.
Один экран — не ваш пирдел
Мобильные платформы продолжают развиваться. С каждой новой версией мобильных операционных систем Android и iOS существующие фреймворки постоянно улучшаются, а новые добавляются, такие как распознавание речи или мобильные платежи. Растет количество устройств различных типов, на которые вы можете развернуть свои приложения. У вас могут быть экраны большего размера, экраны с более высокой плотностью пикселей и разрешением; у вас могут быть телефоны с двумя мониторами и странными формами из-за выреза под камеру. Нет никакого способа стоять на месте. Кроме того, Google требует, чтобы вы ежегодно обновляли свои приложения в магазине, чтобы они соответствовали новым уровням API Android, и Apple имеет аналогичные ограничения.
Мобильные устройства и пользовательский опыт будут продолжать развиваться, и будут появляться более простые способы взаимодействия с данными и сервисами. Виртуальная реальность (VR) растет, и уже существует множество мобильных приложений, которые предоставляют опыт дополненной реальности (AR), где виртуальный мир проецируется в реальный мир. Другие мобильные устройства больше не похожи на телефоны, а напоминают очки, которые можно носить.
Они созданы для того, чтобы сделать AR основным способом взаимодействия с компьютерными системами. Apple, Google, Microsoft, Meta и другие гиганты программного обеспечения прилагают много усилий, чтобы сделать эти устройства такими же популярными, как смартфоны.
Бессерверные бэкенды и базы данных NoSQL
Бессерверные архитектуры, контейнеры и микросервисы — это одни из модных buzzwords, которые можно услышать тут и там. Поскольку контейнерные технологии становятся все более зрелыми, становится практичным запускать и останавливать виртуальную машину (VM) просто для выполнения одной функции. Поставщики облачных веб-сервисов, такие как Amazon, предоставляют базовую инфраструктуру для создания подобных архитектур, где вы можете просто развернуть исходный код удаленной функции (см. AWS Lambda), которую хотите выполнить, и весь сложный аспект выделения VM, масштабирования и балансировки нагрузки становится прозрачным для программных архитекторов. С помощью таких технологий, как API Gateway, вы можете создавать, контролировать версии и управлять своими собственными REST API в любом масштабе с большой гибкостью и без лишних хлопот.
Как уже упоминалось, REST API растут, и появляются новые торговые площадки API, предлагающие широкий спектр самых разнообразных сервисов. Одна из них — apilayer.com.
Традиционные реляционные системы управления базами данных (RDBMS) на SQL больше не являются единственным выбором для хранения данных. NoSQL и другие типы хранилищ данных, такие как графовые базы данных, приобретают все большую популярность. Некоторые из самых интересных предложений в этой области — это открытая NoSQL база данных MongoDB, для которой Delphi предлагает прямую поддержку через FireDAC, NoSQL база данных Amazon DynamoDB, где вы можете настроить желаемое время отклика, и графовая база данных Neo4j, которая предлагает совершенно новый способ моделирования данных, где связи между данными так же важны, как и сами данные. Количество появляющихся решений для баз данных в пространстве NoSQL настолько велико, что мы, безусловно, не можем адекватно охватить эту область в коротком разделе этой книги. Это служит лишь отправной точкой, чтобы разбудить ваше любопытство и побудить вас к исследованию.
Революция ИИ
Недавний тренд, а может, лучше назвать его революцией, — это появление ИИ-сервисов и чат-ботов. Сервисы были доступны некоторое время от многих поставщиков, включая ведущих облачных провайдеров. Однако новое поколение систем на основе больших языковых моделей (LLM), самой известной из которых является ChatGPT, изменило общественное восприятие ИИ. Эта революция уже влияет на мир ИТ и жизни многих людей, и будет продолжать делать это способами, которые трудно понять и предсказать.
Как разработчик, вы можете использовать ИИ как часть своего инструментария, чтобы помочь вам писать код быстрее, писать лучший код, находить ошибки и получать предложения и рекомендации. GitHub Copilot — самый популярный инструмент в этой области на сегодняшний день. На момент написания этой книги существует несколько сторонних плагинов для Delphi для интеграции ChatGPT непосредственно в IDE. Некоторые из них вы можете найти в менеджере пакетов Delphi GetIt.
Однако не менее важно учитывать тот факт, что ваши приложения могут стать более мощными за счет внедрения возможностей ИИ, и вашим пользователям это, вероятно, понравится, так как это может значительно повысить их продуктивность. Существуют открытые API, SDK, фреймворки с открытым исходным кодом, ИИ-бэкенды "сделай сам" и так много других альтернатив, что нам даже нет смысла представлять их здесь. В следующем месяце вся картина снова будет другой!
Идеи для новых и инновационных приложений, которые вы можете создать
Ваше следующее мобильное приложение на Delphi, очевидно, будет очень крутым и успешным. Мыслите масштабно, а начинайте с малого.
Есть много источников вдохновения и мест для изучения Delphi. Одним из источников вдохновения для идей приложений может стать один из конкурсов на самое крутое приложение Delphi, который регулярно организует компания Embarcadero. Посмотрите, что создают другие разработчики Delphi, и вы удивитесь всем видам интересных приложений, созданных с помощью Delphi.
Вы также можете заглянуть в магазины приложений, чтобы найти успешные приложения и новые тренды. Мобильные приложения отличаются тем, что они могут получать так много отзывов и данных из физического контекста выполнения, используя датчики и камеры, чтобы понять, что делают телефон и его пользователь. Нет предела тому, что вы можете вообразить и создать.
Если вы еще не готовы начать свое собственное путешествие в создании приложений, вы можете присоединиться к проекту или библиотеке Delphi с открытым исходным кодом и продолжать учиться, внося прямой вклад в сообщество. Вы можете начать поиск проектов Delphi с открытым исходным кодом, посетив github.com/topics/delphi.
Резюме
Я надеюсь, что вам понравилось читать эту книгу так же, как нам понравилось ее писать. Это было великое путешествие.
Delphi — это весело. Мы уверены, что элегантность языка Object Pascal и техническое совершенство IDE Delphi и его библиотек будут продолжать очаровывать растущее число программистов сейчас и еще долгие годы.