Кто является создателем языка программирования java
Перейти к содержимому

Кто является создателем языка программирования java

  • автор:

Что такое Java?

Java – широко используемый язык программирования для написания интернет-приложений. Язык Java широко использовался на протяжении более двух десятилетий. Миллионы приложений Java используются и сегодня. Java – это многоплатформенный, объектно-ориентированный и сетецентрический язык, который сам по себе может использоваться как платформа. Это быстрый, безопасный и надежный язык программирования для всего: от мобильных приложений и корпоративного ПО до приложений для работы с большими данными и серверных технологий.

Для чего используется язык программирования Java?

Для чего используется язык программирования Java?

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

1. Разработка игр

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

2. Облачные вычисления

Язык Java часто называют WORA (Write Once and Run Anywhere – «Напиши один раз, запускай где угодно»), что делает его идеальным для децентрализованных облачных приложений. Поставщики облачных услуг выбирают язык Java для запуска программ на широком спектре базовых платформ.

3. Большие данные

Язык Java используется для механизмов обработки данных, которые могут работать со сложными наборами данных и большими объемами данных в режиме реального времени.

4. Искусственный интеллект

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

5. Интернет вещей

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

Почему язык Java так популярен среди современных разработчиков ПО?

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

Высококачественные учебные ресурсы

Поскольку Java существует уже давно, для новых программистов доступно множество учебных ресурсов. Подробная документация, исчерпывающие печатные материалы и курсы помогают разработчикам на протяжении всего обучения. Кроме того, новички могут начать писать код на Core Java, прежде чем переходить на Advanced Java.

Встроенные функции и библиотеки

При использовании Java разработчикам не нужно каждый раз писать новую функцию с нуля. В качестве альтернативы Java предоставляет богатую экосистему встроенных функций и библиотек для разработки ряда приложений.

Активная поддержка сообщества

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

Высококачественные инструменты разработки

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

Независимость от платформы

Код Java может работать на любой базовой платформе, такой как Windows, Linux, iOS или Android, без перезаписи. Таким образом, язык особенно эффективен в современной среде, где приложения запускаются на нескольких устройствах.

Безопасность

Пользователи могут загружать ненадежный код Java по сети и запускать его в безопасной среде, в которой он не может причинить никакого вреда. Ненадежный код не может заразить хост-систему вирусом, а также не может читать или записывать файлы с жесткого диска. Уровни безопасности и ограничения в Java также легко настраиваются.

Как работает Java?

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

1. Язык Java и API

Это внешний интерфейс между разработчиком и платформой Java.

2. Виртуальная машина Java

Это внутренняя связь между платформой Java и базовым аппаратным оборудованием. Подробное описание см. ниже.

Что такое виртуальная машина Java?

Виртуальная машина Java действует как дополнительный уровень абстракции между платформой Java и базовым аппаратным обеспечением машины. Исходный код Java может работать только на тех машинах, на которых установлена виртуальная машина Java (Java Virtual Machine, JVM). Ответ на вопрос, зачем нужна виртуальная машина Java, лежит в истории программирования.

История программирования

Когда естественные языки программирования были впервые разработаны, они подразделялись на две большие категории в зависимости от того, как они взаимодействовали с базовым оборудованием.

  1. Компиляторы. Вся программа написана в естественном английском синтаксисе с помощью компилирующих программ, а затем язык компилирует (или переводит) весь код в машинный код. После этого скомпилированный код запускается на оборудовании.
  2. Интерпретаторы. С помощью интерпретирующих программ каждое высокоуровневое выражение кода интерпретируется в машинный код в режиме реального времени. Зафиксированные предписания немедленно выполняются аппаратным обеспечением перед просмотром следующего предписания.

Среда времени выполнения Java

Программа Java была первым языком, объединившим оба описанных выше метода с использованием JVM. Компилятор кода Java называется виртуальной машиной Java. Любой файл Java сначала компилируется в байт-код. Байт-код Java может работать только в JVM. Затем JVM интерпретирует байт-код для запуска на базовой аппаратной платформе. Поэтому, если приложение работает на компьютере с Windows, JVM интерпретирует его для Windows. Однако при работе на платформе с открытым исходным кодом, такой как Linux, JVM интерпретирует его для Linux.

Как программировать на Java

Чтобы начать программировать на Java, необходимо установить Java Edition в системе. Существует четыре основные версии Java:

  1. стандартная версия Java (Java Standard Edition, Java SE);
  2. корпоративная версия Java (Java Enterprise Edition, Java EE);
  3. микроверсия Java (Java Micro Edition, Java ME).

