15 тенденций в области разработки программного обеспечения в 2024 году

от автора

Содержание:


Интеграция искусственного интеллекта и машинного обучения

Искусственный интеллект и машинное обучение уже стали неотъемлемыми составляющими разработки программного обеспечения, и они продолжают устанавливать всё новые стандарты функциональности и производительности. Технологии AI/ML, от алгоритмов прогнозирования до автоматизированных проверок кода, повышают эффективность и расширяют возможности в различных отраслях.

Среди самых заметных прорывов 2023 года было появление расширенных функций ChatGPT, включающих возможности генерации кода и текста; а также заметное развитие искусственного интеллекта по части создания изображений на основе текстовых запросов.

Разработчики стали чаще использовать инструменты искусственного интеллекта при написании кода — и это не только ускоряет процесс кодирования, но и помогает сократить количество человеческих ошибок. Например, Copilot от GitHub предлагает разработчикам фрагменты кода и целые функции в режиме реального времени. Аналогичным образом, инструменты аналитики на базе искусственного интеллекта, такие как Tableau, позволяют бизнесу получать выводы из своих данных более эффективно, чем когда-либо.

Несомненно, в 2024 году продолжится развитие и интеграция этих технологий в рабочие процессы — особенно по части автоматизации задач по работе с написанием текста, кода и созданием изображений.

Блокчейн за пределами криптовалют

Блокчейн находит своё применение не только в сфере криптовалюты. Рост числа мобильных приложений приводит к увеличению числа приложений на основе блокчейна.

К основным характеристикам систем на основе блокчейн-ориентированного программного обеспечения (BOS) относятся:

  • Репликация данных: данные дублируются и хранятся в тысячах систем, что значительно повышает безопасность данных.

  • Проверка требований: прежде чем приступить к любой транзакции, системы BOS проверяют требования к транзакции, чтобы убедиться, что они соответствуют критериям для успешной проверки.

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

  • Криптография с открытым ключом: процесс транзакций в BOS основан на криптографии с открытым ключом, что обеспечивает безопасность и верифицируемость транзакций.

Однако у блокчейна есть и свои ограничения: масштабируемость и энергопотребление остаются препятствиями для его более широкого внедрения.

Микросервисы с множественными средами выполнения

Микросервисная архитектура — это метод разработки программных приложений в виде набора небольших, независимо развёртываемых и модульных сервисов, каждый из которых работает в собственном процессе и взаимодействует с помощью легковесных механизмов, часто API на основе HTTP.

Ожидается, что в 2024 году микросервисная архитектура продолжит свой рост и постепенно эволюционирует в микросервисы с множественными средами выполнения (multi-runtime microservices). Эта архитектура также известна как

Кибербезопасность 

Появление всё более изощрённых киберугроз делает безопасность одним из важнейших аспектов разработки. Стандартной практикой становится интеграция передовых протоколов безопасности и использование искусственного интеллекта для обнаружения угроз. Фокус смещается с реактивных на проактивные меры безопасности:

  • Акцент на DevSecOps. Компании интегрируют безопасность в свои процессы DevOps, создавая культуру, в которой безопасность является общей ответственностью всех заинтересованных сторон. Такой подход гарантирует, что вопросы безопасности являются неотъемлемой частью всего жизненного цикла разработки программного обеспечения.

  • Архитектура Zero Trust. На смену традиционной концепции периметра безопасности приходит фреймворк Zero Trust, который работает по принципу «никогда не доверяй, всегда проверяй». Это означает проверку каждого пользователя и устройства — независимо от того, находятся ли они в сети организации или за её пределами.

  • Более широкое использование шифрования. В связи с участившимися случаями утечки данных растёт тенденция к использованию надёжных методов шифрования для защиты данных — как при передаче, так и в состоянии покоя. Всё большее распространение получают передовые криптографические методы, такие как гомоморфное шифрование, позволяющее обрабатывать данные, которые остаются зашифрованными.

  • Фокус на практике безопасного кода. Всё больше внимания уделяется обучению разработчиков методам написания надёжного кода. Это включает в себя регулярные проверки кода, тестирование на уязвимости, а также использование инструментов статического и динамического анализа для выявления и устранения рисков безопасности.

  • Расцвет сети кибербезопасности (cybersecurity mesh). Эта концепция подразумевает гибкий, модульный подход к безопасности, при котором каждое устройство имеет свою собственную защиту, например брандмауэры и сетевые средства защиты. Это помогает создать более отзывчивую и адаптируемую инфраструктуру безопасности, способную справиться с динамичным характером современных киберугроз и сделать всю сеть более безопасной.

