Что такое хороший общий термин для ошибок и предупреждений?

Я хотел бы построить иерархию ошибок и предупреждений ОО, возвращаемых клиенту во время, скажем, операции ценообразования:

interface PricingMessage {}

interface PricingWarning extends PricingMessage {}

interface PricingError extends PricingMessage {}

class NoSuchProductError implements PricingError {
 ...
}

Я не очень заинтересован в названии PricingMessage, Какова концепция, которая включает в себя ошибки и предупреждения?

РЕДАКТИРОВАТЬ: Чтобы быть ясным, я ищу общую концепцию или название для ошибок и предупреждений, в частности (исключая, например, общие информационные сообщения). Например, компиляторы также сообщают об ошибках и предупреждениях. Что это?

7 ответов

Некоторые предложения...

"Результат"

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

PricingResult

"Проблема"

Операция была запущена, но с проблемами, некоторые из которых могут быть фатальными (ошибки), а некоторые - нет (предупреждения). Если нет проблем, подразумевается успех.

PricingIssue

"Состояние"

Операция может иметь или находиться в состоянии ошибки или в состоянии предупреждения. Я думаю, что некоторые компиляторы используют "условие" как абстрактный термин для ошибки или предупреждения.

PricingCondition

"Diagnostic"

Результатом операции может быть диагностика ошибок и предупреждений. Я полагаю, еще один термин компилятора.

PricingDiagnostic

Если вы имели дело с Java или подобными ОО языками, то слово, которое вы ищете, будет Exception, Это указывает на то, что вы достигли "исключительного" состояния, которое необходимо обрабатывать контролируемым образом.

Просматривая несколько списков синонимов, я обнаружил следующее:

  • Аномалия, странность, отклонение
  • Оповещение, сообщение, уведомление
  • Неисправность, ошибка, сбой, глюк

Я предпочитаю имя Alert, Оповещение IMO может иметь любой уровень серьезности, его можно идентифицировать как информационный, предупреждающий, критический или любой другой уровень, который считается подходящим.

Контр-аргумент, который я слышал об этом наименовании, заключается в том, что оповещение о существительном следует слишком близко, чтобы предупредить глагол, делая различие в том, что объект (существительное) может или еще не был доведен до сведения пользователей (глагол). В этом контексте присвоение им предупреждений может привести к некоторому когнитивному диссонансу и, возможно, путанице для разработчиков, рассуждающих о вашем коде.

Лучшее, что я могу предложить, это провести жесткое различие в вашей кодовой базе между Alert (объект исключительного состояния) и Notification (акт оповещения внимания пользователей), чтобы программисты были интуитивно понятны.

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

Это очень субъективно, но вот несколько советов:

  • Выход
  • LogEntry

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

Другие вопросы по тегам