- PVSM.RU - https://www.pvsm.ru -

Исследование: Java самый популярный язык в облаке — кто и почему его использует

Некоммерческая организация Cloud Foundry Foundation (CFF [1]) в конце лета опубликовала рейтинг [2] самых востребованных языков программирования для корпоративных облачных разработок. Согласно их исследованию, лидером стал [3] Java.

Под катом расскажем почему и как его используют ИТ-компании и другие организации.

Исследование: Java самый популярный язык в облаке — кто и почему его использует - 1 [4]
/ фото r. nial bradshaw [5] СС [6]

В исследовании CFF приняли участие более 600 ИТ-специалистов. И согласно опросу, Java является самым популярным языком для разработки корпоративных приложений — его выбрали 58% респондентов. При этом выбор в пользу этого языка программирования также сделали 57% специалистов, использующих в своей работе частные облака.

Java также занимает первое место по популярности среди других языков программирования согласно рейтингу [7] TIOBE, который ранжирует ЯП по числу поисковых запросов на порталах Wikipedia, Google, YouTube и др. По данным за август 2018 года, рейтинг Java составляет 16,88%.

Кто и как использует Java в облаке

Одной из главных причин популярности этого языка программирования (в том числе в облаке) считается [8] широкий выбор библиотек [9]. Например, сотрудники компании OverOps в 2017 году выделили и проанализировали [10] около 260 тыс. уникальных Java-библиотек на GitHub. Отметим, что наиболее популярными из них оказались: JUnit [11] (для написания тестов), Mockito [12] (мок-библиотека) и slf4j [13] (представляет мощный фасад [14] для различных систем протоколирования на Java). Они же лидируют [15] в рейтинге, представленном на сайте DZone.

Большое количество библиотек делает ЯП гибким, что позволяет реализовывать новые функции. Эта особенность языка помогла Spotify построить набор модулей для разработки микросервисов Apollo [16]. Он управляет жизненным циклом сервисов и долгое время использовался стриминговой платформой в продакшене.

Ещё одно преимущество Java — адаптивность. Благодаря виртуальной машине Java (JVM [17]), написанный на этом ЯП код можно запускать на Windows, Linux и MacOS. Это дает реализовать принцип «написано однажды, работает везде [18]», который особенно ценится при разработке облачных приложений. Директор по разработке ПО Twitter Роберт Бенсон (Robert Benson) называет [19] это одной из причин, почему компания перешла на JVM.

«Переносимость» Java отметили [20] и в Netflix. Дело в том, что инфраструктура компании работает на Linux, а кодирование видео выполняется на машинах Windows. В Netflix отмечают, что большое количество инструментов с открытым исходным кодом на Java упрощает мониторинг и обновление данных в «разномастных» средах.

Ещё одна причина, по которой компании выбирают Java, — масштабируемость. Эдвард Ву (Edward Wu), ИТ-директор компании-разработчика игр Niantic Labs, говорит, что возможности Java очень помогли [21] им при разработке Pokémon Go. Сразу после запуска игру скачали более 500 млн раз.

Справиться с наплывом трафика им помогла облачная платформа Java с контейнерами и фреймворком Kubernetes. Благодаря ей они смогли эффективно синхронизировать состояние миллионов сущностей виртуального мира между устройствами игроков.

Где ещё используют Java

Помимо облачных сервисов, Java используют и в разработке других решений. Например, на нем пишут приложения для интернета вещей: приложения для работы с разного рода датчиками [22], камерами видеонаблюдения [23] и др.

Java популярен и в робототехнике. Программист Дэн Ройер (Dan Royer [24]) создатель Makelangelo [25] — арт-робота с открытым исходным кодом, который рисует постеры (код есть на GitHub [26]) — рассказывает, что использует Java практически во всех своих разработках. Причина — продуманная документация языка.

Исследование: Java самый популярный язык в облаке — кто и почему его использует - 2
/ фото NASA [27] PD

ЯП популярен и в космической отрасли. Например, его используют в НАСА. Как отмечает [28] инженер Шон Хенли (Sean Henley), Java позволяет оперативно и без высоких затрат реализовывать кроссплатформенные решения. В частности, на Java написаны инструменты для визуализации данных с телескопа имени Джеймса Уэбба [29].

Набор API World Wind [30] НАСА также создан на Java. Он помогает строить интерактивные 3D-карты земного шара. Данные для этого система берет из спутниковых снимков Landsat [31] и SRTM [32].