Дальнейшее внедрение VR и AR  

Поскольку технологии виртуальной (VR) и дополненной (AR) реальности становятся всё более доступными, спрос на такие приложения стремительно растёт во многих отраслях:

  • Образование: VR-технологии делают возможным проведение интерактивных уроков истории, географии и естественных наук; а также предлагают безрисковое медицинское обучение с помощью виртуальных симуляторов проведения операций. Например, с помощью Google Expeditions и других образовательных AR-приложений учащиеся могут исследовать исторические места, препарировать виртуальных животных или изучать 3D-модели сложных предметов.

  • Здравоохранение: Например, AR-приложение AccuVein помогает обнаружить вены для более лёгкого введения иглы, а инструменты планирования хирургических операций накладывают 3D-модели на анатомию пациента для более точного хирургического руководства.

  • Бизнес: VR всё чаще используется в бизнесе для создания прототипов, обучения персонала и обслуживания клиентов. В сфере недвижимости компании используют VR/AR-инструменты для организации виртуальных туров по объектам недвижимости; а также AR-приложения для визуализации того, как мебель или ремонт могут выглядеть в помещении перед совершением покупки.

Среди всего прочего, в 2024 году нас ожидают такие захватывающие события, как:

  • Гиперреалистичная виртуальная реальность: VR теперь может имитировать ощущения реального мира, например, шум дождя или запах летнего луга, тем самым стирая грань между виртуальностью и реальностью. И эта тенденция будет набирать обороты.

  • Расширение социальных VR-платформ: Социальные VR-платформы позволяют пользователям взаимодействовать в реальном времени, устраивать виртуальные вечеринки, посещать концерты и участвовать в многопользовательских играх.

  • Интеграция искусственного интеллекта в VR: Искуственный интеллект персонализирует опыт, адаптируясь к поведению пользователя, создавая динамические среды, которые реагируют на индивидуальные предпочтения и действия.

В этом видео вы найдете примеры гиперреалистичного VR:

Устойчивая разработка программного обеспечения

Зелёные вычисления и устойчивые методы разработки программного обеспечения привлекают всё больше внимания в связи с проблемами экологии. Разработчики всё больше внимания уделяют экологичным решениям, поддерживая такие инициативы, как Green Software Foundation и Sustainable Web Manifesto, которые продвигают энергосберегающие методы кодирования. Это подразумевает разработку кода, который сокращает время обработки, загрузки и запросов данных на сервере.

Ключевые аспекты устойчивой разработки программного обеспечения это:

  • Оптимизация программного обеспечения: оптимизация кода для снижения энергопотребления и повышения производительности.

  • Развёртывание: использование ресурсов только по мере необходимости, например, «ленивых» функций и облачных приложений для минимизации потерь энергии.

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

  • Хранящиеся данные: ограничение количества хранящихся данных и продолжительности их хранения в системе.

  • Размер данных: использование мультимедиа меньшего размера, где это возможно — для снижения потребностей в хранении и обработке данных.

  • Рефакторинг: регулярное обновление программного обеспечения с целью удаления устаревших или неиспользуемых фичей.

  • Отказ от сторонних компонентов: сокращение зависимости от крупных внешних компонентов, которые потребляют больше ресурсов.

  • Архитектура программного обеспечения: использование архитектур, повышающих эффективность и снижающих энергопотребление.

  • Выбор центра обработки данных: выбор хостинговых сервисов, которые придерживаются «зелёных» практик.

Вычисления

В этом году мы ожидаем прогресса в ключевых областях вычислений: Function-as-a-Service, облачные и граничные вычисления, а также, что особенно важно, квантовые вычисления.

Внесерверная обработка данных (FaaS)

