Недавно в моей компании разгорелся бесконечный спор о языке.
Излишне говорить, что всем нравится язык/стек, с которым они имеют дело. Так что я не могу спорить о том, почему не другие языки, но я могу сказать, почему Java является моим языком по умолчанию.

Прежде чем я начну, позвольте мне сказать вам, сколько языков я владею сегодня, поскольку считается удаленная серверная сторона.

а. C++, Java,C#.Net, Scala, Groovy, Javascript (Node.js) и всегда готовы исследовать больше

Я начал свою карьеру 12 долгих лет назад, будучи новичком, и начал работать над проектом под названием Rule Engine, разработанным на VC++.

Они мне тоже нравились, но C++ оставался первой любовью. Я считал, что по сравнению с другими программистами, если я выучу язык достаточно глубоко, чтобы стать мастером (да, потому что я был очень впечатлен такими людьми, как Скотт Майерс, Херб Саттер, Алексндраску (создатель D), Дон Бокс, «компьютерщик» и многие другие, все они были программистами на C++.

Перенесемся вперед. Я присоединился к запуску «веб-стартапа», который создавал веб-приложение. и меня попросили вести. Мы перестроили весь серверный код на Java, но опять же кто-то другой взял на себя ответственность за внешний интерфейс, который, по словам программиста C++ внутри меня, был «веб-сайтом».

Его производительность лишь немного медленнее по сравнению с C++ и незначительна для веб-приложения, где в игру вступают другие аспекты архитектуры приложения, но Java никак не может быть медленнее, чем PHP, Python, Ruby и т. д.

Итак, вы должны вызвать Java

  • это высокая производительность
  • Он имеет огромную экосистему. Так много веб-фреймворков на выбор.
  • Это корпоративный уровень
  • Это единственный язык, который работает на 6 миллиардах устройств.
  • Он стабилен и останется популярным языком в ближайшем будущем.
  • Его экосистема хорошо управляется Apache.
  • Нет недостатка в программистах
  • JVM каждый день открывает новые возможности
  • Доступно множество инструментов мониторинга
  • С Java8 теперь у программистов есть возможность функционального программирования.

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

Они не умеют находить утечки памяти в программе.

С Java ничего нельзя сделать. Вы хотите создавать настольные приложения, используя JavaFX. Вы хотите веб-программирование, вы его получили. Вы хотите перейти на более низкий уровень сети? Да, пожалуйста, сделайте это. Реактивный? да у тебя Vert.x, Акка. Большие данные? О, да, вся инициатива по работе с большими данными основана на технологиях на основе Java/JVM. Я не могу придумать вариант использования, где нельзя использовать Java.

Все, чего вы можете достичь с помощью Python и Ruby, вы можете сделать с помощью Java. Возможно, вам не понравится синтаксис, но обширная экосистема вокруг Java гарантирует, что вы никогда не запутаетесь при выборе библиотеки или инструмента.

и если вы знаете Java, то вы знаете JVM, а если вы знаете JVM, вы можете выбрать любой язык по вашему выбору, включая Python.

Так что да, я думаю, вы находитесь в безопасном месте с Java, которая очень хорошо изучена с бесконечной документацией и остается одним из лучших вариантов программистов в течение последних 2 десятилетий, и я не вижу, чтобы ее слава исчезла в ближайшее время.

Таким образом, работа с Java похожа на работу с MNC мирового класса… немного старой школы, но все же лучше, чем многие стартапы, и при этом выполнять то, что обещает. Здесь очень мало сюрпризов.

Удачного кодирования !!