Гид Java-разработчика : проектно-ориентированный подход [Рауль-Габриэль Урма] (pdf) читать постранично

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

МИРОВОЙ КОМПЬЮТЕРНЫЙ БЕСТСЕЛЛЕР

O'REILLY

Raoul-Gabriel Urma
Richard Warburton

Real-World
Software
Development
A Project-Driven Guide
to Fundamentals in Java

O’REILLY

Рауль-Габриэль Урма

Ричард Уорбертон

ГИД JAVA
разработчика
Проектно-ориентированный подход

& БОМБОРА
ИЗДАТЕЛЬСТВО

Москва 2022

УДК 004.43
ББК 32.973.26-018.1
У69

Real-World Software Development
Raoul-Gabriel Urma and Richard Warburton

© 2021 Eksmo Publishing Company Authorized Russian translation of the English edition
of Real-World Software Development ISBN 9781491967171
© 2020 Functor Ltd. and Monotonic Ltd. This translation is published
and sold by permission of O’Reilly Media, Inc., which owns or controls all rights
to publish and sell the same.

У69

Урма, Рауль-Габриэль.
Гид Java-разработчика : проектно-ориентированный подход / РаульГабриэль Урма, Ричард Уорбертон ; [перевод с английского М. А. Райтман]. — Москва : Эксмо, 2022. — 224 с.: ил. — (Мировой компьютерный
бестселлер).
ISBN 978-5-04-094955-7

На примере реальных проектов авторы разбирают все наиболее популярные
приемы объектно-ориентированного программирования, такие как разработка
через тестирование или функциональное программирование. В этом руковод­
стве представлен проектно-ориентированный подход к разработке программно­
го обеспечения на языке Java, позволяющий освоить ключевые навыки, необхо­
димые каждому эффективному программисту.
УДК 004.43
ББК 32.973.26-018.1

ISBN 978-5-04-094955-7

© Райтман М.А., перевод на русский язык, 2022
© Оформление. ООО «Издательство «Эксмо», 2022

ОГЛАВЛЕНИЕ

https://t.me/it_boooks
Предисловие ......................................................................................................
Почему мы написали эту книгу ...............................................................
Подход, ориентированный на разработчика ........................................
Что в этой книге? .......................................................................................
Для кого эта книга? ....................................................................................
Условные обозначения, используемые в книге ....................................
Использование примеров кода ................................................................

11
11
12
12
13
14
15

Глава 1. Начало путешествия ........................................................................
Темы .............................................................................................................
Особенности Java .................................................................................
Разработка программного обеспечения и архитектура ................
SOLID ....................................................................................................
Тестирование ........................................................................................
Структура глав ...........................................................................................
Самостоятельная работа ...........................................................................

16
16
16
17
17
18
18
20

Глава 2. Анализатор банковских операций ...............................................
Задача ...........................................................................................................
Цель ..............................................................................................................
Требования к анализатору банковских операций ................................
Принцип KISS .............................................................................................
Переменные final ..................................................................................
Обслуживаемость кода и антишаблоны ................................................
Класс-бог ...............................................................................................
Дублирование кода ..............................................................................
Принцип единственной ответственности .............................................
Связность .....................................................................................................
Внутриклассовая связность ...............................................................
Функциональная ..............................................................
Информационная .............................................................

21
21
21
22
22
25
25
26
26
27
32
35
36
36

Служебная ........................................................................
Логическая ........................................................................
Последовательная ............................................................
Временная .........................................................................
Связность методов .............................................................................
Связанность ...............................................................................................
Тестирование .............................................................................................
Автоматизированное тестирование ................................................
Доверие ..............................................................................
Устойчивость к изменениям ..........................................
Понимание программы ...................................................
Использование JUnit ...........................................................................
Объявление метода теста ................................................
Операторы контроля .......................................................
Покрытие кода .....................................................................................
Выводы ........................................................................................................
Самостоятельная работа ..........................................................................
В завершение ...............................................................................................

37
37
38
39
39
40
42
43
43
43
44
44
44
46
47
48
49
49

Глава 3. Расширяем анализатор банковских операций ..........................
Задача ...........................................................................................................
Цель ..............................................................................................................
Требования к расширенному анализатору банковских операций ....
Принцип открытости/закрытости .........................................................
Создание