Программист java
Содержание:
- История
- История
- Чем занимается программист на Java
- Как стать программистом Java — мнение эксперта
- Где применяется Java?
- Практические навыки
- Дистрибутивы Java
- Какие программы можно писать на Java
- Что важно при подборе
- Java и JavaScript (JS) — одно и то же?
- Что такое JavaScript
- Какие бывают программисты на Java
- Сферы применения Java
- Установка среды разработки IntelliJ IDEA Community (Windows)
- Поиск базы для нового языка
История
Компания Sun Microsystems активно развивала и обновляла JDK, почти каждый год выходили новые версии. В 1996 г. была выпущена первая версия — JDK 1.0, которая модифицировалась до версии с номером 1.0.2. В этой версии библиотека классов Java API содержала 8 пакетов. Весь набор JDK 1.0.2 поставлялся в упакованном виде в одном файле размером около 5 Мбайт, а после распаковки занимал на диске около 8 Мбайт.
В 1997 г. появилась версия JDK 1.1, последняя ее модификация, 1.1.8, выпущена в 1998 г. В этой версии было 23 пакета классов, занимала она 8,5 Мбайт в упакованном виде и около 30 Мбайт — в распакованном. В первых версиях JDK все пакеты библиотеки Java API были упакованы в один архивный файл classes.zip и вызывались непосредственно из этого архива, его не нужно было распаковывать. Затем набор инструментальных средств JDK был сильно переработан.
Версия JDK 1.2 вышла в декабре 1998 г. и содержала уже 57 пакетов классов. В архивном виде это файл размером почти 20 Мбайт и еще отдельный файл размером более 17 Мбайт с упакованной документацией. Полная версия располагается на 130 Мбайт дискового пространства, из них около 80 Мбайт занимает документация. Начиная с этой версии, все продукты технологии Java собственного производства компания Sun стала называть Java 2 Platform, Standard Edition, сокращенно J2SE, а в литературе утвердилось название Java 2. Кроме 57 пакетов классов, обязательных на любой платформе и получивших название Core API, в Java 2 JDK 1.2 входят еще дополнительные пакеты классов, называемые en:Standard Extension API.
В версии J2SE JDK 1.5.0, вышедшей в конце 2004 г., было уже под сотню пакетов, составляющих Core API (Application Programming Interface). В упакованном виде — это файл размером около 46 Мбайт и необязательный файл с упакованной документацией такого же размера. В это же время произошло очередное переименование технологии. Из версии убрали первую цифру и стали писать Java 2 Platform, Standard Edition 5.0, сокращенно J2SE 5.0 и JDK 5.0, хотя во внутрифирменной документации сохраняется название JDK 1.5.0. Последнее обновление J2SE 5.0, JDK 1.5.0_22, было выпущено 3 ноября 2009 года.
В шестой версии, вышедшей в начале 2007 г., из названия технологии убрали цифру 2 и стали писать Java Platform, Standard Edition 6, сокращенно — Java SE 6 и JDK 6. Впрочем, во внутрифирменной документации остается прежнее обозначение, например последнее на момент написания книги обновление обозначается JDK 1.6.0_26. Летом 2011 года появилась седьмая версия Java SE 7 и распространяется JDK 1.7.0.
Java SE JDK создается для каждой платформы: MS Windows, Solaris, Linux, отдельно, а документация написана на языке HTML и одинакова на всех платформах.
История
Джеймс Гослинг, Майк Шеридан и Патрик Нейтон положили начало проекта по разработке языка Java в 1991 году. Java задумывался как язык программирования для интерактивного телевидения, но оказался слишком прогрессивным для индустрии кабельного цифрового телевидения того времени. Изначально язык носил название Oak(«Дуб»), в честь дерева, росшего под окном офиса Джеймса Гослинга. Позже проект сменил название на Green и окончательно был переименован в Java, в честь одноименного кофе. Джеймс Гослинг сделал синтаксис Java в стиле C/C++, так как такой синтаксис был хорошо знаком системным и прикладным программистам.
Компания Sun Microsystems выпустила первую официальную версию – Java 1.0 – в 1995 году. Она должна была соответствовать принципу «напиcал однажды, запускай везде» , позволяя запускать приложения на всех популярных платформах без дополнительных затрат на портирование
Другой важной особенностью технологии Java была гибкая система безопасности, в рамках которой исполнение программы полностью контролируется виртуальной машиной. Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соединения с другим компьютером), вызывают немедленное прерывание
Вскоре во всех основных web-браузерах была добавлена возможность запускать на web-страницах Java-апплеты, и Java быстро набрала популярность. Компилятор Java 1.0 был переписан на Java Артуром ван Хоффом для полного соответствия спецификации языка. Новая версия Java 2, выпущенная в декабре 1998 года как J2SE 1.2, имела несколько конфигураций для различных типов платформ. J2EE (Java 2 Enterprise Edition) включала в себя технологии и API- интерфейсы для корпоративных приложений, обычно выполняющихся на серверных платформах, в то время как включенные в J2ME (Java 2 Micro Edition) API-интерфейсы оптимизированы для мобильных приложений. Версия предназначенная для создания настольных приложений была переименована в J2SE (Java 2 Standard Edition). В 2006 году Sun Microsystems в маркетинговых целях сменила названия новых версий J2EE, J2ME и J2SE на Java EE, Java ME и Java SE соответственно.
В 1997 году компания Sun Microsystems обратилась к комитету по стандартизации ISO/IEC JTC 1 и позже к Ecma International с целью создания официального стандарта Java, но вскоре отказалась от этой идеи. Java продолжила подчиняется стандарту де-факто, который контролируется посредством Java Community Process. В то же время Sun Microsystems предоставила свободный доступ к большинству своих реализаций Java, но при этом они имели статус проприетарного програмного обеспечения. Sun получала доход от Java за счет продажи лицензий для специализированных продуктов, таких как Java Enterprise Systems.
13 ноября 2006 года, Sun опубликовала большую часть кода своей JVM в качестве свободного программного обеспечения с открытым исходным кодом (FOSS – англ. Free and Open-Source Software), в соответствии с условиями GNU General Public License. 8 мая 2007 года почти весь код виртуальных машин Java компании Sun Microsystems распространялся как FOSS, исключение составляла только небольшая часть кода, на которую у компании не было авторских прав.
Вице-президент компании Sun Рич Грин заявил, что Sun выполняет роль «евангелиста» по отношению к Java. Корпорация Oracle после поглощения Sun Microsystems описала свою роль как «распорядитель технологии Java с неослабевающим обязательством содействовать сообществу соучастия и открытости». Но практически сразу после этого заявления Oracle подает иск против Google за использование Java в Android SDK. Программное обеспечение написанное на Java работает везде, начиная от ноутбуков и игровых консолей и заканчивая дата-центрами и суперкомпьютерами. 2 апреля 2010 года Джеймс Гослинг ушел из Oracle.
Принципы
Пять основных принципов, в соответствии с которыми создавался язык Java:
- Язык должен быть «простым, объектно-ориентированным и знакомым».
- Язык должен быть «надежным и безопасным».
- Язык должен быть «независимым от архитектуры и мобильным».
- Язык должен выполняться с «высокой эффективностью».
- Язык должен быть «интерпретируемым, динамическим и должен поддерживать потоки».
Версии
Основные версии Java и даты их выпуска:
- JDK 1.0 (21 января 1996 года)
- JDK 1.1 (19 февраля 1997 года)
- J2SE 1.2 (8 декабря 1998 года)
- J2SE 1.3 (8 мая 2000 года)
- J2SE 1.4 (6 февраля 2002 года)
- J2SE 5.0 (30 сентября 2004 года)
- Java SE 6 (11 декабря 2006 года)
- Java SE 7 (28 июля 2011 года)
- Java SE 8 (18 марта 2014 года)
Чем занимается программист на Java
Java — один из старейших и востребованных языков программирования, который был создан в 1995 году. Джава считается многофункциональным языком, на котором можно создавать приложения, решения в сфере веб, всевозможные элементы для сайтов, видеоигры и приложения для мобильной операционной системы Android.
Помимо разработки с нуля, на Джава можно модифицировать уже созданное программное обеспечение, изменяя как дизайн, так и функции. Тестирование тоже входит в число возможностей этого языка программирования.
Из всего вышесказанного следует, что программист на Java занимается разработкой приложений, программ, сервисов и прочего. Конкретное направление работы зависит от обязанностей. Например, в веб-студию Джава-специалист понадобится для программирования клиент-серверной части проекта, для бэкенд-разработки и для создания всевозможных элементов для сайта или приложения.
Безусловно, помимо самого написания кода, на плечи Java-разработчика ложится внедрение кода в программы, составление документации, тестирование, оптимизация, поиск и устранение ошибок в ПО. Многие приложения подразумевают разработку архитектуры и программных модулей.
Достоинства и недостатки профессии
На стадии ознакомления с плюсами и минусами работы уже можно решить, стоит изучать Джаву или нет. Однозначного ответа на этот вопрос не существует, так как у каждого человека свои навыки и предпочтения. Кому-то понравится писать код на Java, а для кого-то это покажется совсем не его делом.
Перечень достоинств профессии:
- автоматизированная работа с памятью — не придется вручную обращаться к кластерам памяти;
- программы на языке транслируются в байт-код, который можно запустить на виртуальной машине, а значит нет привязки к операционной системе и оборудованию;
- в отличие от многих языков программирования, в большинстве вакансий требуется знать только Java (без требований к владению другими языками);
- высокая заработная плата даже для IT-сферы;
- это один из самых популярных языков программирования;
- можно работать на фрилансе или устроиться в компанию;
- есть возможность удаленной работы;
- есть множество качественных программ обучения на русском (как с нуля, так и для повышения квалификации).
Список минусов работы:
- несмотря на огромное количество улучшений, программы на Java потребляют в 10-30 раз больше памяти, чем программы прямого конкурента с похожим синтаксисом в лице C++;
- большинство идентичных задач выполняются в 2 раза быстрее на C++, чем на Java;
- согласно исследованиям Google, код на Java не только потребляет значительно больше памяти по сравнению с C++, но и значительно менее производителен;
- обязательно хорошо понимать математику и алгебру, зная правила, формулы, аксиомы и термины;
- необходимо хотя бы минимальное знание английского языка, а в некоторых вакансиях есть требование к отличному знанию английского для чтения и составления документации;
- из-за наличия сборщика мусора, код для обработки ошибок не такой простой, как в том же C++.
Внимательный читатель мог заметить, что в недостатках часто приводится сравнение Джава с C++. Чем это обусловлено?
Дополнительно рекомендуем прочитать обзор профессии C++ разработчика.
Как стать программистом Java — мнение эксперта
Комментирует Алексей Золотарев, эксперт ПО Oracle Центра технической поддержки РДТЕХ, преподаватель Учебного центра РДТЕХ.
Однажды заданный вопрос: «Алексей, посоветуй, как мне стать разработчиком» поставил меня в тупик. Всегда казалось, что программистом/разработчиком стать очень просто. Это же примерно, как езда на велосипеде. Чего тут сложного? Крути педали и поворачивай руль, следя за изгибами дороги. Уже не вспомню, что именно я тогда ответил, но сейчас понимаю, что на самом деле вопрос не такой простой, и за ним скрывается множество условностей.
Будем исходить из того, что его задает человек, имеющий минимальный опыт в информационных технологиях, но при этом хотя бы умеющий строить отчёты с формулами в Экселе.
Сразу стоит отметить, что начальное условие успеха заключается в знании технического английского языка. Нужно принять тот факт, что вся информация, с которой вам предстоит работать, будет на техническом английском языке, который так или иначе придётся изучить. Словом, чем лучше знание английского языка, тем проще жить.
Java – это язык абстракций. И если такое мышление – не ваш конёк, то лучше сразу задуматься, так уж ли нужно вам программирование на Java. А как оценить степень своей готовности к восприятию абстрактного? Конечно, не походом в музей современного искусства 🙂 Лучше всего вспомните, как прошло в университете знакомство с предметами аналитической геометрии, теории множеств, теорией вероятности. Не было отвращения? Тогда замечательно.
Один из ключевых факторов успеха – правильное восприятие реальности. К сожалению, распространено представление, что программирование – это почти искусство. И в последствии часто следует одушевление продукта разработки создателем, переоценка собственных творческих возможностей и многое-многое другое. Лучше сразу осознать, что ваши будущие программы и автопортрет Альбрехта Дюрера – это всё-таки вещи из разных областей творчества.
Изучение самого языка можно начать с хорошей книги, например, Bruce Eckel «Thinking in Java». В русском переводе книга называется «Философия Java». Произведение как нельзя лучше подходит для того, чтобы изучить язык программирования через принятие его объектно-ориентированной сущности.
Сразу же после изучения языка необходимо приступить к его практическому применению, реализуя какие-то простые программные решения. Очень полезно пробовать расширить функциональность какого-нибудь java-продукта с открытым кодом.
Задерживаться на этапе самосовершенствования надолго не стоит. Спектр реальных прикладных задач гораздо шире, чем то, что может изобрести собственная фантазия, поэтому нужно незамедлительно пробовать перейти на профессиональный уровень и устроиться на работу Java-программистом в ИТ-компанию.
При наличии в вакансиях сопутствующих требований к знанию технологий и продуктов – запускайте их в процесс изучения. Через несколько итераций при должном уровне настойчивости и усидчивости вы сможете пройти собеседование, получить должность начинающего (junior) программиста и продолжить дальнейшее развитие, занимаясь разработкой на Java профессионально.
Где применяется Java?
Java — это язык широкого назначения. Его основной принцип: «Пиши один раз, запускай где угодно», или WORA (Write Once, Run Anywhere). Это значит, что скомпилированный (преобразованный в машинный код) Java-код можно можно запустить на всех поддерживающих Java платформах без необходимости повторной компиляции.
Java-приложения обычно компилируются в байт-код (набор инструкций, выполняемый виртуальной машиной Java). JVM устанавливается на платформу, на которой предстоит выполнение Java-программы. На Windows, к примеру, ее нужно устанавливать самостоятельно, а на Android JVM уже вшита.
Достоинство такого способа выполнения программ — это независимость байт-кода от операционной системы, что и позволяет выполнять Java-приложения на таком большом количестве устройств.
Сейчас Java остается универсальным языком программирования, который используют компании разного масштаба в своих продуктах. Вот где он применяется:
Android. Несмотря на популяризацию Kotlin в последнее время, на Java написано огромное количество приложений для платформы Android.
Серверные приложения. Часто на Java пишутся приложения, не имеющие интерфейса. Они используются для получения, обработки и передачи данных на сервере.
Десктопные приложения. В том числе и много IDE (интегрированная среда разработки — комплекс программных средств, используемый для разработки ПО) разработаны на Java — например, IntelliJ IDEA, Eclipse, Netbeans.
Веб-приложения. Например, большое количество RESTful-сервисов (REST — стиль архитектуры программного обеспечения для распределенных систем) и сервлетов (интерфейс Java, реализация которого расширяет функциональные возможности сервера) было создано с использованием Java.
Встраиваемые системы. От банкоматов, платежных терминалов и станков с ЧПУ до бытовой техники — Java может использоваться практически везде, как и обещали его создатели.
Большие данные. Java не доминирует в этой области, но применяться может.
Практические навыки
- Лучший способ получить навык программирования — писать проекты. Начните с простых программ, которые увидите в книгах или видео. Затем попробуйте их немного модифицировать и усложнить.
- Создайте собственное приложение. Параллельно стоит практиковаться выполнять задачи и писать код на ресурсах для программистов, например HackerRank. Работодатели часто начинают процесс поиска разработчиков именно на таких платформах.
- Заведите аккаунт на GitHub или GitLab, выложите туда код, который готовы показать другим программистам и будущим работодателям.
Чтобы перейти из джуниоров в мидлы, разработчику важно работать с паттернами (шаблонами), и определять качество кода. Научитесь думать архитектурно, выделять модули и правильно проектировать зависимости
Учтите, что требования к мидл-разработчикам могут сильно отличаться в разных компаниях.
Чтобы перейти на более высокий уровень, джуниору может понадобиться от года до двух лет работы — в зависимости от того, сколько сил он вкладывает в учебу.
Дистрибутивы Java
Существует множество сайтов, предлагающих загрузку Java (читай: JDK), и неясно, «кто что предлагает и с каким лицензированием». Этот раздел проливает свет на это.
Проект OpenJDK
Однако это всего лишь исходный код, а не распространяемая сборка (представьте: ваш файл .zip со скомпилированной командой java для вашей конкретной операционной системы). Теоретически вы и я могли бы создать сборку из этого исходного кода, назвать ее, скажем, MarcoJDK, и начать ее дистрибуцию. Но наш дистрибутив не будет сертифицирован, чтобы можно было называть этот дистрибутив совместимым с Java SE.
И хотя поставщики не могут, скажем, удалить метод из класса String перед созданием новой сборки Java, они могут добавить брэндинг (вay!) или добавить некоторые другие утилиты (например, CLI), которые они считают полезными. Но в остальном исходный код одинаков для всех дистрибутивов Java.
Сборки OpenJDK (от Oracle) и OracleJDK
Один из поставщиков, который создает Java из исходного кода, — это Oracle. Это приводит к двум разным дистрибутивам Java, что поначалу может казаться очень запутанными.
Впрочем все сводится к тому, требуется ли вам коммерческая поддержка (номер телефона) для используемой версии Java.
Полный обзор дистрибутива OpenJDK
Рафаэль Винтерхальтер (Rafael Winterhalter) собрал большой список всех доступных сборок OpenJDK, включая их описания: ОС, архитектуру, окна лицензирования, поддержки и обслуживания.
Какие программы можно писать на Java
В общем-то, любые. Java тем и хорош, что это язык общего назначения – уже в базовой комплектации он подходит для разработки под целый арсенал программных платформ. Нужен виджет для веба? Java подходит. Нужно сделать универсальное приложение для Windows, Linux и macOS? Не проблема. Разрабатывать под Android тоже можно.
Сценариев использования Java много. Язык действительно универсален и подходит для разработки любого ПО под любое ПО. Поэтому лучшим ответом на вопрос, какие программы можно писать на Java, будет – те, что вы сами захотите создать.
Java и Android
Исторически сложилось так, что Java стал одним из флагманских языков для разработки под Android. Виртуальные машины, встроенные в мобильную операционную систему Google, позволяют инициализировать Java-код. По этой причине внушительное количество ПО, созданного для Android, было написано на языке Sun Microsystems.
Сейчас есть и другие языки для создания приложений под Android, но Java все еще остается одним из наиболее популярных.
Примеры лучших программ, написанных на Java
-
В 2004 году инженеры NASA использовали утилиту Maestro Science Activity Planner, написанную на Java, для управления ровером Spirit, пока тот бороздил просторы «красной» планеты.
-
Уже на протяжении 20 лет специалисты в сфере космической отрасли используют JavaFX Deep Space Trajectory Explorer для навигации за пределами Земли.
-
Поиск, встроенный в самую популярную веб-энциклопедию (Википедию), был изначально написан на Java, а потом заменен на Elasticsearch, движок, который тоже основан на Java.
-
Одна из популярнейших игр – Minecraft – была создана Марком Перссоном в 2009 году и написана на Java. На этом же языке пишутся различные модификации и дополнения к игре.
-
IntelliJ IDEA – универсальная, продвинутая среда разработки тоже основана на Java.
И таких примеров масса. Java-приложения используются астронавтами, инженерами, медиками, системными администраторами и т.д. Практически любую сферу деятельности этот язык так или иначе затронул.
Что важно при подборе
Подбор java-разработчика опирается на общие принципы ИТ-рекрутмента.Однако популярность языка растет, а вместе с ней и запросы кандидатов
Рекрутеру важно понять, что именно разработчик выбирает компанию, и возможно, ваше предложение будет для него пятое за день. Поэтому вакансия должна быть привлекательной
Суть проекта, стек технологий
Этот пункт стоит наравне с уровнем зарплаты. Хороший программист постоянно учится, наращивает свои hard skills. Он хочет применять свои знания в проекте с интересными задачами.Как заинтересовать. Презентуйте компанию с позиции технологий и области применения. Рассказывайте о задачах честно — это покажет общность интересов и сэкономит время на дальнейших этапах.
Уровень дохода
Здесь правила игра определяет разработчик. Они регулярно мониторят рынок труда с целью увеличить свой доход.Как заинтересовать. Соотнесите уровень вилки зарплаты с предложениями конкурентов. Если она сильно отличается, сообщите цифры руководителю. Найти классного программиста не просто, поэтому проявите гибкость и не упустите ценный ресурс.Важный момент. Многие разработчики мониторят рынок и не собираются менять компанию. Получают оффер с более высоким доходом и идут к руководителю за повышением зарплаты. Цель рекрутера — выявить реальную мотивацию поиска работы.
Плюшки компании и условия работы
Каждый второй программист мечтает об офисе Yandex или Google. Ну или о чем-то похожем. Бывает так, что просят показать фото офиса. Этот пункт действительно важный.
Как заинтересовать. Современный офис, зона отдыха, комфортная столовая — тот минимум, который должен быть. Да, кофемашиной и печеньками уже мало кого удивишь. Поэтому подумайте, чем ваша компания уникальна. Что вы можете предложить сотруднику, помимо достойного дохода? Возможно, онлайн-интенсивы, тимбилдинги, или скидки на спорт.
Возможности роста
Для программиста это гарантия того, что он не заскучает на однотипных задачах и сможет дорасти до тимида.Как заинтересовать. Расскажите о перспективах и как можно развиваться в компании.
Команда
От нее зависит не только нагрузка, но и общий дух в коллективе. Айтишники любят находится в своем кругу, обсуждать код, разбирать баги.Как заинтересовать. Расскажите сколько человек в проекте, какие роли у каждого.
Java и JavaScript (JS) — одно и то же?
Прежде чем переходить к тому, что делают Java-разработчики, стоит развеять популярное заблуждение новичков в сфере информационных технологий: Java и JavaScript — одно и то же? Если очень кратко, то нет, Java и JavaScript это не одно и то же.
Java — это объектно-ориентированный язык общего назначения, использующийся для программирования и разработки различного программного обеспечения, начиная от веб-приложений, и заканчивая играми. Как и в большинстве языков программирования, код, написанный на Джава, запускается и компилируется в среде разработке (JDK, Codeflow и другие).
JavaScript — объектно-ориентированный скриптовый язык программирования, популярный в сфере веб. Главное предназначение языка — написание сценариев для HTML-страниц. Это неотъемлемый инструмент веб-разработчика и создателя сайтов/веб приложений.
Тем не менее, по сравнению с Java, JavaScript можно назвать вспомогательным языком, который используется в уже созданном программном обеспечении (но Java тоже часто используется для доработки), и подразумевает владение языками программирования/разметки/стилей. Также, код JavaScript пишется в текстовом виде и не требует компилятора, запускаясь исключительно в браузерах.
Что такое JavaScript
JavaScript — язык программирования, чаще всего использующийся в сфере веб-разработки и в виде встраиваемого языка для доступа к объектам в приложениях. Благодаря JavaScript создаются современные технологичные сайты, продукты выглядят динамично и интересно, а в браузерах этот язык обычно применяется как сценарный.
Данный язык программирования в первую очередь ассоциируется с разработкой интерфейсов и внешнего вида для сайтов и веб-приложений. Поэтому это обязательный инструмент любого frontend-специалиста.
Более того, на JavaScript можно разрабатывать и backend составляющую проектов, применяя программную платформу Node.js. Node делает из узкоспециализированного JavaScript язык общего назначения, на котором можно программировать сервера, взаимодействие с frontend частью, работу с базами данных.
В веб сфере JavaScript имеет почти неограниченную область применения. Тем не менее, JavaScript для frontend разработчиков не является единственным инструментом.
Также необходимо знать:
- язык разметки HTML;
- язык стилей CSS;
- фреймворки (обязательно Bootstrap);
- дополнительный язык программирования от Microsoft TypeScript;
- API;
- контроль версий Git;
- библиотеку React;
- подход AJAX.
Для backend-разработки на JavaScript требуется владеть всеми вышеперечисленными знаниями и навыками, а также уметь работать с Node.js и с базами данных через язык SQL.
Несмотря на то, что перечень навыков может показаться большим, профессия JavaScript-разработчика одна из лучших для новичков, если рассматривать именно frontend. HTML и CSS изучаются довольно быстро и точно не вызовут проблем. Сам JS существенно сложнее, но по сравнению с другими языками программирования здесь более низкий порог входа. Правда, впоследствии станет сложнее.
Какие бывают программисты на Java
В зависимости от знаний, навыков, опыта работы и степени ответственности программист на Java может занимать должность: junior (младший), middle (средний), senior (старший). Ниже расскажем подробнее про каждый уровень.
Junior
Junior Java-разработчик – это новичок с опытом от 6-12 месяцев, который знает базовые конструкции Джава. Он может самостоятельно сделать простую программу, дописать или протестировать код, внести небольшие правки.
Если программист работает в IT-компании, то его курирует более опытный коллега.
Middle
Middle Java-разработчик – это специалист со стажем от 3 лет, который способен самостоятельно и с нуля сделать программу или приложение. Знает язык программирования на продвинутом уровне, имеет опыт командной разработки. Он пишет чистый качественный код, который не нуждается в проверке или доработке.
Senior
Senior Java-разработчик – это профессионал с опытом не менее 5 лет, который совмещает обязанности технического руководителя и тимлида в команде программистов.
Он умеет проектировать сложные веб-сервисы и приложения, распределяет задачи между подчиненными, определяет стек технологий, которые используются в разработке конкретного программного продукта, несет ответственность за итоговый результат.
Подборка курсов
Все курсы по Java с нуля для начинающих и опытных разработчиков
Посмотреть подборку
Сферы применения Java
Чтобы молодые специалисты имели представление, куда пойти после получения новых знаний и навыков, выделим лишь некоторые сферы:
Разработки enterprise-приложений — большие и сложные корпоративные приложения с высоким уровнем надежности, которые используют крупные компании для зарабатывания денег.
Корпоративные серверные ПО также нуждаются в постоянной заботе java-программистов. Например, трейдинговые системы, программы Eclipse, IntelliJ Idea и Netbeans IDE.
Финансовая сфера — инвестиционные банки применяют для офисных электронных систем, систем регулирования и конфирмации, проектов обработки данных.
Электронная коммерция и в области веб-приложений — RESTful сервисов созданы с использованием фреймворков Spring MVC, Struts 2.0. Куча приложений на основе Servlet, JSP и Struts
Веб-приложения государственных, оздоровительных, страховых, образовательных, оборонительных и других отделений также написаны на Java.
BigData — хоть Java и не доминирует в этой области (преимущественно используются технологии на основе С++), однако у Java есть потенциал получить большую долю этой растущей области в случае, если расширятся Hadoop (ключевая технология хранения и обработки больших данных) или ElasticSearch (поисковый движок по базе документов).
Встраиваемые системы, или Embedded Systems — системы, написанные под определенную платформу. Например, это чипы или пластиковые карточки для банкомата.
Устройства, на которых работает Java:
-
Серверы;
-
Компьютеры;
-
Смартфоны;
-
Фитнес-браслеты;
-
GPS-трекеры;
-
Умные вещи — телевизоры, холодильники, микроволновки и другие гаджеты;
-
Смарт-карты для доступа в помещения.
А вот статистика применения в мире, указанная на официальном сайте java.com:
-
Используется на 97% корпоративных персональных компьютерах;
-
В США Java используется на 89% персональных компьютерах;
-
9 миллионов разработчиков работают на Java по всему миру;
-
Используется в 3 миллиардах мобильных телефонах;
-
Используется в 125 миллионах TV-устройствах.
Откровенно говоря, достаточно сложно выделить сферы, где применяется язык программирования. Как мы уже говорили, что Java — мультиплатформенный язык, а это как раз снимает с использования языка всякие ограничения по нишам.
Установка среды разработки IntelliJ IDEA Community (Windows)
Intellij IDEA — это интегрированная среда разработки (IDE), то есть система программных средств для создания проектов на разных языках программирования.
Сегодня это самая популярная IDE для языка Java. А ещё есть Eclipse, NetBeans и немало других, но мы рекомендуем именно IDEA, потому что даже её бесплатная версия обладает широкой функциональностью, подходит для профессиональной разработки и вообще делает Java проще в использовании.
В IDE обязательно входят:
- текстовый редактор для написания кода (он знает синтаксис нужных языков);
- компилятор;
- отладчик.
1. Какую версию (редакцию) выбрать
Intellij IDEA доступна в бесплатной (Community) и платной (Ultimate) версиях. Чем они различаются, видно на скрине ниже:
Пока что нам хватит возможностей бесплатной версии.
IntelliJ предлагает студентам и преподавателям к своим продуктам.
2. Сама установка
Заходим сюда и качаем версию для Windows.
Запускаем скачанный файл .exe:
Жмём Next (Далее) и выбираем путь для установки:
Снова Next, и настраиваем параметры установки:
В общем случае это:
- 64-bit launcher — для запуска 64-разрядной версии приложения (будет создан ярлык на рабочем столе);
- Add ”Open Folder as Project“» — позволяет открывать папки с исходниками как проекты прямо через контекстное меню;
- .java — файлы такого типа (с таким расширением) будет открывать IDEA (по умолчанию и через контекстное меню).
Кликаем Next (Далее) и выбираем папку для ярлыков IDEA (оставляем по умолчанию):
Нажимаем Install (Установить), после чего стартует установка:
Дожидаемся её окончания и жмём Finish (Завершить):
3. Запуск IntelliJ IDEA и настройка параметров
При первом запуске принимаем пользовательское соглашение и нажимаем Continue (Продолжить):
Далее выбираем тему оформления (доступны тёмная и светлая):
Жмём Next: Default plugins и переходим к выбору устанавливаемых плагинов:
Если не знаете, что вам точно пригодится, — оставляйте всё как есть. А если, например, с Андроидом вам не работать — выключите соответствующий пункт.
Не волнуйтесь, если надобавляете лишнего или о чём-то забудете. Всё можно будет переиграть — в настройках среды.
После чего нажмите на кнопку Next: featured plugins и выберите другие нужные плагины (или оставляйте всё по умолчанию):
И наконец, нажимаем Start using Intellij IDEA.
Вас встретит начальный экран среды разработки (Welcome screen). Здесь можно создать новый проект, открыть или импортировать существующий, а также скачать проект из системы контроля версий:
Поиск базы для нового языка
Первоначально команда рассматривала возможность использования модифицированного языка C++, но отклонила его по причинам требовательности к объемам памяти и высокой сложности. Отсутствие в С++ сборки мусора означало, что программистам приходилось вручную управлять системной памятью, сложной и подверженной ошибкам задачей. Тем более что они разрабатывали встроенную систему с ограниченными ресурсами. Наконец, они хотели получить платформу, которую будет легко портировать на любые типы устройств. Но все же синтаксис Java во многом заимствован из C и C ++, а объектно-ориентированные функции смоделированы на основе языков С++, Smalltalk and Objective-C.