Гид Java-разработчика

Гид Java-разработчика

Гид Java-разработчика
Автор: Ричард Уорбертон, Урма Рауль-Габриэль
Дата выхода: 2022
Издательство: БОМБОРА
Количество страниц: 226
Размер файла: 4,1 МБ
Тип файла: PDF
Добавил: codelibs
 Проверить на вирусы

ОГЛАВЛЕНИЕ  
Предисловие  
Почему мы написали эту книгу  
Подход, ориентированный на разработчика  
Что в этой книге?  
Для кого эта книга?  
Условные обозначения, используемые в книге  
Использование примеров кода  

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

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

Глава 3. Расширяем анализатор банковских операций  
Задача  
Цель  
Требования к расширенному анализатору банковских операций  
Принцип открытости/закрытости  
Создание экземпляра функционального интерфейса  
Лямбда-выражения  
Подводные камни интерфейсов  
Интерфейс-бог  
Слишком мизерный  
Явный API против неявного  
Доменный класс или примитив?  
Множественный экспорт  
Знакомство с доменным объектом  
Объявление и реализация соответствующего интерфейса  
Обработка исключений  
Для чего нужны исключения?  
Шаблоны и антишаблоны для исключений  
Выбор между проверяемыми и непроверяемыми исключениями  
Слишком специфические  
Слишком однообразные  
Шаблон уведомления  
Методика применения исключений  
Не игнорируйте исключение  
Не перехватывайте «общие» исключения  
Документируйте исключения  
Будьте осторожны с исключениями, связанными с конкретной реализацией  
Исключения против управляющего потока  
Альтернативы исключениям  
Использование сборщиков  
Зачем нужны сборщики  
Работа с Maven  
Структура проекта  
Пример сборочного файла  
Команды Maven  
Использование Gradle  
Пример сборочного файла  
Команды Gradle  
Выводы  
Самостоятельная работа  
В завершение  

Глава 4. Система управления документами  
Задача  
Цель  
Требования к системе управления документами  
Воплощение идеи  
Импортеры  
Класс Document  
Атрибуты и иерархия Documents  
Реализация и регистрация импортеров  
Принцип подстановки Дисков  
Альтернативные подходы  
Поместить импортер в класс  
Область действия и инкапсуляция  
Расширение и повторное использование кода  
Гигиена тестов  
Именование тестов  
Поведение, а не реализация  
Не повторяйтесь  
Хорошая диагностика  
Тестирование ошибочных ситуаций  
Константы  
Выводы  
Самостоятельная работа  
В завершение  

Глава 5. Движок бизнес-правил  
Задача  
Цель  
Требования к движку бизнес-правил  
Разработка через тестирование  
Зачем нужен TDD?  
Цикл TDD  
Мокинг  
Добавление условий  
Моделирование состояния  
Вывод типа локальной переменной  
Switch-выражения  
Принцип разделения интерфейса  
Разработка текучего интерфейса (Fluent API)  
Что такое Fluent API?  
Моделирование домена  
Шаблон Builder  
Выводы  
Самостоятельная работа  
В завершение  

Глава 6. Twootr  
Задача  
Цель  
Требования к Twootr  
Обзор разработки  
Технология Pull  
Технология Push  
От событий к разработке  
Связь  
GUI — графический интерфейс пользователя  
Продолжаем  
Гексагональная архитектура  
С чего начать  
Пароли и безопасность  
Подписчики и твуты  
Моделирование ошибок  
Твутинг  
Создание моков  
Верификация при помощи моков  
Библиотеки для мокинга  
SenderEndPoint  
Позиции  
Методы equals и hashcode  
Взаимосвязь между equals и hashCode  
Выводы  
Самостоятельная работа  
В завершение  

Глава 7. Расширение Twootr  
Задача  
Цель  
Резюме  
Живучесть и шаблон «Репозиторий»  
Проектирование репозиториев  
Объекты-запросы  
Функциональное программирование  
Лямбда-выражения  
Ссылки на методы  
Execute Around  
Потоки  
map()  
forEach()  
filter()  
reduce()  
Optional  
Пользовательский интерфейс  
Инверсия зависимости и внедрение зависимости  
Пакеты и сборочные системы  
Ограничения и упрощения  
Выводы  
Самостоятельная работа  
В завершение  

Глава 8. Заключение  
Проектно-ориентированная структура  
Самостоятельная работа  
Сознательная практика  
Следующие шаги и дополнительные ресурсы  
Об авторах  
В завершение  

Предметный указатель

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

Каждая глава книги сконцентрирована на определенном проекте, начинающемся как простое консольное приложение и вырастающем в полноценное приложение.

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


Похожее:

Список отзывов:

Нет отзывов к книге.