Что такое Java SE?

Стандартная версия Java – это основная платформа программирования Java. Такая версия содержит все библиотеки и API, которые нужны любому программисту для разработки на Java. Open Java Development Kit (OpenJDK) – это бесплатная реализация Java SE с открытым исходным кодом.

Amazon Corretto – это бесплатная многоплатформенная, готовая к использованию версия пакета средств разработки OpenJDK. Сервис можно использовать в качестве замены для многих дистрибутивов Java SE, при этом он поставляется с бесплатной долгосрочной поддержкой Amazon. Сервис позволяет запускать одну и ту же среду в облаке, локально и на локальном компьютере.

Что такое AWS SDK для Java?

AWS SDK для Java упрощает использование сервисов AWS, предоставляя упорядоченный набор библиотек, с которыми знакомы разработчики Java. AWS SDK for Java также поддерживает более высокий уровень абстракций для упрощения разработки. Доступны библиотеки Java с открытым исходным кодом, ориентированные на AWS, а также примеры кода и справочное руководство по API Java.

Примеры кода SDK содержат примеры кода на языке Java и реальные примеры работы с сервисами AWS, которые ускорят разработку собственных приложений. Кроме того, справочник по Java API описывает работу API в новейшей версии AWS SDK для Java. Кроме того, приводятся образцы запросов, ответов и список ошибок для поддерживаемых сетевых протоколов.

Начните работать с AWS SDK для Java, используя руководство для разработчиков, или посетите центр разработчиков AWS Java.

Кто создал Java: главное про Джеймса Гослинга

Java-разработчики знают, что язык и платформу создал Джеймс Гослинг, но зачастую на этом знания о нём и заканчиваются. Кто это вообще такой? Что ещё он делал в жизни? Почему перестал участвовать в работе над Java?

Мы считаем, что такие люди заслуживают большего внимания. Поэтому, во-первых, Джеймс появится на нашей онлайн-конференции JPoint и ответит там на многие вопросы. А во-вторых, в этом посте мы расписали заметные вехи его жизни до, во время и после работы над Java. Как он успел насолить Ричарду Столлману? Почему по изначальному плану язык Java вообще не должен был появиться? Какое отношение Гослинг имеет к подводным роботам?

До Java

Первый вопрос: как думаете, где родился Гослинг? Напрашивается ответ «в США», но на самом деле в канадском городе Калгари (в 1955-м). И ещё тинейджером в Канаде он впервые задумался о вещах, впоследствии сказавшихся на Java.

Как Джеймс позже рассказывал, в университете Калгари он занимался программой обработки данных с канадского спутника ISIS 2, работавшие с программой люди постоянно просили его что-то туда добавить, и это раздражало.

В текстовом редакторе TECO он подсмотрел идею макросов: с помощью встроенного интерпретируемого языка пользователи могли делать собственные мини-программы (так, например, появился Emacs). Это навело его на мысль «Если я тоже встрою простенький интерпретатор, то люди смогут решать свои задачи макросами и перестанут дёргать меня по мелочам, заставляя постоянно перекомпилировать всю систему». Это сработало — так Гослинг сделал свою первую платформу для исполнения чужого кода.

Затем, перебравшись в США, в университете Карнеги-Меллона он ближе подобрался к идее JVM. Перед ним встала задача портирования софта с рабочих станций PERQ на VAX, и начал он с эмулятора, но в итоге глубже погрузился в вопросы, позволяющие разработчикам софта вообще абстрагироваться от железа.

А самым громким проектом Гослинга до Java стал Gosling Emacs (он же Gosmacks). После взлёта популярности Emacs стали появляться сторонние реализации этого редактора для разных ОС и архитектур, и в 1981-м Гослинг представил свою имплементацию для UNIX. Со временем она стала второй по популярности разновидностью Emacs после основной версии Ричарда Столлмана.

Джеймс распространял Gosmacks бесплатно и охотно принимал в проект чужие улучшения, но сохранял единоличную власть над ним и указывал своё имя в копирайте. А в 1983-м решил, что больше не готов тратить на него много сил, и продал его компании UniPress. Которая стала распространять его уже коммерческим образом:

Неудивительно, что Ричард Столлман воспринял это в штыки: производную версию его детища продали корпорации, оставляя UNIX без свободной реализации. К тому моменту он уже вынашивал идею GNU Project. Но собирался начать с «низов» ОС — а из-за этой истории поменял очерёдность действий. В итоге флагманом всего движения за свободный софт стал GNU Emacs, и получается, что этому ненамеренно поспособствовал Гослинг.

В первую версию GNU Emacs даже входило немного кода из Gosmacks. Но затем UniPress предъявили претензии к тому, что используется код их коммерческого продукта, и в более поздних версиях GNU Emacs всё было переписано. Отдельная забавная деталь: часть кода у Гослинга была помечена черепом и костями («тут лучше ничего не трогайте, не разберётесь»), но Столлмана таким не остановить.

На тот момент представления об авторских правах в софте только формировались, и людям было совершенно неочевидно, что вообще можно и что нельзя. История с Gosmacks сама и сказалась на становлении норм, став прецедентом — и теперь её пересказывают в книгах вроде «Making and Unmaking Intellectual Property».

А в 1984-м Гослинг устроился в Sun Microsystems. Среди вещей, которыми он занимался там до Java, можно назвать оконную систему NeWS. У неё были некоторые преимущества перед X11, но она не стала массово распространённой — отчасти из-за того, что Sun запрашивали деньги за её исходный код, в то время как X распространялась открыто.

Java

В 1991-м Sun Microsystems затеяли так называемый Green Project, определивший дальнейшую судьбу Гослинга. Интересно, что задумка этого проекта довольно точно предсказала будущее, но сам проект дал человечеству совершенно не то, что от него ожидалось.

Сегодня, если спросить случайного айтишника про Java, он может сказать «это язык, популярный в бэкенде веб-сервисов». А на старте Green Project никто не думал в таких категориях: современных веб-сервисов не существовало, а создавать язык программирования там вообще не собирались.

Что же собирались сделать? Предвосхитить «следующую волну компьютеризации». В Sun предположили, что вслед за взлётом ПК придут новые «умные» потребительские устройства (от телевизоров до микроволновок), и захотели первыми занять какую-то нишу на этом рынке. Полной определённости «какую именно» не было, компанию интересовали и железо, и софт.

Когда пытаешься опередить прогресс и строгие ТЗ невозможны, требуется работа не в корпоративном духе, а в исследовательско-стартаперском. И Green Project, по сути, сделали самостоятельным стартапом. Для него сняли отдельный офис, посадили всю команду из 13 человек туда, дали ей время и бюджет, а коммуникацию между ней и основным офисом минимизировали. То есть у команды было много самостоятельности, но это были не просто теоретические исследования: за отведённое время она должна была сделать что-то такое, на чём Sun дальше сможет зарабатывать.

В Green Project делали одновременно и собственный железный прототип нового устройства, и операционную систему для него GreenOS. А вот новый язык для приложений изначально создавать даже не планировали, вместо этого Гослинг собирался выбрать подходящий.

Сначала он попытался модифицировать под нужды проекта компилятор C++ (называя эту затею «C++ ++ —»: возьмём С++, что-то добавим, а что-то уберём). Но затем пришёл к выводу, что даже измененённый С++ не подходит, и нужен по-настоящему новый язык. Было несколько разных соображений: в частности, хотелось добиться максимальной независимости от железа (ведь различные «умные устройства будущего» могли быть самыми разными), а сборку мусора автоматизировать.

Гослинг принялся за создание подходящего языка — и поначалу назвал его Oak попросту из-за того, что за его офисным окном рос дуб. Он вспомнил то, что ему было известно о UCSD Pascal (тоже довольно независимом от железа языке), а также пообщался с людьми, занимавшимися виртуальной машиной Smalltalk — и вдохновился этим опытом. Тем временем в проекте по-прежнему воспринимали этот язык лишь как вспомогательный инструмент, а не как масштабный самодостаточный продукт. Так что большой команды у Гослинга не появилось, он сам занимался и дизайном языка, и компилятором, и виртуальной машиной.

Спустя полтора года работы, осенью 1992-го, у группы было готово устройство-прототип «Star7» и софт для него. Это было нечто вроде пятидюймового КПК — страшно отличающегося от современных устройств, но уже с цветным тачскрином! На этом экране для примера надо было показать что-то яркое, и так возник мультяшный персонаж Дюк, ставший впоследствии маскотом Java.

Этот прототип впечатлил в Sun значимых людей вроде Билла Джоя (если имя кажется вам смутно знакомым, вы можете знать его как автора редактора vi, из которого вырос vim). Но он был скорее демонстрацией наработок, чем продуктом, а тем временем пора было переходить к монетизации. У Green Project появилось собственное юрлицо FirstPerson, Inc., теперь это официально была дочерняя компания Sun, и ей надо было разобраться, как зарабатывать.

Решено было, что имеющиеся наработки хорошо подойдут для телеприставок, и до 1994-го эту идею предлагали кабельным компаниям вроде Time Warner. Но переговоры с ними не завершились успехом (из 2020-го кажется, что идея просто обогнала своё время: эпоха умных телеприставок пришла позже). Поэтому весь проект оказался под угрозой закрытия.

Пока шли переговоры с компаниями, работа над языком продолжалась. Можно посмотреть, например, спецификацию Oak 0.2 и умилиться «детским шагам» («юникод пока нельзя, enum тоже ещё не имплементирован, но всё будет»). Но в 1994-м после жалобы от другой компании, владеющей правами на название Oak, его пришлось переименовать. Тогда и возникло название Java, но затруднительно сказать, кто его автор.

Гослинг вспоминал так: «Название появилось на совещании, где около дюжины человек брейнштормили вместе. (. ) По сути, совещание было продолжительным диким безумием. Много людей кричало много слов. Кто именно что крикнул — не установить, да и не имеет значения. По ощущениям, там было выкрикнуто большинство слов из словаря. Было много фраз «мне нравится, потому что. » и «мне не нравится, потому что. «, и в конце мы сделали список примерно из дюжины названий. Передали его юристам, чтобы они выбрали ближайший к вершине списка вариант, подходящий для регистрации торговой марки. Вариант «Java» был третьим-четвёртым сверху».

Примерно в одно время с переименованием произошла и масштабная смена курса. В 1993-м появился популярный браузер Mosaic — и спустя год стало ясно, что веб растёт гигантскими темпами. Пользователей становилось всё больше, и им хотелось уже не только передачи текста, но и чего-то сложнее. При этом у разных пользователей могли быть очень разные компьютеры. И тут внезапно оказался очень уместен язык со слоганом «Write Once Run Anywhere», изначально поставивший себе цель отвязаться от железа.

В сентябре 1994-м в Sun прошла внутренняя демонстрация собственного браузера: он мог получать по сети специальные фрагменты Java-кода (апплеты) и исполнять их. Среди тех, кто оценивал разработку, был Эрик Шмидт (на тот момент CTO Sun, позднее — СЕО Google). В компании решили действительно сделать ставку на апплеты. И на SunWorld ’95 представили два продукта: Java 1.0 и браузер HotJava.

HotJava не стал массово популярен (он был скорее демонстрацией возможностей Java, чем полноценным участником браузерных войн), а вот апплеты действительно стали прорывом: это ж можно теперь прямо в браузере, например, с кем-то в шахматы сыграть! Их поддержку добавили тогдашние короли рынка Netscape и IE, и это позволило Java занять важнейшее место в списке языков.

В XXI веке с переходом к другим технологиям все браузеры постепенно убрали поддержку апплетов, и новые поколения Java-разработчиков вообще не сталкиваются с этим понятием. Но благодаря тому начальному рывку Java удалось заполучить и другие рынки, на которых она по-прежнему остаётся — а без него, вероятно, так никогда и не стала бы популярной.

Так детище Гослинга, которое в рамках Green Project казалось просто вспомогательной частью системы, оказалось единственной важной для человечества составляющей этой системы и развилось в отдельный продукт.

Фразы Гослинга можно встретить даже на сайте с вдохновляющими цитатами.

После Java

Ещё в 2004-м Гослинг признавался: «Я сам не понимаю, в чём сейчас заключается моя работа. В основном провожу время на каких-то совещаниях, где спорю с людьми, а ещё очень активен как евангелист, общаясь с разработчиками по всему миру и получая слишком много авиамиль».

Но настоящий разрыв с Java у него произошёл после того, как в 2010-м компания Sun была куплена Oracle. По его словам, переход в новую компанию предполагал его перевод на другую роль со снижением статуса, ограничением возможностей в принятии решений и снижением оплаты. Гослинг не согласился на такие условия и ушёл.

Впрочем, при наличии претензий к Oracle он не является радикальным хейтером компании. В том же 2010-м на вопрос о будущем Java он отвечал «у Oracle многое работает на Java, так что у них есть большая мотивация не напортачить, и я смотрю в будущее с осторожным оптимизмом».

Также Гослинг поддержал иск Oracle к Google в связи с использованием Java API в Android. По его мнению, Google действительно неправильно поступила по отношению к Sun. В 2007-м при анонсе Android Джонатан Шварц, возглавлявший тогда Sun, в блоге одобрительно высказался об этом. Поэтому со стороны всё выглядело так, будто в Sun никакой проблемы в поведении Google не видели, и только Oracle увидела повод предъявить претензии. Но Джеймс озвучивал другой взгляд изнутри: «Мы все были очень обеспокоены, в том числе и Джонатан, он просто попытался сделать из лимонов лимонад, и в Sun его поведение тогда многих разозлило».

Любопытно, что при этом Google оказался следующим его местом работы после Sun, но там он задержался всего на полгода. Уже в сентябре 2011-го Гослинг внезапно перешёл на работу в маленький стартап Liquid Robotics: «в Google я встретил множество интересных людей, но теперь познакомился с другими людьми, делающими нечто вопиющее, и скрепя сердце решил покинуть Google».

Этим «чем-то вопиющим» были подводные роботы: автономные устройства, которые перемещаются под водой (порой годами подряд), собирая информацию сенсорами и отправляя её в облако. Это нужно, например, для мониторинга химического состава воды. Гослинг отвечал за софт — как на самих роботах, так и со стороны дата-центра, куда поступала собранная информация. Похоже, ему опять пришлось со стороны софта иметь дело с очень разным железом!

Там он провёл шесть лет. Похоже, что работа ему нравилась, но, как он сам отмечал, рассказывать обо всех подробностях он не мог, потому что в этой сфере много строгих NDA.

В 2016-м компанию купил Boeing. Получилось, что у Гослинга второй раз подряд произошло то же самое: сначала занимаешься чем-то в формате стартапа, а годы спустя при покупке компании обнаруживаешь себя внутри гиганта.

Как и в предыдущий раз, он снова ушёл. Но в этот раз новым местом его работы тоже оказался гигант: он перешёл в AWS на позицию «distinguished engineer» (что бы это ни значило — вот как раз на JPoint можно будет уточнить, чем именно он занимается каждый день).

Связан ли он ещё как-то с дизайном языков программирования? Да: помимо основной работы, он является советником компании Lightbend, известной по языку Scala. В 2011-м он сказал «Если бы я сегодня выбирал для использования язык, отличный от Java, выбрал бы Scala». (Прямо ощущаем, как в 2020-м на этом месте у некоторых напрашивается вопрос про Kotlin.)

Что ещё можно о нём сказать? Его любимое иррациональное число — корень из двойки. Наверное, тут больше информации даёт не «корень из двойки», а сам тот факт, что у человека есть любимое иррациональное число.

Итог получается такой. Когда-то Гослинг в компании Sun сделал язык для проекта, связанного с «умными потребительскими устройствами», а сейчас это выглядит интересной иронией судьбы. И задуманные устройства конкретно тогда не материализовались, и той компании уже нет, и сам он занимается другим — но язык спустя 25 лет после релиза продолжает активно жить, и в том числе на нём пишут приложения для умных устройств. В 1992-м у прототипа был пятидюймовый тачскрин — а теперь у всех людей в кармане по пятидюймовому тачскрину, и на большинстве из них люди видят приложения, написанные на Java. В каком-то смысле исходный план воплотился.

Джеймс Гослинг поучаствует в онлайн-конференции JPoint, чтобы ответить на вопросы — и наши, и ваши. Что он думает о современном развитии Java? Что он сделал бы иначе, если бы сейчас вернулся в 1991-й и делал Java с нуля? Почему что-то из базовых вещей Java было спроектировано именно таким образом? Вот и узнаем.

  • Блог компании JUG Ru Group
  • Java

Язык программирования JAVA

Язык программирования JAVA был создан программистом из Канады, Джеймсом Гослингом. Произошло это в 1995 году, однако актуальности своей этот язык не потерял до сих пор. Изначально предназначенный для применения в бытовой технике, он приобрел большую популярность и сейчас больше всего известен как язык, с помощью которого создаются приложения для различных устройств, самые разнообразные – от игр до электронных версий книг.

История создания языка программирования JAVA

История JAVA началась еще в 1991 году, когда Патрик Ноутон, Билл Джой и Джеймс Гослинг начали работу над собственным проектом. Основной целью проекта было создание аппаратно-программной платформы нового поколения, использование которой не требовало бы специальных знаний. Речь шла о создании «компьютера для людей», максимально надежного и при этом простого в управлении. Проект получил название «Green». В ходе работ возникла потребность в новом языке программирования, который был бы максимально универсальным и мог бы применяться на любых платформах. Так появился «Oak».

Язык программирования JAVA в том виде, в котором мы его знаем, появился далеко не сразу. Несколько лет подряд разработчики пытались внедрить новую технологию в различные сферы, начиная от интерактивного телефиденья и заканчивая игровыми приставками, ноо везде потерпели неудачу. Первым продвижением с мертвой точки стало создание в 1994 году браузера «WebRunner», который был способен отображать интерактивные программы-апплеты, встроенные непосредственно в страницы. Новый браузер обладал всем необходимым набором для того, чтобы стать популярным:

  • Универсальность, отсутствие привязки к конкретной платформе
  • Не требовал предварительной установки приложений
  • Быстро загружался за счет компактного кода
  • Имел встроенную систему безопасности

Новый браузер начинал становиться популярным, и в итоге в 1995 году «Oak» получил новое имя. Так родился язык программирования JAVA, таким, каким мы его знаем. Браузер переименовался в «HotJava», однако его существование уже подходило к концу. А вот JAVA начал победное шествие по миру: сначала, 23 мая 1995 года, он был официально представлен и интегрирован в поуплярнейшем браузере того времени, Netscape Navigator 2.0, в 1996 году его начал поддерживать известный сейчас каждому Microsoft Internet Explorer, тогда еще в версии 3.0.

В 1997 году JAVA перетерпел ряд существенных обновлений , разделился на несколько отдельных платформ и начал приобретать все более и более широкую популярность, которая не угасла и по сей день.

Отличие JAVA от других языков программирования

Язык программирования JAVA имеет целый ряд существенных преимуществ, которые в итоге и сделали его одним из самых популярных языков современности. Среди них выделяют следующие:

  1. Универсальность. Язык программирования JAVA позволяет после прогонки через JAVA-машину и трансляции в байт-код использовать созданные программы на любой платформе.
  2. Работа программы определяется виртуальной JAVA-машиной, и не требует непосредственного взаимодействия с физической памятью вашего компьютера, что повышает уровень безопасности программного обеспечения.
  3. Язык программирования JAVA создан так, что механизмы, которые потенциально могут привести к ошибкам в коде, в нем попросту отсутствуют. Именно поэтому JAVA считается одним из самых надежных языков.
  4. Программа автоматически «убирает за собой», освобождая засорившуюся в ходе работы память.
  5. Обширные стандартные библиотеки, содержащие собрания готовых решений часто встречающихся задач. Эти обьекты можно свободно использовать при написании собственного кода.
  6. Вся необходимая документация генерируется в автоматическом режиме во время написания кода.
  7. Язык программирования JAVA позволяет реализовать любые задачи в любой сфере, что делает его незаменимым в современных разработках.

Есть и минусы – например, выполняемая операция прерывается, если выходит за пределы JAVA-машины. Однако разработки не стоят на месте, JAVA чем дальше, тем активнее обновляется, подстраиваясь под современные требования и приобретая все новый и новый функционал.

Сферы применения JAVA сегодня

Благодаря своей уникальности, JAVA получил распространение в самых различных сферах. В первую очередь, это, разумеется, всяческие приложения для ПК – они легкие, не требуют предварительной установки – просто запускаются. Единственное требование – в операционную систему должна быть встроена среда исполнения JAVA.

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

Кроме того, стоит упомянуть, что эпоха апплетов не ушла в прошлое вместе с девяностыми. Наоборот – интерактивное взаимодействие страницы с пользователем только набирает популярность. И в создании таких элементов так же используется JAVA.

Кроме того, язык программирования JAVA используется для создания ряда программ, отвечающих за функциональность веб-страниц, серверов и так дал

Урок 2. Обзор Java: введение, преимущества и история создания языка программирования

Прежде, чем перейти к обучению, начнём с введения в java-программирование, разберёмся кратко, что это за такой язык программирования. Немного истории языка java. Язык Java разработан компанией Sun Microsystems, создателем которого был Джеймс Гослинг, и выпущен в 1995 году в качестве основных компонентов компании Sun Microsystems – Java платформ (Java 1.0 [J2SE]).

По состоянию на 2017 год последней версией Java Standard Edition является 8 (J2SE). С развитием Java, и её широкой популярностью, несколько конфигураций были построены для различных типов платформ. Например: J2EE – приложения для предприятий, J2ME – для мобильных приложений.

Sun Microsystems переименовала прежнюю версию J2 и ввела новые: Java SE, Java EE и Java ME. Введение в программирование Java различных версий подтверждало знаменитый слоган компании «Напиши один раз, запускай везде».

История создания языка Java

История создания языка Java начинается в июне 1991 года, когда Джеймс Гослинг создал проект для использования в одном из своих многочисленных сет-топ проектов. Язык, который рос вне офиса Гослинга, как дуб, Oak — первоначальное название Java до 1995 года, после в дальнейшем история Java продолжалась под именем Green, а позже был переименован как Java.

