Оце сиджу, працюю і задумався: «А де ж проходить та тонка межа між фіксом, який робить твій додаток надійніше, та костилем, який нагадує стіл, на якому стоїть стілець, на якому табуретка, а на ній ти намагаєшся поганяти віником павуків у старій бабиній хаті та не зломити шию, загуркотівши із цієї конструкції.
Як на мене — то це різниця у розумінні та взаємодії.
Фікс — це коли чітко розумієш у чому проблема та ти її нейтралізуєш конвенційними методами, описаними у всіх відомих best practices. Наприклад, десь зʼявляється помилка, яку ти не обробляєш, або робиш force unwrapping для опціонального значення, якого може не існувати. Ну або ж помилка просто у логіці і ти це все хутенько виправляєш.
Зовсім інша справа — костилі. Ти не знаєш, чому воно так відбувається, точніше як найчастіший варіант — це деякі незістиковки або ж у системних бібліотеках, або у сторонніх, на які ти ніяк не можеш вплинути.
І тобі доводиться знаходити якесь рішення, яке дозволить цьому додатку працювати, і от ти вже як той доктор Франкенштейн кричиш: «Воно живе!». А воно — бо то все ж таки г*мно-код.
Цей текст взято з особистого блогу після отримання дозволу автора.
Цей матеріал – не редакційний, це – особиста думка його автора. Редакція може не поділяти цю думку.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: