Найти в Дзене
I switched my grandma to Java

Инструменты для запуска и разработки приложений( SDK и JDK).

На собеседовании часто спрашивают про устройство языка, что находится "под капотом" языка, поэтому важно знать инструмент изнутри. Аббревиатура SDK расшифровывается как software development kit — это набор средств для разработки ПО под определенную платформу. Он содержит компоновочные блоки, средства отладки, а зачастую фреймворк или группу библиотек кода, например набор подпрограмм для определенной операционной системы. JDK, или Java Development Kit — это набор инструментов для разработки на языке Java. В него входят все компоненты, необходимые для того, чтобы программировать на этом языке. Он позволяет компилировать, то есть «собирать», и запускать написанный код. JDK работает на всех популярных операционных систем: Windows, Linux, macOS и других. Он нужен, чтобы писать программы на Java, создавать виртуальное окружение, запускать их и отлаживать. Без JDK можно писать код, но его не получится «собрать» в программу или запустить. Установленный JDK — обязательное условие для программир

На собеседовании часто спрашивают про устройство языка, что находится "под капотом" языка, поэтому важно знать инструмент изнутри.

Аббревиатура SDK расшифровывается как software development kit — это набор средств для разработки ПО под определенную платформу. Он содержит компоновочные блоки, средства отладки, а зачастую фреймворк или группу библиотек кода, например набор подпрограмм для определенной операционной системы.

JDK, или Java Development Kit — это набор инструментов для разработки на языке Java. В него входят все компоненты, необходимые для того, чтобы программировать на этом языке. Он позволяет компилировать, то есть «собирать», и запускать написанный код.

JDK работает на всех популярных операционных систем: Windows, Linux, macOS и других. Он нужен, чтобы писать программы на Java, создавать виртуальное окружение, запускать их и отлаживать. Без JDK можно писать код, но его не получится «собрать» в программу или запустить. Установленный JDK — обязательное условие для программирования на Java, без него работать с языком не получится.

Помимо JDK в Java нужно рассмотреть несколько аббревиатур JRE , JVM и JIT.

  • JRE — Java Runtime Environment. Это набор инструментов для запуска программы. Без них код не будет работать и исполняться. JRE — составная часть JDK и входит в пакет по умолчанию.
  • JVM — Java Virtual Machine. Особенность Java в том, что для запуска программ язык создает виртуальную среду, «оболочку», внутри которой все выполняется. Благодаря этой особенности язык — кроссплатформенный. Код может без доработок выполняться практически на любом устройстве. JVM — набор технологий, который реализует виртуальную оболочку. JVM входит в пакет JRE, точно так же как сам JRE входит в JDK.
  • JIT — Just-In-Time. Он оптимизирует байт-код, уменьшая общее время, необходимое для компиляции байт-кода в машинный код. Cоответствующая операция подразумевает компилирование кода не до выполнения программного обеспечения, а тогда, когда это необходимо. Активируется непосредственно после запуска исходного программного обеспечения. Компилирует «на лету», в режиме реального времени. Just-in-time (JIT) является частью JVM
-2

Как устроен JDK и что в него входит.

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

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

API. API — это набор инструментов и интерфейсов для связи какой-либо технологии с другими. Java API входят в JDK, потому что могут понадобиться при разработке.

Библиотека классов. Чтобы писать код, необходимы стандартные классы. Библиотека стандартных классов тоже есть в JDK. При установке можно выбрать вариант с исходными кодами. Они дают возможность просматривать и изменять изначальный код стандартных библиотек. Но менять стандартные классы разработчикам обычно не советуют.

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

Другие инструменты. Набор ПО в пакете называется Java Development Tools: в нем находятся и отладчик, и API, и другие программные компоненты для разработки. Также это могут быть разнообразные утилиты для облегчения работы с языком, документация и примеры кода.

У JDK есть три вариации: SE, EE и ME. Они различаются назначением.

JDK SE. Это Standard Edition, стандартная версия, которой пользуется большинство разработчиков. Для решения большинства задач этой версии достаточно.

JDK EE. Это Enterprise Edition, версия для корпоративной разработки. Кроме стандартных инструментов в нее входят дополнительные, которые облегчают создание энтерпрайз-приложений. Технологии для создания веб-приложений, такие как сервлеты, включены именно в EE.

JDK ME. Это Micro Edition или Mobile Edition, версия для разработки под мобильные приложения. В нее входят все инструменты SE и дополнительные возможности для устройств, ограниченных в памяти и мощности. Телефоны и планшеты не такие мощные, как ПК, поэтому программы должны быть легкие и гибкие. Java ME помогает сделать их именно такими.