Публикации по теме 'fail-fast'
Рефакторинг по принципам «Говори, не спрашивай» и «Быстро ошибайся».
Говорите, не спрашивайте — это принцип разработки программного обеспечения, согласно которому класс должен выполнить какое-либо действие, а не проверять, можно ли его выполнить. См. пример ниже.
AirplaneState = {
STOPPED: 1,
MOVING: 2
}
class MissingTakeOffPermissionException extends Exception { }
class Airplane {
constructor() {
hasTakeoffPermission = false;
state = AirplaneState.STOPPED;
}
}
boeing747 = new Airplane();
if (boeing747.hasTakeoffPermission)..
Коллекции, мы перестали возвращать null, верно?
Я думаю об интерфейсах, ориентированных на коллекции здесь. Подобно конечной точке JSON API, возвращающей коллекцию сообщений в блоге. Или свойство объекта сообщения в блоге, содержащее теги сообщения в блоге. Мы никогда не возвращаем null — или что-то еще, кроме коллекций — из таких интерфейсов, верно?
Тема обсуждалась давно, в разных местах, подробно. Примерами могут служить Переполнение стека , известные блоги, такие как Эрик Липперт , и влиятельные книги, такие как Чистый код..
RDB — это не просто хранилище данных, а реляционное хранилище данных.
Используйте внешний ключ, естественный ключ и уникальный ключ
Реляционная база данных, мощное и надежное хранилище данных, используемое почти всеми разработчиками программного обеспечения. Он хорошо работает, даже если вы используете RDB без реляционных функций.
В зависимости от ситуации неиспользование этих ограничений может быть лучшим вариантом. Но если у вас есть возможность создать приложение с нуля, используйте внешний ключ, естественный ключ и уникальный ключ для обеспечения..
Вопросы по теме 'fail-fast'
Как совместить методы защитного программирования вместе?
Вопрос, который я хочу вам задать, довольно широкий, но в то же время очень конкретный. Во-первых, я должен сказать, что меня в основном интересуют ответы, применимые в среде .net.
Ну, я хочу повысить уровень кода, который я создаю. Теперь я в...
1184 просмотров
schedule
22.05.2022
Определить, действительно ли объект Serializable сериализуем?
Есть ли встроенный метод — или кто-нибудь может указать мне на хороший шаблон — для определения того, действительно ли объект, реализующий Serializable , сериализуем во время создания? Мне нужно что-то, что не имеет побочных эффектов, поэтому я не...
214 просмотров
schedule
07.02.2024
Функциональный/интеграционный тест веб-сервиса с Junit
Вопрос направлен на то, чтобы найти лучшее решение, чем мое.
У меня есть следующие ТРЕБОВАНИЯ для моих интеграционных тестов:
Каждый интеграционный тест реализован в одном тестовом классе.
Методы в тестовом классе должны выполняться по...
87 просмотров
schedule
03.10.2022
Как использовать failFast в динамическом конвейере в Jenkins
У меня есть конвейер с динамическими параллельными этапами, и я хочу, чтобы мой конвейер быстро выходил из строя, если какой-либо из этапов выходит из строя. Я попытался добавить failFast: true, но мой конвейер застрял на «Сбой на этапе ABC»....
9272 просмотров
schedule
03.12.2022