Изучаем Java EE. Современное программирование для больших предприятий

Изучаем Java EE. Современное программирование для больших предприятий
sku: 85112676
ACCORDING TO OUR RECORDS THIS PRODUCT IS NOT AVAILABLE NOW
707.00 грн.
Shipping from: Ukraine
   Description
[html]Java EE 8 – современная версия популярной платформы для программирования корпоративных приложений на языке Java. Новая версия платформы оптимизирована с учетом многочисленных технологических нововведений, среди которых – работа с контейнерами, улучшенные API для обеспечения безопасности, возможности работы с облачными хранилищами и микросервисной архитектурой. Java EE обеспечивает широкие возможности предметно-ориентированного проектирования (DDD), непрерывную интеграцию, работу по принципу DevOps, взаимодействие с Docker и Kubernetes.Принципы проектирования и архитектурные секреты, собранные в книге "Изучаем Java EE. Современное программирование для больших предприятий" в изложении великолепного Себастьяна Дашнера (в 2016 году удостоен звания Java-сhampion), послужат вам неисчерпаемым источником вдохновения и солидной базой для воплощения даже самой сложной бизнес-логики в Java-приложенияхЧто вы узнаете:- На чем следует сосредоточиться при разработке ПО для больших предприятий- Как сегодня принято создавать приложения, задействовать компоненты и пакеты- Как проектировать и структурировать большие приложения- Как правильно формулировать и реализовывать сквозной функционал- Как разобраться с контейнерами и научиться их оркестровке- Как создавать приложения, абсолютно лишенные зависимостей, а также облачно-нативные приложения- Как писать автоматизированные, быстрые, надежные тесты, которые удобно поддерживать- Как проектировать распределенные системы и учитывать связанные с ними требования Оглавление книги "Изучаем Java EE. Современное программирование для больших предприятий"Предисловие.............................................................................................................12Об авторе.................................................................................................................14О рецензенте............................................................................................................15Благодарности..........................................................................................................16Введение..................................................................................................................18Структура книги..................................................................................................18Что вам понадобится для этой книги...................................................................19Для кого предназначено это издание..................................................................20Условные обозначения........................................................................................20Загрузка примеров кода......................................................................................20Глава 1. Вступление .............................................................................................. 22Новые требования к корпоративным системам....................................................22Современный способ построения корпоративных систем.....................................24Значение Java EE для современных систем..........................................................24Обновление и перспектива развития Java EE 8....................................................25Java Community Process.......................................................................................26Что вы найдете в этой книге...............................................................................27Глава 2. Проектирование и структурирование приложений Java Enterprise ............ 29Назначение корпоративных приложений.............................................................29На чем сосредоточиться разработчику..........................................................30Удовлетворение требований клиентов..........................................................30Внешняя структура корпоративного проекта.......................................................31Структура бизнеса и группы разработчиков..................................................32Содержимое программных проектов..............................................................32Одно- и многомодульные проекты.................................................................36Иллюзии повторного использования.............................................................37Артефакты проекта.......................................................................................38Один проект — один артефакт......................................................................39Сборка систем в Java EE................................................................................39Структурирование для современных клиентских технологий.........................45Структура кода корпоративного проекта.............................................................48Ситуация в корпоративных проектах.............................................................48Структурирование по горизонтали и по вертикали........................................49Структура, продиктованная бизнес-логикой..................................................50Рациональное проектирование модулей........................................................50Реализация пакетных структур......................................................................52Не перегружайте архитектуру.......................................................................57Резюме................................................................................................................59Глава 3. Внедрение современных приложений Java Enterprise ............................... 60Границы бизнес-сценариев..................................................................................60Бизнес-компоненты ядра в современной Java EE.................................................61EJB и CDI: общее и различия.........................................................................62Генераторы CDI.............................................................................................64Генерация событий предметной области.......................................................64Области видимости.......................................................................................66Шаблоны проектирования в Java EE....................................................................67Обзор шаблонов проектирования..................................................................67Проблемно-ориентированное проектирование..............................................83Внешняя и сквозная функциональность в корпоративных приложениях..............87Обмен данными с внешними системами........................................................87Системы управления базами данных...........................................................121Сквозные задачи.........................................................................................131Настройка приложений...............................................................................133Кэширование...............................................................................................135Последовательность выполнения......................................................................137Синхронное выполнение.............................................................................137Асинхронное выполнение............................................................................138Концепции и принципы проектирования в современной Java EE........................145Удобный в сопровождении высококачественный код.........................................147Резюме..............................................................................................................148Глава 4. Облегченная Java EE ............................................................................. 150Облегченная технология корпоративной разработки.........................................150Зачем нужны стандарты Java EE........................................................................151Соглашения о конфигурации.............................................................................152Управление зависимостями в проектах Java EE..................................................153Облегченный способ упаковки приложений.......................................................155Серверы приложений Java EE............................................................................158Одно приложение — один сервер приложений..................................................160Резюме..............................................................................................................161Глава 5. Java EE в контейнерных и облачных средах ........................................... 162Цели и обоснование использования..................................................................162Инфраструктура как код..............................................................................164Стабильность и готовность к эксплуатации.................................................165Контейнеры.......................................................................................................166Java EE в контейнере.........................................................................................168Фреймворки управления контейнерами.............................................................170Реализация управления контейнерами..............................................................171Java EE в управляемых контейнерах..................................................................177Подключение к внешним сервисам..............................................................177Конфигурирование управляемых приложений.............................................178Двенадцатифакторные приложения и Java EE...................................................179Одна кодовая база в системе контроля версий и множестворазвертываний............................................................................................180Явное объявление и изоляция зависимостей...............................................181Хранение конфигурации в среде.................................................................181Вспомогательные сервисы как подключаемые ресурсы...............................182Строгое разделение этапов сборки и запуска..............................................182Выполнение приложения как одного или нескольких процессовбез сохранения состояния...........................................................................183Экспорт сервисов через привязку портов....................................................183Масштабирование с помощью процессов.....................................................184Максимальная надежность, быстрый запуск и плавное отключение............184Максимально единообразная разработка, установка и запускв эксплуатацию...........................................................................................185Журналы как потоки событий......................................................................186Запуск задач администрирования и управления как однократныхпроцессов...................................................................................................187Облака, облачные приложения и их преимущества...........................................188Резюме..............................................................................................................190Глава 6. Рабочие процессы создания приложений .............................................. 192Цели и обоснование построения продуктивных рабочих процессов...................192Реализация процессов разработки.....................................................................194Всё под контролем версий...........................................................................195Сборка двоичных файлов............................................................................196Гарантия качества.......................................................................................199Развертывание............................................................................................201Миграция данных........................................................................................205Тестирование..............................................................................................211Метаданные сборки.....................................................................................212Передача в эксплуатацию...........................................................................213Модели ветвления.......................................................................................214Технология.................................................................................................215Конвейер как код........................................................................................216Рабочие процессы в Java EE..............................................................................219Культура непрерывной поставки и культура разработки....................................220Ответственность.........................................................................................221Проверять рано и часто..............................................................................221Проблемы немедленных исправлений.........................................................222Прозрачность..............................................................................................223Постоянное совершенствование..................................................................224Резюме..............................................................................................................225Глава 7. Тестирование ........................................................................................ 226Необходимость тестирования............................................................................226Требования к хорошим тестам...........................................................................227Предсказуемость.........................................................................................228Изолированность.........................................................................................228Надежность.................................................................................................229Быстрое выполнение...................................................................................229Автоматизация............................................................................................229Удобство сопровождения............................................................................230Что тестировать................................................................................................230Определение областей тестирования................................................................231Модульные тесты........................................................................................232Компонентные тесты...................................................................................232Интеграционные тесты................................................................................232Системные тесты.........................................................................................233Тесты производительности..........................................................................233Стресс-тесты...............................................................................................234Реализация тестирования..................................................................................235Модульные тесты........................................................................................235Компонентные тесты...................................................................................240Интеграционные тесты................................................................................245Интеграционные и системные тесты на уровне кода...................................251Системные тесты.........................................................................................253Тесты производительности..........................................................................262Локальное выполнение тестов...........................................................................267Обслуживание тестовых данных и сценариев....................................................270Насколько важны обслуживаемые тесты.....................................................270Признаки недостаточного качества тестов..................................................270Качество тестового кода.............................................................................271Поддержка технологий тестирования..........................................................273Резюме..............................................................................................................275Глава 8. Микросервисы и системная архитектура ................................................ 277Причины создания распределенных систем.......................................................278Проблемы распределенных систем....................................................................278Потери за счет пропускной способности......................................................279Потери производительности........................................................................279Организационные расходы..........................................................................279Как разрабатывать системные среды.................................................................280Карты контекстов и ограниченные контексты..............................................280Разделение задач........................................................................................281Рабочие команды........................................................................................281Жизненные циклы проектов........................................................................282Как разрабатывать системные интерфейсы.......................................................282Что надо учитывать при разработке API......................................................282Управление интерфейсами..........................................................................283Документирование границ..........................................................................285Последовательность или масштабируемость?..............................................287Регистрация событий, архитектура, управляемая событиями, и CQRS...............288Недостатки CRUD-систем.............................................................................288Регистрация событий..................................................................................289Согласованность в реальном мире..............................................................291Архитектуры с регистрацией событий.........................................................292Введение в CQRS.........................................................................................293Коммуникация...................................................................................................298Архитектуры микросервисов..............................................................................298Совместный доступ к данным и технологиям в корпоративных системах.....298Архитектуры без разделения ресурсов........................................................299Независимые системы.................................................................................300Облачные и двенадцатифакторные приложения.........................................301Когда микросервисы нужны, а когда — нет.................................................301Реализация микросервисов в Java EE.................................................................302Приложения с нулевыми зависимостями.....................................................302Серверы приложений..................................................................................302Реализация контуров приложений...............................................................303Реализация CQRS........................................................................................304Java EE в эпоху распределенных вычислений..............................................314Подробнее об устойчивости........................................................................320Резюме..............................................................................................................321Глава 9. Мониторинг, производительность и журналирование ............................ 322Бизнес-показатели............................................................................................322Сбор бизнес-показателей............................................................................323Выдача показателей....................................................................................325Требования к производительности в распределенных системах........................329Соглашения об уровне обслуживания.........................................................330Вычисление SLA в распределенной системе................................................330Решение проблем производительности.............................................................331Теория ограничений....................................................................................331Определение падения производительности с помощью jPDM......................332Технические показатели....................................................................................339Типы технических показателей...................................................................340Высокочастотный мониторинг и выборочные исследования........................340Сбор технических показателей....................................................................341Журналирование и отслеживание.....................................................................343Недостатки традиционного журналирования...............................................343Журналирование в мире контейнеров.........................................................347Журналирование...............................................................................................349Трассировка......................................................................................................349Типичные проблемы производительности.........................................................353Журналирование и потребление памяти.....................................................354Преждевременная оптимизация..................................................................354Реляционные базы данных..........................................................................355Коммуникация.............................................................................................356Потоки и пулы.............................................................................................357Тестирование производительности....................................................................358Резюме..............................................................................................................359Глава 10. Безопасность ....................................................................................... 360Уроки прошлого................................................................................................360Безопасность в современном мире....................................................................361Принципы обеспечения безопасности.........................................................362Возможности и решения..............................................................................364Обеспечение безопасности в приложениях Java EE...........................................366Прозрачная безопасность............................................................................367Сервлеты....................................................................................................367Субъекты и роли Java..................................................................................367JASPIC.........................................................................................................368Security API.................................................................................................368Резюме..............................................................................................................372Глава 11. Заключение ......................................................................................... 373Правильная постановка задач при корпоративной разработке..........................373Облачные среды и непрерывная поставка.........................................................374Актуальность Java EE.........................................................................................374Обновления API в Java EE 8...............................................................................375CDI 2.0........................................................................................................375JAX-RS 2.1...................................................................................................376JSON-B 1.0...................................................................................................377JSON-P 1.1...................................................................................................377Bean Validation 2.0.......................................................................................378JPA 2.2........................................................................................................378Security 1.0..................................................................................................379Servlet 4.0...................................................................................................379JSF 2.3........................................................................................................379JCP и участие в создании стандартов................................................................380MicroProfile........................................................................................................380Eclipse Enterprise for Java...................................................................................381Приложение. Дополнительные ресурсы..................................................................382[/html]
   Technical Details
categoryTitle: Научная и техническая литература
rating: 0
   Price history chart & currency exchange rate

Customers also viewed