Бессерверные вычисления, или функции как сервис (Functions as a Service, FaaS), находятся на подъёме. Ведущими в этой области являются AWS Lambda, Azure Functions и Google Cloud Functions. FaaS позволяет разработчикам создавать и запускать приложения и сервисы без управления инфраструктурой — а это ведёт к более эффективным и экономичным процессам разработки.

  • Один из ярких примеров — Netflix, использующая AWS Lambda для различных целей в рамках своей платформы потокового вещания. Netflix использует Lambda для таких задач, как кодирование видео, обработка аутентификации пользователей и управление бэкенд-процессами. Когда пользователь загружает видео, запускаются функции Lambda для кодирования и обработки контента в различные форматы, подходящие для потоковой передачи на различных устройствах. Это позволяет Netflix динамически масштабировать ресурсы в зависимости от спроса без управления серверами, что обеспечивает бесперебойную потоковую передачу для пользователей и оптимизирует расходы.

  • Spotify использует Google Cloud Functions для решения различных задач на бэкенде в рамках своей музыкальной платформы. Функции запускаются для управления аутентификацией пользователей, обработки пользовательского контента и выполнения задач на бэкенде для алгоритмов музыкальных рекомендаций, обеспечивая бесперебойный и персонализированный пользовательский опыт.

  • Дочерняя компания IBM, The Weather Company, использует IBM Cloud Functions для обработки и анализа больших объёмов погодных данных. Бессерверные функции позволили им выполнять обработку данных в режиме реального времени, генерировать прогнозы и предоставлять пользователям персонализированные оповещения о погоде в зависимости от их местоположения без необходимости управления базовой инфраструктурой.

Эти FaaS-решения, характеризующиеся событийно-ориентированной архитектурой, автоматически запускают выполнение в ответ на запросы и корректируют использование ресурсов по мере необходимости. Масштабируемость и отзывчивость упрощают процесс разработки, что особенно удобно для приложений с высоким трафиком. Бессерверные вычисления всё чаще интегрируются с IoT, чат-ботами и виртуальными помощниками.

Расширение облачных вычислений

Ожидается, что в 2024 году облачно-ориентированные технологии претерпят значительную эволюцию. Они станут более удобными для пользователей, предлагая повышенную производительность, экономию средств и большую гибкость при решении ИТ-задач. Amazon Web Services (AWS), Microsoft Azure и Google Cloud Platform расширяют свои сервисы, предлагая пользователям более продвинутую аналитику, возможности машинного обучения и улучшенные средства безопасности.

В этом видеоролике — обзор различных областей применения облачных вычислений:

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

Всплеск периферийных вычислений

Периферийные вычисления — это ИТ-архитектура, которая обрабатывает клиентские данные на границе сети, как можно ближе к источнику данных. Приближая вычисления к источникам данных, периферийные вычисления уменьшают задержки и расширяют возможности обработки данных в режиме реального времени.

Эта тенденция является ключевой для приложений, которые требуют немедленного анализа данных, таких как автономные транспортные средства (например, самоуправляемые автомобили Tesla используют периферийные вычисления) и технологии «умного города». В сфере здравоохранения периферийные вычисления обеспечивают конфиденциальность данных и позволяют проводить мониторинг и анализ состояния пациента в режиме реального времени. Эта технология также может изменить управление городским трафиком, оптимизируя расписание автобусов, регулируя полосы движения и потенциально направляя потоки автономных автомобилей — что демонстрирует её универсальность и влияние в различных сферах. Периферийные вычисления также имеют решающее значение для внедрения «умных сетей», что помогает предприятиям эффективнее управлять энергопотреблением.

Квантовые вычисления: новый рубеж

Квантовые вычисления — это передовая форма вычислений, в которой вместо классических битов используются квантовые биты, или кубиты. Используя принципы квантовой механики, такие как суперпозиция и запутанность, они позволяют обрабатывать данные со скоростью, недостижимой для традиционных компьютеров. Эта технология особенно эффективна при решении сложных задач, таких как криптография, оптимизация и молекулярное моделирование, поскольку обеспечивает экспоненциально более быстрые решения.

В этом видеоролике даётся краткое объяснение основополагающих принципов квантовых вычислений:

Хотя до повсеместного внедрения квантовых вычислений ещё далеко, их влияние на разработку программного обеспечения уже начинает проявляться. Среди лидеров — такие тяжеловесы, как IBM, Microsoft, Google, D-Wave и Amazon. IBM является лидером со своими Quantum System One и Two, оснащёнными мощными процессорами с количеством кубитов до 127. Microsoft фокусируется на топологических кубитах, интегрируя их в свою облачную платформу Azure для более широкого доступа. Лаборатория Google Quantum AI нацелена на разработку практического универсального квантового компьютера, а компания D-Wave специализируется на квантовом отжиге, решая сложные задачи оптимизации. Компания Amazon с помощью своих AWS Centre for Quantum Networking и Amazon Braket создаёт обширную инфраструктуру для квантовых вычислений.

Языки программирования

В 2024 году в программировании по-прежнему будет доминировать Python, при этом заметно возрастёт доля Rust.

