Программируем на Java. 5-е межд. изд. - Марк Лой - E-Book

Программируем на Java. 5-е межд. изд. E-Book

Марк Лой

0,0

Beschreibung

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

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern
Kindle™-E-Readern
(für ausgewählte Pakete)

Seitenzahl: 694

Veröffentlichungsjahr: 2023

Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:

Android
iOS
Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Марк Лой, Патрик Нимайер, Дэн Лук
Программируем на Java. 5-е межд. изд.

Переводчики В. Здобнов, Е. Матвеев

Марк Лой, Патрик Нимайер, Дэн Лук

Программируем на Java. 5-е межд. изд.. — СПб.: Питер, 2022.

ISBN 978-5-4461-1836-6

© ООО Издательство "Питер", 2022

Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.

Предисловие

Эта книга научит вас программировать на языке Java и использовать среду разработки приложений. Если вы разработчик или опытный интернет-пользователь, то наверняка слышали об этом языке. Его появление стало одним из ярчайших событий в истории интернета, а бизнес в интернете вырос до сегодняшнего уровня во многом благодаря Java-приложениям. Вероятно, Java является самым популярным в мире языком программирования. Миллионы разработчиков пишут Java-приложения почти для всех видов компьютеров, которые только можно представить. В отношении спроса на программистов Java превосходит такие языки, как C++ и Visual Basic. Он стал фактическим стандартом для разработки некоторых видов программного обеспечения, особенно веб-сервисов. Многие вузы включают Java в начальные курсы программирования наряду с другими актуальными современными языками. Возможно, вы прямо сейчас читаете эти слова на своих учебных занятиях!

Книга даст вам хорошее представление об основах языка Java, в том числе об интерфейсах программирования приложений (API), библиотеках классов, приемах программирования и идиомах. Мы подробно рассмотрим многие интересные области, а некоторые темы затронем лишь в общих чертах. Другие книги издательства O’Reilly продолжают с того уровня знаний, на котором мы остановимся, и предоставляют более полную информацию о конкретных областях и сферах применения Java.

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

Кому пригодится эта книга

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

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

На первый взгляд Java имеет много общего с языками C и C++, и если у вас есть опыт программирования на одном из них, то вам будет проще изучить Java. Но если у вас нет такого опыта, не огорчайтесь. Не надо уделять излишнее внимание синтаксическому сходству между Java и C или C++. Во многих отношениях Java ближе к более динамическим языкам, таким как Smalltalk и Lisp. Хорошо, если вы уже знаете другие объектно-ориентированные языки, но в этом случае вам придется, скорее всего, пересмотреть некоторые представления и изменить некоторые привычки. Считается, что язык Java намного проще таких языков, как C++ и Smalltalk. Если вы хорошо учитесь на коротких примерах и на собственном опыте, то эта книга должна вам понравиться.

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

Последние изменения

Это, пятое, издание книги «Программируем на Java» («Learning Java») можно также считать седьмым, обновленным и переименованным изданием нашей предыдущей популярной книги «Exploring Java». В каждом очередном издании мы старались не только добавлять материал о новых возможностях языка, но и тщательно пересматривать и обновлять весь существующий материал, чтобы систематизировать его и отражать на страницах наш многолетний опыт исследований и практического программирования.

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

Мы рассматриваем все важные особенности последней (на момент написания книги) из тех версий Java, которые сопровождаются долгосрочной поддержкой от Oracle. Это Java 11, а ее полное название — Java Standard Edition (SE) 11. (Бесплатный аналог — OpenJDK 11.) Кроме того, мы упоминаем некоторые особенности трех промежуточных версий: Java 12, Java 13 и Java 14. В компании Sun Microsystems, которая была «хранителем» Java до Oracle, за много лет несколько раз меняли схему нумерации версий. Чтобы подчеркнуть множество ценных возможностей, появившихся в версии Java 1.2, ее обозначили термином «Java 2», а также отказались от термина JDK в пользу SDK. Шестая по порядку версия (следующая после Java 1.4) получила название Java 5.0, и тогда же Sun вернула термин JDK. Только после этого продолжилась обычная нумерация: вышли версии Java 6, Java 7 и т.д.

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

