В мире разработки программного обеспечения все изменяется очень быстро. Порой очень тяжело разглядеть тренды во всей болтовне и спорах о новых языках и фреймворках. Все ближе и ближе завершение года, так какими же были его тенденции.
Рост популярности последней версии Javascript
JavaScript / ECMAScript версии 6 (широко известный как ECMAScript 2015 или ES6) был выпущен в июне 2015 года. За это время он приобрел значительную популярность среди веб разработчиков за свою производительность и новые стандарты. Все основные браузеры и Node.js более чем на 90 процентов ES6-совместимы. В настоящее время, мы видим, значительно больше ES6 синтаксиса в продакшн. Также крупные компании, такие как Google и Airbnb, активно используют его в своих продуктах, тем самым поддерживают и стандартизируют синтаксис ECMAScript.
Однако ES6 не был принят повсеместно. Некоторые разработчики должны поддерживать старую версию JavaScript по разным причинам. Разработчики, которые хотят использовать ES6, но по-прежнему должны поддерживать старые версии браузеров, могут использовать разные инструменты. В этом случае, transpilers или polyfills могут преобразовать современный код ES6 к старому синтаксису. Либо же можно использовать Typescript, который объединяет в себе все современные возможности для разработки.
Backend как сервис
Backend как сервис, или BaaS, стал значительно более популярным в 2016 году. BaaS используется для выполнения рутинных задач, такие как облачные хранилища данных и Push нотификации. С помощью этих услуг, разработчики могут сосредоточиться на своей основной специализации и не тратить время. В то время, как сервисы делают то, что они умеют лучше всего. Услуги Backend API процветают, потому что предоставляют более удобный интерфейс для взаимодействия с разными службами или сервисами. Разработчики также чаще стали использовать композицию. Общая система состоит из нескольких небольших приложений. В такой системе, эти небольшие приложения легко предоставляются сторонними службами.
Простое управление и развертывание образов
Такие услуги, как Docker и Packer стали основой для многих команд разработчиков в 2016 году. Эти услуги позволяют инженерам быстро создавать и тиражировать образы машин, называемых контейнерами. В них можно запускать программное обеспечение, системные утилиты, библиотеки и т.д., гарантируя, что у них есть все, необходимое для работы в реальных условиях. Разработчики могут быстро создавать прототипы проекта в виртуальной среде, с предварительно настроенной системой управления версиями. А затем легко развернуть новую версию на нескольких серверах.
Функциональные языки программирования
Функциональные языки программирования, такие как Haskell, Clojure и Scala постоянно набирали популярность в течение 2016 года. Использование этих серверных языков вызвана взрывным ростом числа смартфонов и других устройств в сети. Наши гаджеты становятся все более мощными и сервера становятся узким местом для производительности. Поэтому увеличение пропускной способности сервера, для выполнения параллельных задач, делает его более отзывчивым. При взаимодействии с большим количеством подключенных устройств, функциональная модель программирования работает более эффективно. Т.к. нет необходимости в сложной синхронизации при параллельной работе на нескольких ядрах или машинах. Это дает функциональной парадигме врожденное преимущество над объектно-ориентированным подходом при выполнении и обработке веб-запросов.
Материал дизайн и компоненты
Все было интересно в 2016 году и с точки зрения дизайна. Мы увидели material design и компонентный подход во многих продуктах Google. Теперь он используется практически во всем портфеле сервисов компании - системы (ChromeOs, Android), приложения (Google Chrome, Drive, Google Play Music), веб-сайты (YouTube, AdSense) и даже веб-поиск. Мы видим материальные аспекты дизайна в Android-приложениях Slack, Twitter, Spotify, Airbnb and Wikipedia. Тем не менее, другие платформы (IOS, Tizen, Windows, MacOS, Ubuntu) - продолжают использовать свои стили.
Итоги
2016 год принес много интересных наработок в программном обеспечении. 2017 год обещает быть еще лучше и интереснее по мере роста функциональных языков программирования и JavaScript.