Python

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

Python — самый популярный язык программирования с самыми высокими темпами роста (19%) согласно индексу PYPL, который измеряет частоту поиска руководств по языку в Google.

В опросе Stack Overflow 2023 года Python назван самым желанным языком для изучения разработчиками. Опередив Java впервые с 2012 года, Python теперь не просто входит в число двух лучших языков для разработки веб-приложений. Он также трижды за пять лет получал награду TIOBE Programming Language of the Year — признание, присуждаемое языку с наибольшим ежегодным ростом рейтинга. Обширный набор библиотек Python, которые легко интегрируются в код и масштабируются на более крупные приложения, открывает широкие возможности для разработки приложений как для веб-, так и для desktop-приложений, включая системные операции.

Рост числа пользователей языка Rust

Язык программирования Rust набирает обороты, особенно в тех областях, где ключевыми приоритетами являются производительность и безопасность. Его уникальные особенности делают его идеальным для программирования на системном уровне. В частности, Rust всё чаще используется во встраиваемых системах, где его способность предотвращать ошибки памяти и обеспечивать безопасность потоков имеет решающее значение. Кроме того, его применение в облачной инфраструктуре подчеркивает его надёжность и эффективность при решении высокопроизводительных вычислительных задач.

Разработка приложений

В мире приложений важными тенденциями являются более широкое распространение low-code и no-code платформ, прогресс в кросс-платформенной разработке и растущее использование прогрессивных веб-приложений.

Рост числа low-code и no-code платформ

Демократизация разработки программного обеспечения стимулируется появлением low-code и no-code платформ. Эти инструменты позволяют людям с минимальными знаниями в области программирования создавать и развёртывать приложения, значительно сокращая время разработки.

Такие платформы, как Microsoft Power Apps и Bubble, позволяют пользователям создавать приложения без написания кода. Эти инструменты особенно популярны для разработки бизнес-приложений, позволяя компаниям быстро создавать прототипы и развёртывать решения без привлечения большой команды разработчиков. Однако такие платформы не способны решать сложные задачи кастомной разработки.

Рост числа прогрессивных веб-приложений (PWA)

PWA (Progressive Web Apps) загружаются быстрее и требуют меньше ресурсов, чем нативные приложения. Они работают в автономном режиме и автоматически обновляются при каждом посещении. С точки зрения разработки они экономичны и эффективны, требуют меньшего количества версий для разных устройств, что приводит к затратам в 3-4 раза ниже, чем у нативных приложений. Эту технологию используют такие крупные компании, как Forbes, Starbucks и Pinterest.

Ключевым фактором растущей популярности PWA (Progressive Web Apps) среди разработчиков является их независимость от платформы. Это избавляет от необходимости создавать отдельные приложения для мобильных, планшетных и настольных компьютеров. Однако простота разработки — не единственное преимущество PWA с точки зрения экономии средств. Они также быстрее создаются и дешевле поддерживаются.

Чтобы узнать, как создать PWA, посмотрите это видео:

Разработка кросс-платформенных приложений

С момента появления мобильных приложений разработчики оказались перед выбором: создавать два нативных приложения для Android и iOS или одно кроссбраузерное приложение. Благодаря своей более высокой производительности, на рынке преимущественно доминировали нативные приложения.

Важным событием 2023 года, которое продолжит набирать обороты в 2024-м, станет появление новых инструментов, позволяющих создавать удобные кроссплатформенные решения и одновременно снижать затраты на разработку.

Кроссплатформенные приложения имеют множество преимуществ:

  • Более широкий охват: возможность использования на нескольких операционных системах (iOS, Android), что увеличивает потенциальную базу пользователей.

  • Ускоренное время разработки: один проект разработки вместо нескольких нативных приложений ускоряет процесс.

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

  • Общая кодовая база: возможность повторного использования кода и эффективность разработки.

  • Более простое развёртывание: обновления распространяются одновременно на всех платформах.

  • Эффективность использования ресурсов: требуется меньше ресурсов и меньшая команда разработчиков.

  • Экономическая эффективность: снижение затрат на разработку и сопровождение, поскольку для нескольких платформ используется единая кодовая база.

К популярным кроссплатформенным фреймворкам относятся: React Native, Flutter, Ionic и другие.


Материал подготовлен в преддверии старта онлайн-курса «Цифровизация и трансформация бизнеса».


ссылка на оригинал статьи https://habr.com/ru/articles/795391/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *