Питання про значення за замовчуванням взагалі - значення функцій повернення за замовчуванням, значення параметрів за замовчуванням, логіка за замовчуванням, коли щось не вистачає, логіка за замовчуванням для обробки винятків, логіка за замовчуванням для обробки крайових умов тощо.
Тривалий час я вважав значення за замовчуванням "чистою злом", що є "маскує катастрофу" і призводить до того, що дуже важко знайти помилки. Але нещодавно я почав думати про значення за замовчуванням як про якусь технічну заборгованість ... це не зовсім погана річ, але те, що могло б забезпечити деяке "короткострокове фінансування", змусить нас пережити проект (скільки з нас може собі дозволити купити будинок, не виймаючи заставу?).
Коли я кажу "короткий термін" - я не маю на увазі - "зробіть щось швидше спочатку і зробіть його рефактор пізніше, перш ніж він потрапить у виробництво". Ні - я кажу про те, що покладатися на твердо кодовані значення за замовчуванням у виробничому програмному забезпеченні. Звичайно, це може спричинити деякі проблеми, але що робити, якщо це призведе лише до однієї проблеми протягом цілого року.
Знову ж таки - я говорю про тут "середнє" програмне забезпечення (не програмне забезпечення для атомної електростанції) - середній веб-сайт або додаток для користувальницького інтерфейсу для програмного забезпечення бухгалтерського обліку, що означає, що життя людей не загрожує, ні мільйони доларів .
Знову ж таки, з мого досвіду, бізнес-користувачі скоріше живуть із програмним забезпеченням, яке "працює якось", а не чекають ідеального. І використання значень за замовчуванням дуже допомагає, якщо ви розробляєте програмне забезпечення у стилі RAD. Але знову ж таки - найдовші сесії налагодження, які я провів, були через помилки, введені значенням за замовчуванням, яке або перестало бути "за замовчуванням" по дорозі, або через те, що невелика підсистема нещодавно була оновлена, і в результаті цього оновлення це не відбувається правильно обробляти за замовчуванням (наприклад, порожній список проти нуля або нульовий рядок проти порожнього рядка).
Тому моє запитання - чи є значення за замовчуванням добром чи злом. І якщо вони є технічним боргом - як виміряти, скільки ви можете позичити, щоб ви могли дозволити собі виплати?
Буду дуже вдячний за будь-який внесок.
Ура.
Редагувати:
Якщо я використовую значення за замовчуванням як спосіб вирізати кути під час розробки - і якщо вирізання кутів призводить до помилок і проблем - яка методологія відновлення цих проблем?