So che sembra strano dirlo, ma un collega programmatore al lavoro ha deliberatamente utilizzato un paio di cattive pratiche di programmazione apposta! Spiegherò. Prima lasciatemi dire che è un ragazzo intelligente e per la maggior parte scrive codice intelligibile.
Gli è stato chiesto di implementare la licenza su un progetto di applicazione web scritto in Java. Dal momento che è Java, se lo si volesse davvero, si potrebbe probabilmente hackerare i barattoli e leggere i nomi delle classi e dei metodi scritti all'interno. La sua soluzione a questo problema consisteva nel chiamare alla lettera goffamente variabili e metodi nomi meno che ovvi e collocarli in classi già congestionate piuttosto che generare nuove classi.
La sua giustificazione era che se un hacker voleva cambiare alcune classi per aggirare i controlli di licenza (e quindi ottenere una copia gratuita del prodotto), avrebbe avuto un tempo molto più difficile se non fosse stato ovvio quali metodi eseguono questi particolari compiti. Solo dopo averlo fatto, l'ho affrontato al riguardo, suggerendo che potremmo forse acquistare una sorta di biblioteca di offuscatori per farlo per noi, pur mantenendo buone pratiche di programmazione. Sostiene di non aver avuto il tempo o le risorse per cercare quel tipo di soluzione.
.. Che mi lascia a un dilemma. Cerco una libreria di obfuscator in Java e correggo il suo vecchio codice (che potrebbe essere un po 'approssimativo nel rimodellare il suo codice), o lo lascio così com'è, per quanto questo mi faccia impazzire?