На Java чаще всего пишут именно корпоративные приложения для предприятий Америки и Европы. На внутреннем рынке Java почти не нужна. Там промышленность вышла из кризиса. Они сделали выводы и координально меняют менеджмент бизнеса. А для этого нужны новые подходы в планировании, учёте, взаимодействии. По-этому они меняют IT-инфраструктуру, на которой завязаны все процессы управления и планирования. И в этом секторе только Java имеет все необходимые средства. Даже NET не имеет таких возможностей. И дело не в самом языке. Он ни чем не лучше и не хуже C#.Всё дело в технологиях и инструментах, которые основаны на Java.В первую очередь- джавовские сервера приложений. Это не вэб-сервера. Это сервера, в которых работают Java-приложения. В спецификации JEE описано, что должны уметь эти сервера и описываются интерфейсы обращения к ресурсам и службам сервера. Разрабатываются, отлаживаются и тестируются они крупнейшими компаниями, такими как IBM,Oracle,ASF и др. Java-программисты описывают только логику приложения. Если нужен какой-нибудь ресурс или сервис, то он просто запрашивается у сервера. То, что на С# будет описываться в 50 строк, на С++ в 500,на Java описывается в одной строке. Просто строка с указанием нужного ресурса, EJB,Entity или чего то другого. И работать оно будет быстрее. Так как подготовлено сервером зараннее (пулы бинов, пулы соединений с БД и др. ) и не нужно тратить время на создание. Для более простых решений можно и не использовать тяжёлые, но мощные сервера. Можно воспользоваться более лёгкими вариантами. Например, контейнер сервлетов+Spring.И здесь Spring выступает в роли контейнера, который обеспечивает приложение всем необходимым по первому требованию.
Для вэб-интерфейса корпоративных приложений (это не сайты) существует несколько фреймворков, которые позволяют делать клиентскую часть на компонентной основе (как в WinForms).Например, стандартный JSF или GWT от Google.Это окна, менюшки, контролы и т. д. Кликнув по ссылке, ты видишь перед собой в браузере обычную windows-программу. Так как всё AJAX,то бухгалтер или менеджер работает как с обычным декстопным приложением.
Таких возможностей не предоставляет пока ни одна платформа. Чтоб лучше понять преимущества Java,конечно нужно увидеть воочию возможности JEE и связанных с ней фреймворков и технологий.
На рынке мобильных ОС сейчас стремительно набирает обороты Android.А это то же Java.И здесь непаханая целина.
А сайты на Java практически не делаются. И причина не в сложности или медленности. Причина в основном в разнообразии Java.Очень много различных библиотек и фреймворков. У них очень много версий. Они часто обратно не совместимы. Для корпоративных приложений это решается использованием maven для сборки, а также тем, что предприятия имеют свои сервера. Хостер же не может держать у себя все версии библиотек. А если может, то каждый сайт на сервере будет в память грузить свою версию библиотек. Это положит сервер хостера 5 сайтами, так как не хватит на всех оперативной памяти. А заставить Java программистов писать под дудочку хостера очень трудно. Это основная причина.
еще забыл отметить очень сильный ее плюс: сборка мусора (хотя я бы за это убывал сразу) и потокобезопасность (вот это рил удобно)!
☕ Что пишут на Java: области применения
Преимущества Java, как языка программирования
В подготовке данного материала нас поддержал Факультета Java-разработки онлайн-университета GeekBrains. Подробно о плюсах работы с Java мы уже рассказали в статье «Преимущества языка программирования Java». В этот раз поговорим о том, как эти преиущества влияют на использование языка на практике.
Главная черта Java – адаптивность. Программное обеспечение, написанное на одной платформе, запустится и на других устройствах. Программы Java работают на Java Virtual Machine, предоставляющей оптимизацию кода и управление памятью. Java также обеспечивает масштабируемость – одновременную обработку нескольких запросов и многопоточное выполнение программы. Все эти возможности языка, конечно, учитываются разработчиками.
Сферы применения языка Java
Java используется во многих сферах начиная с e-commerce веб-сайтов и заканчивая приложениями для Android, в научных исследованиях и финансах, играх вроде Minecraft и настольных приложениях Eclipse, Netbeans и IntelliJ.
Мобильные приложения Android
Java Micro Edition – это популярная кроссплатформенная среда, применяемая для создания приложений смартфонов. Примеры мобильных приложений, написанных на Java: Netflix, Tinder, Google Earth, Uber и т. д.
Игры на Java
Сайт Java-Gaming.org полностью посвящен созданию игр на Java. Библиотека LWJGL значительно упрощает этот процесс. Примеры написанных на Java игр перечислены в статье 38 лучших приложений (англ.).
Серверные финансовые приложения
Глобальные инвестиционные банки Goldman Sachs, Citigroup, Barclays, Standard Charted используют Java для написания фронт и бэк-офисов систем электронной торговли, систем расчетов и подтверждения транзакций, обработки данных и т. д.
Веб-приложения на Java
Из представленной ниже таблицы следует, что Java – самый популярный серверный язык среди ведущих технологических компаний. В сравнении с другими языками программирования, Java обладает лучшей безопасностью, адаптируемостью и масштабируемостью приложений.

