Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул. Алексей Сергеевич Лот

Читать онлайн.
Название Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул
Автор произведения Алексей Сергеевич Лот
Жанр
Серия
Издательство
Год выпуска 0
isbn 9785006032576



Скачать книгу

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

      Сначала отлаживать основной код.

      Не игнорировать системные ошибки, считая их случайными разовыми сбоями.

      Убедиться, что сам код работает вне многопоточного контекста, созданием POJO-объектов, вызываемых из потоков.

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

      Найти средства измерения производительсноти системы в разных конфигурациях.

      Реализовать систему так, чтобы количество программных потоков могло легко изменяться, в том числе во время работы системы, в том числе с автоматическим регулированием количества потоков.

      JVM не гарантирует вытесняющей многопоточности.

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

      Заставить поток исполняться по разным путям в тесте методами object. wait (), object.sleep (), object. yield (), object.priority () – инструментовка кода.

      Автоматическая инструментовка с использованием Aspect-Oriented Framework, CGLIB, ASM, ConTest.

      Суть тестирования – сломать предсказуемость пути выполнения.

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

      Типичные источники многопоточных ошибок: работа с общими данными из нескольких потоков, использование пула общих ресурсов.

      Использовать длительное тестирование многопоточного кода перед включением в систему.

      Программирование ближе к ремеслу, чем к науке.

      Спасать положение нужно именно сейчас.

      Во время переработки кода не добавлять в программу новые возможности.

      Предусмотреть, в каких местах будет появляться новый код.

      Множество разных типов со сходными методами – причина выделить класс.

      TDD: не вносить в систему изменения, нарушающие работоспособность системы.

      Добавление теста или класса ничего не нарушит.

      Удалять бесполезные функциии.

      Тесты всегда должны хотя бы запускаться.

      Прочитать последовательное очищение.

      Переработка кода напоминает кубик Рубика.

      Важный аспект хорошей архитектуры – логическое разбиение кода.

      Плохой код тянет группу ко дну.

      Открытый код требует смелости и доброй воли.

      Полезные высказывания из книги «Отладка приложений для Microsoft. Net» Джона Роббинса

      В разделе приведены цитаты из [4].

      Большинство команд тратит в среднем 50% цикла разработки на отладку.

      Отладка требует специального обучения.

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

      Книги по программированию