Но официальной датой создания языка Java считается 23 мая 1995 года, после выпуска компанией Sun первой реализации Java 1.0. Она гарантировала «Напиши один раз, запускай везде», обеспечивая недорогой стоимостью на популярных платформах.

13 ноября 2006 года, Sun выпустила большую часть как свободное и открытое программное обеспечение в соответствии с условиями GNU General Public License (GPL).

После 8 мая 2007 года судьба 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++, так как он предназначен для адаптации к меняющимся условиям. Программы могут выполнять обширное количество во время обработки информации, которая может быть использована для проверки и разрешения доступа к объектам на время выполнения.

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

Инструменты, которые понадобятся

Для выполнения примеров, рассмотренных в этом учебнике, Вам нужен компьютер Pentium 200 МГц с минимальной оперативной памятью 64 Мб (рекомендуется оперативная память 128 Мб).

Вам также понадобится следующее программное обеспечение:

  • Linux 7.1, Windows 95/98/2000/7/8 и выше или другая операционная система.
  • JDK 5 и выше.
  • Notepad или любой другой текстовый редактор.

Самоучитель обеспечит необходимыми навыками для создания GUI, сетевых и веб-приложений.

Ознакомившись с особенностями истории появления и преимуществами языка Java, Вы закончили урок введения в язык программирования. Следующий урок будет Вас вести к изучению языка и документации. Проинструктирует Вас о том, как установить и подготовить среду для разработки приложений.