На Java создано множество opensource-инструментов для мониторинга и обновления данных. К примеру, Netflix использует Java одновременно для разработки инфраструктуры на Linux и кодирования видео на Windows-машинах. Веб-приложения электронной коммерции применяют Java на таких платформах, как Broadleaf.
Программы для сопровождение кода
Инструментальное программное обеспечение – это набор компьютерных программ, которые разработчики используют для программирования, анализа, обслуживания, отладки и поддержки других программ и приложений. Примеры: Eclipse, IntelliJ Idea и IDE NetBeans.
Встраиваемые системы на Java
Встроенные модули Java предоставляют различные способы взаимодействия с сервером, а архитектура модели безопасности песочницы обеспечивает высокий уровень защиты данных. Модули Cinterion Java успешно используются в среде межмашинного взаимодействия ( M2M- machine to machine), включая умные счетчики, системы управления автопарком, промышленной автоматизации и мобильного здравоохранения.
Технологии больших данных
Большие данные – одна из самых популярных тем в мире новейших технологий. Автоматическая сборка мусора и надежное управление памятью делают Java одним из приоритетных языком для реализации алгоритмов машинного обучения. Многие известные средства обработки больших данных (Hadoop, Spark, Mahout) являются Java-фреймворками.
Примеры использования Java в крупных корпорациях
Square
Компания Square помогает продавцам превращать мобильные устройства в платежные системы. Программное обеспечение Square построено с применением Ruby и C++, но стек обработки денежных транзакций основан на Java.
Hadoop
Для Twitter нет ничего важнее масштабируемости. Приложением пользуются более 500 млн человек. Проект начинался, как демонстрация того, на что способен фреймворк Ruby on Rails. К сожалению, со временем стало понятно, что RoR плохо справляется с обработкой большого числа запросов данных в реальном времени, поиском по определенной теме или хештегам. Одним из преимуществ Java является масштабируемость – это послужило одной из главных причин перехода с Ruby на Java.
Заключение
Учебная программа охватывает все необходимые темы: синтаксис Java, объектно-ориентированное программирование, базы данных и т. д. Вы подробно изучите основы Java, фреймворки Spring и LibGDX, интеграцию платежных систем. Для практики навыков вы разработаете пять проектов:
Все эти проекты послужат отличным дополнением к портфолио для подачи заявки на работу. Онлайн-университет также поможет с трудоустройством.
Что пишут на java? [закрыт]
Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы он был сосредоточен только на одной проблеме.
Я никак не понимаю, что я буду делать на работе, выучив джаву. Назовите, пожалуйста, примеры программ, к-е на ней чаще пишутся. Что я могу написать, чтобы показать работодателю? Я начала учить ее из интереса, интерес не пропадает, и вот подумалось мне: надо как нибудь использовать накопленные знания,и тут я поняла, что понятия не имею что, кого, чего. написание игр не интересует.
2 ответа 2
Что можно делать на Java? То же, что и на C, C++, Python, PHP, Ruby. Все, что придет в голову:
Много примеров. Хороший и полезный язык.
Далее взято из этого источника
Преимущества Java как языка программирования Объектно-ориентированный: в Java все является объектом. Дополнение может быть легко расширено, так как он основан на объектной модели.
Платформонезависимый: в отличие от многих других языков, включая C и C++, Java, когда был создан, он не компилировался в платформе конкретной машины, а в независимом от платформы байт-коде. Этот байт код распространяется через интернет и интерпретируется в Java Virtual Machine (JVM), на которой он в настоящее время работает.
Простой: процессы изучения и введение в язык программирования Java остаются простыми. Если Вы понимаете основные концепции объектно-ориентированного программирования, то он будет прост для Вас в освоении.
Безопасным: методы проверки подлинности основаны на шифровании с открытым ключом.
Архитектурно-нейтральным: компилятор генерирует архитектурно-нейтральные объекты формата файла, что делает скомпилированный код исполняемым на многих процессорах, с наличием системе Java Runtime.
Портативный: архитектурно-нейтральный и не имеющий зависимости от реализации аспектов спецификаций — все это делает Java портативным. Компилятор в Java написан на ANSI C с чистой переносимостью, который является подмножеством POSIX.
Прочный: выполняет усилия, чтобы устранить ошибки в различных ситуациях, делая упор в основном на время компиляции, проверку ошибок и проверку во время выполнения.
Многопоточный: функции многопоточности, можно писать программы, которые могут выполнять множество задач одновременно. Введение в язык Java этой конструктивной особенности позволяет разработчикам создавать отлаженные интерактивные приложения.
Интерпретированный: Java байт-код переводится на лету в машинные инструкции и нигде не сохраняется. Делая процесс более быстрым и аналитическим, поскольку связывание происходит как дополнительное с небольшим весом процесса.
Высокопроизводительный: введение Just-In-Time компилятора, позволило получить высокую производительность.
Распространенный: предназначен для распределенной среды интернета.
Динамический: программирование на Java считается более динамичным, чем на C или C++, так как он предназначен для адаптации к меняющимся условиям. Программы могут выполнять обширное количество во время обработки информации, которая может быть использована для проверки и разрешения доступа к объектам на время выполнения.




