Целочисленные типы данных фиксированной длины
-
07-07-2019 - |
Вопрос
Я прочитал правило Zero One Infinity в разработке программного обеспечения.
Почему это называется? исходя из фактического поведения программного обеспечения и его инженеров, разве это не лучше назвать правилом «один ноль два миллиарда сто сорок семь миллионов четыреста восемьдесят три тысячи шестьсот сорок восемь» или, может быть, нулевое значение четыре миллиарда два Правило сто девяносто четыре миллиона девятьсот шестьдесят семь тысяч двести девяносто шесть?
Решение
Смысл правила о том, что не должно быть «магического числа» для верхнего предела. Однако практически трудно достичь этого, потому что есть некоторые ограничения реализации, такие как ширина целого числа и подобные вещи. Дело в том, что когда вы переходите от N-битного целого к N + K-битному целому, проект программного обеспечения должен обрабатывать его естественным образом - вам не следует перепроектировать все только из-за таких изменений. Пределы представления целых чисел не должны быть «магическими числами»; здесь.
Другие советы
Потому что это просто руководство, которое предполагает искусственное ограничение количества экземпляров сущности, глупо. Можно легко обосновать, что существует ноль определенной вещи (т.е. желтые слоны). Можно также оправдать наличие только одной вещи (то есть одной жены или мужа). Однако после превышения этого предела становится все труднее сказать: «Хорошо, мы допустим только 5 Foos». - ограничения часто (но не всегда) относительно произвольны - кто-то всегда хочет 6 или 15 и т. д.
Поскольку это простое эмпирическое правило, разработанное для людей, верхний предел бесконечности интерпретируется как "столько, сколько вам нравится". Исправление этого в данном числе разрушает пункт правила.