Пользователи сайта Quora поделились своими мнениями, почему язык программирования Java теряет популярность. Мы выбрали наиболее интересные на наш взгляд.
Раду Теодореску
Когда Java появился, этот язык программирования выглядел крайне многообещающе по ряду причин:
- универсальность (написанная на данном языке программа будет отлично работать);
- отличная производительность;
- его намного проще выучить, нежели C++;
- данный язык был прекрасной альтернативой в мире, где центром цифровой вселенной являлась Microsoft.
И на протяжении достаточно долгого времени этот язык отлично подходил для решения ряда задач, пока со временем все те «столпы», на которых он стоял, не начали рушиться:
- Универсальность:
- в вопросах веб-разработки на сегодняшний день Java проигрывает более удобному Javascript;
- Java так и не смог стать отличным вариантом для разработки настольных приложений (не считая нескольких редких исключений);
- Apple не стремится использовать данный язык в своей OSX, поэтому нет особых причин для использования Java в iOS-разработке;
- но мы все знаем, что Java – это отличный вариант для Android-платформы, и этот факт мог бы стать решающим для возрождения этого языка. Однако, исходя из некоторых языковых разногласий, которые возникли между крупнейшими компаниями Oracle и Google, Google теперь не особо стремится активно продвигать этот язык.
- Его все еще намного проще использовать, нежели C/C++, однако он все-таки проигрывает в простоте многим современным языкам (в то время как .NET, C++ и даже JS продолжают делать впечатляющие успехи в данном вопросе). Поэтому, к примеру, в проектах, где ключевая значимость отдается производительности, более предпочтительным вариантом выглядит современный C++.
- На сегодняшний день Microsoft не занимает центральное место в нашем мире – большинство компаний-гигантов, которые использовали Java (Sun, IBM и другие), уже давно исчезли или не занимают столь ключевую позицию на рынке. А современные крупные игроки, наподобие Oracle и Google, не выказывают явного желания захватить с собой Java в следующее десятилетие.
Я до сих пор использую только этот язык программирования, чтобы решать задания на портале HackerRank, и я уверен, что Java будет продолжать пользоваться некоторой популярностью еще несколько десятилетий, но его лучшие дни, несомненно, остались в прошлом.
Циприан Кхулд, разработчик программного обеспечения на языке C++ в компании Arxan Technologies
Сложно ответить на вопрос, становится ли Java менее популярным, потому что это зависит от того, о чем именно идет речь.
Однако я могу с точностью сказать, что Java теряет свою популярность в качестве «хипстерского» языка. И если теперь спросить бородатого хипстера-программиста, на каком именно языке он создавал свой веб-сервис, то он назовет на Java, а, скорее, Go или NodeJS – теперь эти языки заняли место «хайповых». Нечто подобное можно сказать и о прежнем стремлении заменять кодовые базы с языка C++ на Java для повышения уровня безопасности – сейчас, скорее, в качестве более безопасной замены будут использовать Rust.
Однако в то же время Java все равно остается крупным игроком в своей сфере по нескольким причинам:
- Java – это все еще лингва франка для многих сервисов и веб-страниц, особенно в сфере финансов. Java также используется для внутренних баз данных многих предприятий.
- Конечно, нельзя не упомянуть Google, Twitter и многие другие компании, которые используют Java.
- Многие значимые системы сборки (к примеру, Jenkins или TeamCity) построены на Java.
- И, конечно же нельзя забывать про Android.
Поэтому, можно сделать вывод, что хоть Java и теряет некоторые свои позиции, однако этот язык все еще является крайне популярным.
При этом я совершенно точно не могу сказать, что я являюсь фанатом или даже любителем Java. Лично я предпочитаю C# для большинства моих проектов. NodeJS использую для создания стандартных веб-сервисов. Вообще, на мой взгляд, на сегодняшний день C# намного круче Java по ряду пунктов, при этом Java вряд ли сможет догнать C# в ближайшие пару лет.
Сужит Кумар Чакрабарти, специалист в сфере программного обеспечения и языков программирования
Чтобы ответить на вопрос касаемо Java, необходимо в целом понимать концепт, почему языки программирования (или даже целые технологии) в какой-то момент с течением времени становятся менее популярными.
Один из ключевых пунктов, который стоит принимать во внимание, это то, насколько дорого обходится «подгон» языка программирования под возникающие тренды. Если язык с течением времени становится все более популярным, то очевидно, что база его пользователей неуклонно растет. И любое изменение, которое вносится в язык, не должно нарушить все те миллиарды строк кода, которые были ранее написаны и введены в эксплуатацию. И эта необходимость в обратной совместимости значительно замедляет развитие языка. А значит, чем популярнее язык, тем сложнее ему в дальнейшем развиваться.
В некоторых случаях это приводит к тому, что язык больше не в состоянии соответствовать самым последним требованиям. С другой стороны, пользователи этого языка могут в явную выказывать свое желание использовать новые функции, которые, по их мнению, должны быть добавлены в него. В какой-то момент кого-то из пользователей перестает устраивать язык (исходя из его неспособности развиваться), поэтому они переходят на другой, более новый, легкий, который не успел обрасти огромным количеством прежнего «багажа». С этого момента начинается конкуренция между «старым» и «новым» языками, и как только пользователи начинают все чаще и чаще делать выбор в пользу способности с легкостью подстраиваться под требования современности, побеждает «новый» язык, а падение «старого» кроется не за горами.
Однако если посмотреть с другой стороны, то выходит, что старые языки, как и старые привычки, оказываются достаточно живучими. Так, Java, C++ или C – это гиганты, на которых на сегодняшний день построено слишком много проектов. И хоть молодые и более способные к изменениям языки могут занимать лидирующие позиции в рейтингах популярности, однако Java, C++ или C точно будут востребованы еще несколько десятилетий.
Джон Смит
Честно признаться, я не особо понимаю, почему многие люди продолжают набрасываться на Java. Существует ряд очевидных причин, которые указывают на то, что Java не сдает свои позиции.
Так, у Java огромное количество фреймворков и отличная API библиотека. Кроме того, огромное количество продуктов в банковской сфере, оборонной отрасли, а также в других сферах написаны именно на Java, поэтому Java-разработчики будут востребованы еще достаточно долгое время. Java адаптируется, когда для этого возникает необходимость.
Что ждет этот язык в будущем? Скорее всего, мы увидим еще большее количество производных продуктов от Java, особенно учитывая, что JVM «работает» и с другими языками, такими как Scala и Kotlin. Существуют огромное количество кода на C++, которые должны быть переписаны на Java ;)
По моему мнению, Python, Go, Ruby, C, C#, C++ – все эти языки нужно использовать тогда, когда в этом возникает необходимость, либо же вам предлагают высокооплачиваемый проект. Лично для меня Java является этаким «швейцарским ножом», который отлично подходит для большинства случаев и прекрасно справляется с решением многих задач.
Комментарии
Страницы
> универсальность (написанная на данном языке программа будет отлично работать)
Лег чуть ли не с первой фразы... ;))))
А я лёг со второй -- "отличная производительность".
Эх, девочки, вам бы только "Квору" и переводить. Ничего-то вы не изведали. Прямь, как virgo о сексе.
А что не так? По тексту эти пункты относятся к: "Когда Java появился ... выглядел крайне многообещающе". Имеем классическую ситуацию "хотели как лучше, получилось как всегда" (С).
> А что не так?
Ну, ЛЮБАЯ программа на Java по дефолту будет отлично работать.
P.S. Я понимаю, что подразумевалось, но надо же нормально мысль выражать.
Ну а что взять с Раду Теодореску. Он явно румын/молдаванин, т.е. английский для него не родной :)
Да не в Раду дело... Английский ему явно роднее, чем Анастасии Ефимчик умение формулировать мысль...
https://www.quora.com/Why-is-Java-losing-popularity/answer/Radu-Teodorescu-4
С самого начала перлы... Про JS, который лучше Java для веба. Эти люди вообще понимают чего-нибудь?
Не читая, заинтересовала подача материала: "12 книг для изучения языка программирования JavaScript" → "Почему Java теряет популярность?".
И чем именно заинтересовала?
алогичностью.
Страницы