Che cos'è tell-dont-ask?
Revisione del codice e assistenza alla progettazione basata sul principio "Tell, Don't Ask". Converte modelli che interrogano lo stato di un oggetto e prendono decisioni esternamente in modelli che comandano direttamente l'oggetto. Incoraggia progetti che rafforzano l'incapsulamento e consolidano la responsabilità negli oggetti che contengono i dati. Da utilizzare durante le revisioni del codice, le nuove implementazioni o il refactoring quando è necessario correggere l'abuso del getter o Feature Envy. Linguaggi supportati: Java, Kotlin, Scala, TypeScript, Python, Ruby, Go, Rust. Trigger: richieste di progettazione OOP come "ridurre i getter", "migliorare l'incapsulamento", "correggere Feature Envy", "dare responsabilità agli oggetti" o "Legge di Demetra". Fonte: j5ik2o/okite-ai.