Java нельзя назвать новой технологией. Со времени его создания прошло уже более 20 лет. На рынке появились молодые ЯП, готовые составить ему конкуренцию. Однако язык по-прежнему широко используется. Он постоянно обновляется [33], обзавёлся огромным комьюнити [34], и ожидается, что популярность Java будет только расти.


О чем еще мы пишем в нашем блоге о корпоративном IaaS:

Автор: ИТ-ГРАДовец

Источник [38]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/java/291219

Ссылки в тексте:

[1] CFF: https://en.wikipedia.org/wiki/Cloud_Foundry#Cloud_Foundry_Foundation

[2] опубликовала рейтинг: https://www.cloudfoundry.org/wp-content/uploads/Developer-Language-Report_FINAL.pdf

[3] лидером стал: https://www.zdnet.com/article/cloud-foundry-survey-finds-top-enterprise-languages/

[4] Image: https://habr.com/company/it-grad/blog/422057/

[5] r. nial bradshaw: https://www.flickr.com/photos/zionfiction/21215722783/

[6] СС: https://creativecommons.org/licenses/by/2.0/

[7] рейтингу: https://www.tiobe.com/tiobe-index/

[8] считается: https://stackoverflow.com/questions/3740692/which-programming-language-for-cloud-computing

[9] библиотек: https://docs.oracle.com/javase/8/docs/api/

[10] проанализировали: https://blog.takipi.com/the-top-100-java-libraries-in-2017-based-on-259885-source-files/

[11] JUnit: https://junit.org/junit4/javadoc/4.12/org/junit/package-summary.html

[12] Mockito: https://site.mockito.org/

[13] slf4j: https://www.slf4j.org/

[14] мощный фасад: https://ru.wikipedia.org/wiki/Slf4J

[15] лидируют: https://dzone.com/articles/20-useful-open-source-libraries-for-java-programme

[16] Apollo: http://spotify.github.io/apollo/

[17] JVM: https://ru.wikipedia.org/wiki/Java_Virtual_Machine

[18] написано однажды, работает везде: https://en.wikipedia.org/wiki/Write_once,_run_anywhere

[19] называет: https://go.java/twitter.html

[20] отметили: https://go.java/netflix.html

[21] помогли: https://www.theserverside.com/feature/How-Pokemon-Go-created-a-Kuburnetes-powered-Java-cloud

[22] разного рода датчиками: https://github.com/androidthings/sensorhub-cloud-iot

[23] камерами видеонаблюдения: https://dzone.com/articles/webcam-streaming-using

[24] Dan Royer: https://github.com/i-make-robots

[25] Makelangelo: http://www.makelangelo.com/

[26] GitHub: https://github.com/MarginallyClever/Makelangelo-software/releases

[27] NASA: https://commons.wikimedia.org/wiki/File:PCA1.jpg

[28] отмечает: https://jaxenter.com/netbeans/developing-nasas-mission-software-with-java

[29] телескопа имени Джеймса Уэбба: https://ru.wikipedia.org/wiki/%D0%94%D0%B6%D0%B5%D0%B9%D0%BC%D1%81_%D0%A3%D1%8D%D0%B1%D0%B1_(%D1%82%D0%B5%D0%BB%D0%B5%D1%81%D0%BA%D0%BE%D0%BF)

[30] World Wind: https://worldwind.arc.nasa.gov/

[31] Landsat: https://landsat.usgs.gov/

[32] SRTM: https://ru.wikipedia.org/wiki/Shuttle_Radar_Topography_Mission

[33] обновляется: https://developer.ibm.com/javasdk/2018/04/26/java-standard-edition-ibm-support-statement/

[34] комьюнити: https://community.oracle.com/community/technology_network_community/java/

[35] Как разместить 100% инфраструктуры в облаке IaaS-провайдера и не пожалеть об этом: https://iaas-blog.it-grad.ru/blog/onlajn-uslugi-dlya-b2cb2b-iz-oblaka/

[36] Облачные технологии в финансовой сфере: опыт российских компаний: https://iaas-blog.it-grad.ru/kejsy/oblachnye-texnologii-v-finansovoj-sfere-opyt-rossijskix-kompanij/

[37] Серверы для SAP: основные платформы: https://iaas-blog.it-grad.ru/zhelezo/servery-dlya-sap-osnovnye-platformy/

[38] Источник: https://habr.com/post/422057/?utm_source=habrahabr&utm_medium=rss&utm_campaign=422057