All streams
Search
Write a publication
Pull to refresh

Comments 9

А почему не сделать таблицу? На питоне это будет словарь, значения - вызовы функций, ключи - логические выражения. Тогда при изменениях, просто добавляем или удаляем выражения в словарь.

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

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

Вариант с таблицей для логических функций поддерживаю.

Ну, собственно, именно по-этому нужен регулярный рефакторинг.

Лучшая форма не самая краткая, а самая

  • Модифицируемая

  • Понятная

  • С возможностью просмотра в отладчике или логе, какое именно условие сработало

++Не самая долгая по трудозатратам

Настраиваемая/параметризуемая

Переиспользуемая

Элементы И-НЕ (NAND) и ИЛИ-НЕ (NOR) часто дешевле и универсальнее. Поэтому не всё так просто с картами Карно :)

От изменяющихся условий задачи не помогут никакие элементы.

Ну так идеальный код не самый компактный. И даже не самый понятный. А такой, который потребует минимум правок, когда менеджер прибежит с новыми требованиями . Про которые конечно же заранее ничего не известно. Хотя при желании можно попробовать спрогнозировать, в каких аспектах система будет меняться, а в каких - нет. И заложить в архитектуру то, что конечно же однажды все равно поменяется ;)

Sign up to leave a comment.

Articles