Библиотека knigago >> Компьютеры: Разработка ПО >> Отладка, тестирование и оптимизация ПО >> Software: Ошибки и компромиссы при разработке ПО


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 1054, книга: Интриганка
автор: Татьяна Михайловна Тронина

Татьяна Тронина Остросюжетные любовные романы Татьяна Тронина — мастер остросюжетных любовных романов, и ее последняя книга «Интриганка» не разочаровывает. Это захватывающая история, полная интриг, опасностей и непредвиденных поворотов. Главная героиня, Лилия, — молодая женщина с непростым прошлым. Она вынуждена скрывать свою личность и работать под прикрытием, чтобы отомстить за убийство своего брата. Лилия проникает в опасный мир криминала, где ее жизнь весит на волоске. По мере того, как...

СЛУЧАЙНАЯ КНИГА

Томаш Лелек , Джон Скит - Software: Ошибки и компромиссы при разработке ПО

Software: Ошибки и компромиссы при разработке ПО
Книга - Software: Ошибки и компромиссы при разработке ПО.  Томаш Лелек , Джон Скит  - прочитать полностью в библиотеке КнигаГо
Название:
Software: Ошибки и компромиссы при разработке ПО
Томаш Лелек , Джон Скит

Жанр:

Отладка, тестирование и оптимизация ПО

Изадано в серии:

Библиотека программиста

Издательство:

Питер

Год издания:

ISBN:

978-5-4461-2320-9

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Software: Ошибки и компромиссы при разработке ПО"

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

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

16+

Читаем онлайн "Software: Ошибки и компромиссы при разработке ПО". [Страница - 2]

системах . . . . . . 323
Глава 11. Семантика доставки в распределенных системах . . . . . . . . . . 347
Глава 12. Управление версиями и совместимостью . . . . . . . . . . . . . . . 374
Глава 13. Современные тенденции разработки и затраты .
на сопровождение кода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433

Оглавление
https://t.me/it_boooks
Предисловие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Благодарности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
О книге . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Для кого эта книга . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Структура книги . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
О коде . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Форум liveBook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Об авторах . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Иллюстрация на обложке . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
От издательства . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Словарь паттернов проектирования . . . . . . . . . . . . . . . . . . . . . . . . 28
Глава 1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.1. Последствия каждого решения и паттерна . . . . . . . . . . . . . . . . . 30
1.1.1. Решения в модульном тестировании . . . . . . . . . . . . . . . . . 31
1.1.2. Соотношение модульных и интеграционных тестов . . . . . . . . 32
1.2. Программные паттерны проектирования и почему .
они работают не всегда . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
1.2.1. Измерение скорости выполнения . . . . . . . . . . . . . . . . . . . 39

10  Оглавление
1.3. Архитектурные паттерны проектирования и почему .
они работают не всегда . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
1.3.1. Масштабируемость и эластичность . . . . . . . . . . . . . . . . . . 41
1.3.2. Скорость разработки . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.3.3. Сложность микросервисов . . . . . . . . . . . . . . . . . . . . . . . 43
Итоги . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Глава 2. Дублирование кода не всегда плохо: дублирование кода .
и гибкость . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.1. Общий код в кодовых базах и дублирование . . . . . . . . . . . . . . . . 47
2.1.1. Добавление нового бизнес-требования, для которого
дублирование кода необходимо . . . . . . . . . . . . . . . . . . . . . . . . 49
2.1.2. Реализация нового бизнес-требования . . . . . . . . . . . . . . . . 50
2.1.3. Оценка результата . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.2. Библиотеки и совместное использование кода в кодовых базах . . . . 52
2.2.1. Оценка компромиссов и недостатков .
совместно используемых библиотек . . . . . . . . . . . . . . . . . . . . . 53
2.2.2. Создание совместно используемой библиотеки . . . . . . . . . . 54
2.3. Выделение кода в отдельный микросервис . . . . . . . . . . . . . . . . . 55
2.3.1. Компромиссы и недостатки отдельного сервиса . . . . . . . . . . 58
2.3.2. Выводы о выделении отдельных сервисов . . . . . . . . . . . . . . 62
2.4. Улучшение слабой связанности за счет дублирования кода . . . . . . . 63
2.5. Проектирование API с наследованием для сокращения .
дублирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.5.1. Выделение базового обработчика запросов . . . . . . . . . . . . . 68
2.5.2. Наследование и сильная связанность . . . . . . . . . . . . . . . . . 70
2.5.3. Компромиссы между наследованием и композицией . . . . . . . 72
2.5.4. Дублирование внутреннее и ситуативное . . . . . . . . . . . . . . 73
Итоги . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Глава 3. Исключения и другие паттерны обработки ошибок в коде . . . . . . 75
3.1. Иерархия исключений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.1.1. Универсальный и детализированный подход к обработке
ошибок . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Оглавление  11
3.2. Лучшие паттерны для обработки исключений в собственном коде . . 81
3.2.1. Обработка проверяемых исключений .
в общедоступном API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.2.2. Обработка непроверяемых исключений .
в общедоступном API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.3. Антипаттерны в обработке исключений . . . . . . . . --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.

Другие книги из серии «Библиотека программиста»:

Эффективное использование STL. Скотт Мейерс
- Эффективное использование STL

Жанр: C, C++, C#

Год издания: 2002

Серия: Библиотека программиста

Чистая архитектура. Роберт Сесил Мартин
- Чистая архитектура

Жанр: Современные российские издания

Год издания: 2018

Серия: Библиотека программиста