Что нового в этом издании книги (Java 11, 12, 13, 14)

Это издание мы по традиции переработали таким образом, чтобы сделать его как можно более полным и актуальным. Мы учли изменения, появившиеся в Java 11 (напомним: это версия с долгосрочной поддержкой), а также в промежуточных версиях: Java 12, 13 и 14. (Подробнее о средствах Java, включенных в последние версии и исключенных из них, рассказано в главе 13.) Мы добавили в это издание следующие темы:

• Новые возможности языка, в том числе автоматическое определение (выведение) типов в обобщениях, усовершенствованная обработка исключений и синтаксис автоматического управления ресурсами.

• Интерактивная среда jshell для экспериментов с фрагментами кода.

• Выражения switch.

• Лямбда-выражения.

• Обновленные примеры и объяснения по всей книге.

Структура книги

Структура книги выглядит примерно так:

• Главы 1 и 2 содержат введение в концепцию языка Java, а также простейшее руководство, которое поможет вам немедленно приступить к программированию.

• В главе 3 рассматриваются важнейшие инструменты для разработки программ на Java (компилятор, интерпретатор, jshell и упаковщик JAR).

• В главах 4 и 5 представлены фундаментальные концепции программирования, после чего описывается сам язык Java. Изложение начинается с базового синтаксиса, а затем переходит к классам и объектам, исключениям, массивам, перечислениям, аннотациям и другим темам.

• В главе 6 рассматриваются исключения, способы обработки ошибок и средства журналирования (логирования).

• В главе 7 рассматриваются коллекции, обобщения и отношения между параметризованными типами Java.

• Глава 8 посвящена обработке текста, математическим вычислениям и некоторым другим средствам базового API.

• В главе 9 рассматриваются средства для создания многопоточных приложений.

• В главе 10 представлены основы разработки графических интерфейсов (GUI) с помощью пакета Swing.

• Глава 11 посвящена вводу-выводу Java, потокам данных, файлам, сокетам, сетям и пакету NIO.

• В главе 12 рассматриваются веб-приложения, сервлеты, WAR-файлы и веб-службы.

• Глава 13 рассказывает о процессе развития Java. Она поможет вам отслеживать будущие изменения в языке и модернизировать существующий код, используя новые возможности (например, лямбда-выражения, впервые представленные в Java 8).

Если вы похожи на нас, то вы не читаете книги с начала до конца. А если вы очень похожи на нас, то наверняка не станете читать это предисловие. Но вдруг вы все-таки с него начнете? На этот случай мы дадим несколько рекомендаций:

• Если вы программист и хотите за пять минут понять всю суть Java, то вас, скорее всего, заинтересуют примеры кода. Для начала просмотрите главу 2. Если она не вызовет энтузиазма, перейдите к главе 3 — там рассказано, как использовать компилятор и интерпретатор. Это станет хорошим первым шагом.

• Если вы собираетесь писать приложения для работы в локальной сети или в интернете, обратитесь к главам 11 и 12. Сетевые функции — это одна из самых интересных и важных частей Java.

• В главе 10 рассматриваются графические средства и компоненты Java. Это важно, если вы собираетесь писать обычные десктопные приложения с графическим интерфейсом (то есть приложения для настольных компьютеров).

• Глава 13 рассказывает о том, как всегда быть в курсе происходящих в языке Java изменений, независимо от того, что именно вас интересует.

Интернет-ресурсы

В интернете есть множество источников с информацией о языке Java. Прежде всего, достоверную информацию вы найдете на официальном сайте Oracle (https://www.oracle.com/java/technologies). В частности, Oracle публикует документацию с описаниями классов, методов, операторов и других синтаксических конструкций языка, а также дистрибутивы выпусков Java. Именно с сайта Oracle вам лучше всего загрузить эталонную реализацию JDK, которая включает в себя компилятор, интерпретатор и другие инструменты. Oracle также поддерживает официальный сайт проекта OpenJDK (https://openjdk.java.net) — так называется основная версия Java с открытым исходным кодом, в состав которой также входят компилятор, интерпретатор и другие инструменты. Мы будем использовать OpenJDK для всех примеров кода в этой книге.

Условные обозначения

В книге используются следующие шрифтовые обозначения:

Исходный код

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

Комментарии в исходном коде

Этим шрифтом в исходном коде выделены комментарии.

Команды и заменяемые элементы

Этим шрифтом выделены команды, которые вводятся в командной строке, а также те элементы в исходном коде, которые должны быть заменены читателем.

Служебные слова и символы

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

Термины

Этим шрифтом в основном тексте выделены термины, когда они вводятся впервые, а также важные понятия и названия.

Веб-ссылки

Этим шрифтом в основном тексте выделены адреса веб-сайтов с полезной информацией.

Использование исходного кода примеров

Если у вас возникнут вопросы технического характера по использованию примеров кода, направляйте их по электронной почте на адрес [email protected].

В общем случае все примеры кода из книги вы можете использовать в своих программах и в документации. Вам не нужно обращаться в издательство за разрешением, если вы не собираетесь воспроизводить существенные части программного кода. Если вы разрабатываете программу и используете в ней несколько фрагментов кода из книги, вам не нужно обращаться за разрешением. Но для продажи или распространения примеров из книги вам потребуется разрешение от издательства O’Reilly. Вы можете отвечать на вопросы, цитируя данную книгу или примеры из нее, но для включения существенных объемов программного кода из книги в документацию вашего продукта потребуется разрешение.

Мы рекомендуем, но не требуем добавлять ссылку на первоисточник при цитировании. Под ссылкой на первоисточник мы подразумеваем указание авторов, издательства и ISBN.

За получением разрешения на использование значительных объемов программного кода из книги обращайтесь по адресу [email protected].

Благодарности

Многие люди внесли свой вклад в работу над книгой — как в ее первоначальном варианте «Exploring Java», так и в этом издании. Прежде всего, мы благодарим Тима О’Рейли за то, что он предоставил нам возможность написать эту книгу. Спасибо Майку Лукидесу (Mike Loukides), редактору всей серии; его терпение и опыт постоянно направляют нас на истинный путь. Другие сотрудники O’Reilly, в том числе Амелия Блевинс (Amelia Blevins), Зен Маккуэйд (Zan McQuade), Корбин Коллинз (Corbin Collins) и Джессика Хаберман (Jessica Haberman), непрестанно делились с нами своим опытом и вдохновением. Это предел наших мечтаний — работать со столь квалифицированной и доброжелательной командой.

Исходная версия глоссария позаимствована из книги Дэвида Фленагана (David Flanagan) «Java in a Nutshell», вышедшей в издательстве O’Reilly. Также из книги Дэвида взяты некоторые диаграммы об иерархии классов. Эти диаграммы построены на основе похожих диаграмм Чарльза Л. Перкинса (Charles L. Perkins).

Мы искренне благодарны Рону Бекеру (Ron Becker) за дельные советы и интересные идеи с точки зрения дилетанта, далекого от мира программирования. Благодарим Джеймса Эллиота (James Elliott) и Дэна Лука (Dan Leuck) за их превосходные и актуальные отзывы о техническом содержании этого издания. Как это часто бывает в мире программирования, взгляд со стороны бесценен. Нам очень повезло, что рядом с нами оказались такие внимательные люди.

От издательства

Ваши замечания, предложения, вопросы отправляйте по адресу [email protected] (издательство «Питер», компьютерная редакция).

Мы будем рады узнать ваше мнение!

На веб-сайте издательства www.piter.com вы найдете подробную информацию о наших книгах.