Я знаю, що це дивно сказати, але колега-програміст навмисно використовував пару шкідливих практик програмування спеціально! Я поясню. Спершу дозвольте мені сказати, що він розумний хлопець і здебільшого пише розбірливий код.
Його попросили реалізувати ліцензування на проекті веб-додатків, написаному на Java. Оскільки це Java, якби справді цього хотіли, можна було б, мабуть, зламати банки і прочитати назви класів та методів, записаних всередині. Його рішення цієї проблеми полягало в тому, щоб буквально незграбно називати змінні та методи менш очевидні імена та встановлювати їх всередині вже перевантажених класів, а не генерувати нові класи.
Його виправданням було те, що якби хакер захотів вимкнути певні класи, щоб обійти чекові ліцензії (і, отже, отримати безкоштовну копію продукту), йому було б набагато складніше, якби не було очевидно, які методи виконувати ці конкретні завдання. Лише після того, як він зробив це, я зіткнувся з ним щодо цього, припустивши, що ми можемо придбати якусь бібліотеку обфускаторів, щоб зробити це для нас, зберігаючи при цьому добрі практики програмування. Він стверджує, що не мав часу та ресурсів на пошук такого рішення.
..Що залишає мене перед дилемою. Я шукаю бібліотеку обфускаторів на Яві і виправляю його старий код (який може бути делікатним щодо реконструкції його коду), або залишаю його таким, наскільки це мене дратує, щоб не було кінця?