Добрый день.
В рамках детальной проработки
курса удаленного образования «Java Core» я пишу серию публикаций и делаю несколько переводов наиболее популярных статей.
Также я веду курс
«Scala for Java Developers» на платформе для онлайн-образования udemy.com (аналог Coursera/EdX).
Сейчас я предлагаю Вам на рассмотрение мой перевод
«Programming With Assertions» с некоторыми комментариями.
Оригинальная публикация не только детально объясняет варианты использования ключевого слова
assert в Java и то, как реализована поддержка данного механизма на уровне загрузки классов, но также является достаточно неформальным введением в
Разработку-по-Контракту (Design-by-Contract).
Другие статьи и переводы по курсу Java Core
Другие статьи и переводы по курсу Multicore Java programming
P.S. Автор признает, что для него лично русский язык намного сложнее языка Java, с благодарностью выслушает в личку о всех замеченных ошибках и постарается их в кратчайшие сроки исправить.
Программирование с утверждениями (oracle.com: Programming With Assertions)
Утверждение (assert) — это оператор (statement) языка программирования Java, который позволяет вам проверить свои предположения о программе. Например, если вы пишете метод, вычисляющий скорость частицы, можно «утверждать», что расчетная скорость меньше скорости света.
Каждое утверждение содержит логическое выражение, которое, по вашему мнению, будет верным в момент выполнения. В противном случае, система выбросит исключение. Проверяя, что логическое выражение на самом деле верно, утверждение (assert) подтверждает ваши предположения (ожидания) о поведении программы, увеличивая уверенность в том, что программа не содержит ошибок.