Оглавление

  • 1. Java – Самоучитель для начинающих
  • 2. Java – Обзор языка
  • 3. Java – Установка и настройка
  • 4. Java – Синтаксис
  • 5. Java – Классы и объекты
  • 6. Java – Конструкторы
  • 7. Java – Типы данных и литералы
  • 8. Java – Типы переменных
  • 9. Java – Модификаторы
  • 10. Java – Операторы
  • 11. Java – Циклы и операторы цикла
  • 11.1. Java – Цикл while
  • 11.2. Java – Цикл for
  • 11.3. Java – Улучшенный цикл for
  • 11.4. Java – Цикл do..while
  • 11.5. Java – Оператор break
  • 11.6. Java – Оператор continue
  • 12. Java – Операторы принятия решений
  • 12.1. Java – Оператор if
  • 12.2. Java – Оператор if..else
  • 12.3. Java – Вложенный оператор if
  • 12.4. Java – Оператор switch..case
  • 12.5. Java – Условный оператор (? 🙂
  • 13. Java – Числа
  • 13.1. Java – Методы byteValue(), shortValue(), intValue(), longValue(), floatValue(), doubleValue()
  • 13.2. Java – Метод compareTo()
  • 13.3. Java – Метод equals()
  • 13.4. Java – Метод valueOf()
  • 13.5. Java – Метод toString()
  • 13.6. Java – Метод parseInt()
  • 13.7. Java – Метод Math.abs()
  • 13.8. Java – Метод Math.ceil()
  • 13.9. Java – Метод Math.floor()
  • 13.10. Java – Метод Math.rint()
  • 13.11. Java – Метод Math.round()
  • 13.12. Java – Метод Math.min()
  • 13.13. Java – Метод Math.max()
  • 13.14. Java – Метод Math.exp()
  • 13.15. Java – Метод Math.log()
  • 13.16. Java – Метод Math.pow()
  • 13.17. Java – Метод Math.sqrt()
  • 13.18. Java – Метод Math.sin()
  • 13.19. Java – Метод Math.cos()
  • 13.20. Java – Метод Math.tan()
  • 13.21. Java – Метод Math.asin()
  • 13.22. Java – Метод Math.acos()
  • 13.23. Java – Метод Math.atan()
  • 13.24. Java – Метод Math.atan2()
  • 13.25. Java – Метод Math.toDegrees()
  • 13.26. Java – Метод Math.toRadians()
  • 13.27. Java – Метод Math.random()
  • 14. Java – Символы
  • 14.1. Java – Метод Character.isLetter()
  • 14.2. Java – Метод Character.isDigit()
  • 14.3. Java – Метод Character.isWhitespace()
  • 14.4. Java – Метод Character.isUpperCase()
  • 14.5. Java – Метод Character.isLowerCase()
  • 14.6. Java – Метод Character.toUpperCase()
  • 14.7. Java – Метод Character.toLowerCase()
  • 14.8. Java – Метод Character.toString()
  • 15. Java – Строки
  • 15.1. Java – Метод charAt()
  • 15.2. Java – Метод compareTo()
  • 15.3. Java – Метод compareToIgnoreCase()
  • 15.4. Java – Метод concat()
  • 15.5. Java – Метод contentEquals()
  • 15.6. Java – Метод copyValueOf()
  • 15.7. Java – Метод endsWith()
  • 15.8. Java – Метод equals()
  • 15.9. Java – Метод equalsIgnoreCase()
  • 15.10. Java – Метод getBytes()
  • 15.11. Java – Метод getChars()
  • 15.12. Java – Метод hashCode()
  • 15.13. Java – Метод indexOf()
  • 15.14. Java – Метод intern()
  • 15.15. Java – Метод lastIndexOf()
  • 15.16. Java – Метод length()
  • 15.17. Java – Метод matches()
  • 15.18. Java – Метод regionMatches()
  • 15.19. Java – Метод replace()
  • 15.20. Java – Метод replaceAll()
  • 15.21. Java – Метод replaceFirst()
  • 15.22. Java – Метод split()
  • 15.23. Java – Метод startsWith()
  • 15.24. Java – Метод subSequence()
  • 15.25. Java – Метод substring()
  • 15.26. Java – Метод toCharArray()
  • 15.27. Java – Метод toLowerCase()
  • 15.28. Java – Метод toString()
  • 15.29. Java – Метод toUpperCase()
  • 15.30. Java – Метод trim()
  • 15.31. Java – Метод valueOf()
  • 15.32. Java – Классы StringBuilder и StringBuffer
  • 15.32.1. Java – Метод append()
  • 15.32.2. Java – Метод reverse()
  • 15.32.3. Java – Метод delete()
  • 15.32.4. Java – Метод insert()
  • 15.32.5. Java – Метод replace()
  • 16. Java – Массивы
  • 17. Java – Дата и время
  • 18. Java – Регулярные выражения
  • 19. Java – Методы
  • 20. Java – Потоки ввода/вывода, файлы и каталоги
  • 20.1. Java – Класс ByteArrayInputStream
  • 20.2. Java – Класс DataInputStream
  • 20.3. Java – Класс ByteArrayOutputStream
  • 20.4. Java – Класс DataOutputStream
  • 20.5. Java – Класс File
  • 20.6. Java – Класс FileReader
  • 20.7. Java – Класс FileWriter
  • 21. Java – Исключения
  • 21.1. Java – Встроенные исключения
  • 22. Java – Вложенные и внутренние классы
  • 23. Java – Наследование
  • 24. Java – Переопределение
  • 25. Java – Полиморфизм
  • 26. Java – Абстракция
  • 27. Java – Инкапсуляция
  • 28. Java – Интерфейсы
  • 29. Java – Пакеты
  • 30. Java – Структуры данных
  • 30.1. Java – Интерфейс Enumeration
  • 30.2. Java – Класс BitSet
  • 30.3. Java – Класс Vector
  • 30.4. Java – Класс Stack
  • 30.5. Java – Класс Dictionary
  • 30.6. Java – Класс Hashtable
  • 30.7. Java – Класс Properties
  • 31. Java – Коллекции
  • 31.1. Java – Интерфейс Collection
  • 31.2. Java – Интерфейс List
  • 31.3. Java – Интерфейс Set
  • 31.4. Java – Интерфейс SortedSet
  • 31.5. Java – Интерфейс Map
  • 31.6. Java – Интерфейс Map.Entry
  • 31.7. Java – Интерфейс SortedMap
  • 31.8. Java – Класс LinkedList
  • 31.9. Java – Класс ArrayList
  • 31.10. Java – Класс HashSet
  • 31.11. Java – Класс LinkedHashSet
  • 31.12. Java – Класс TreeSet
  • 31.13. Java – Класс HashMap
  • 31.14. Java – Класс TreeMap
  • 31.15. Java – Класс WeakHashMap
  • 31.16. Java – Класс LinkedHashMap
  • 31.17. Java – Класс IdentityHashMap
  • 31.18. Java – Алгоритмы Collection
  • 31.19. Java – Iterator и ListIterator
  • 31.20. Java – Comparator
  • 32. Java – Дженерики
  • 33. Java – Сериализация
  • 34. Java – Сеть
  • 34.1. Java – Обработка URL
  • 35. Java – Отправка Email
  • 36. Java – Многопоточность
  • 36.1. Java – Синхронизация потоков
  • 36.2. Java – Межпоточная связь
  • 36.3. Java – Взаимная блокировка потоков
  • 36.4. Java – Управление потоками
  • 37. Java – Основы работы с апплетами
  • 38. Java – Javadoc

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *