|
@@ -0,0 +1,58 @@
|
|
|
|
|
+# Что такое Java
|
|
|
|
|
+**Java** — это объектно-ориентированный язык программирования, который был создан в 1995 году Джеймсом Гослингом и его командой Sun Microsystems и успешно использовался для внедрения новых технологий и разработки уникальных приложений.
|
|
|
|
|
+
|
|
|
|
|
+Благодаря своей универсальности и кроссплатформенности Java стал одним из самых гибких и мощных языков программирования и до сих пор считается неотъемлемой частью большинства IT-проектов.
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+## Особенности языка программирования Java
|
|
|
|
|
+
|
|
|
|
|
+**1. Объектно-ориентированность**
|
|
|
|
|
+Java — это объектно-ориентированный язык программирования. То есть каждый компонент программы — «объект» — содержит в себе все необходимые данные, а также методы для их обработки. Благодаря этому появляется возможность легко использовать один и тот же код в разном программном обеспечении.
|
|
|
|
|
+
|
|
|
|
|
+**2. Кроссплатформенность**
|
|
|
|
|
+Работать приложение, созданное на Java, может на любой аппаратной платформе, которая поддерживает запуск Java Virtual Machine — Windows, Android, Linux. Причем это позволяет использовать приложение на разных платформах, даже не меняя его код. Именно кроссплатформенность стала одной из особенностей, благодаря которым начался резкий рост популярности Java.
|
|
|
|
|
+
|
|
|
|
|
+**3. Многопоточность**
|
|
|
|
|
+Это означает, что в рамках одного приложения на Java есть возможность работать сразу с несколькими задачами. Таким образом на Java можно создавать высоконагруженные, многозадачные программы, которые будут полезны, например, для использования на веб-серверах. Также подобные программы хороши для баз данных с большими объемами информации.
|
|
|
|
|
+
|
|
|
|
|
+**4. Сильная типизация**
|
|
|
|
|
+Хорошо проработанная типизация дает возможность избежать многих ошибок в коде на этапе компиляции. На Java каждая переменная должна иметь строго определенный тип данных. Поэтому любые операции над переменными проверяются на соответствие типов. В других языках по большей части подобных систем проверки нет.
|
|
|
|
|
+
|
|
|
|
|
+**5. Управление памятью через механизм сборки мусора**
|
|
|
|
|
+Такая функция позволяет управлять выделением памяти для различных задач в автоматическом режиме, то есть программистам не нужно прописывать это вручную. Хорошо реализованный механизм сборки мусора позволяет искать неиспользуемые объекты и освобождать память, выделенную под них.
|
|
|
|
|
+
|
|
|
|
|
+**6. Объемная библиотека классов**
|
|
|
|
|
+У Java обширная библиотека классов, в которой можно найти уже готовые решения для разных типов задач, как для простых — типа работы с файлами, так и для сложных — например, для работы с графическим интерфейсом. Такая библиотека позволяет разрабатывать приложения быстрее.
|
|
|
|
|
+
|
|
|
|
|
+## Плюсы и минусы Java
|
|
|
|
|
+### Плюсы
|
|
|
|
|
+- Хороший уровень безопасности благодаря продвинутым механизмам;
|
|
|
|
|
+- Простой для освоения синтаксис;
|
|
|
|
|
+- Кроссплатформенность и универсальность;
|
|
|
|
|
+- Большое сообщество и развитая экосистема;
|
|
|
|
|
+- Внушительная библиотека классов, облегчающая работу;
|
|
|
|
|
+- Многопоточность и параллельная разработка;
|
|
|
|
|
+- Java — объектно-ориентированный язык;
|
|
|
|
|
+- Хорошо организованный код, который легко поддерживать.
|
|
|
|
|
+### Минусы
|
|
|
|
|
+- Низкая скорость работы по сравнению с С и С++;
|
|
|
|
|
+- Повышенное потребление памяти из-за выполнения кода в виртуальной машине;
|
|
|
|
|
+- Не поддерживается низкоуровневое программирование;
|
|
|
|
|
+- Для работы с ООП нужно достаточно много опыта.
|
|
|
|
|
+
|
|
|
|
|
+## Легко ли Java-разработчикам найти работу и сколько они получают
|
|
|
|
|
+
|
|
|
|
|
+**Java-разработчик** — это хорошая профессия для старта в IT. Если изучить все тонкости программирования на Java, то с изучением других языков никаких проблем не будет, особенно если у них сходный синтаксис. И все же начинающим разработчикам найти первую работу не очень просто — сказывается достаточно высокий уровень конкуренции.
|
|
|
|
|
+
|
|
|
|
|
+Нужно регулярно рассылать свои резюме в как можно большее количество компаний и откликаться на множество вакансий: рано или поздно вы найдете работодателей, которых устроят ваши знания и опыт.
|
|
|
|
|
+
|
|
|
|
|
+Что касается заработной платы, то здесь ситуация неоднозначная. По данным HH.ru в Москве начинающий Java-разработчик может рассчитывать на зарплату в пределах от 70000 ₽ до 80000 ₽ в месяц до вычета налогов. У специалистов с опытом средняя заработная плата находится на отметке в 250000 ₽ в месяц.
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+## Подходит ли Java для начинающих
|
|
|
|
|
+
|
|
|
|
|
+В целом изучать Java проще, чем многие другие языки программирования. Обучение в первую очередь предполагает изучение синтаксиса и принципов, по которым строится код. Большая библиотека шаблонов даст возможность оптимизировать и ускорить дальнейшую работу на Java.
|
|
|
|
|
+
|
|
|
|
|
+Если вы уже работаете с каким-либо языком программирования, то освоить принципы Java у вас получится довольно легко. Для обучения подойдут даже курсы переквалификации. Также некоторые курсы позволяют изучить Java в качестве дополнительного языка программирования.
|