Complicar demasiado los nombres conduce al caos
TL;DR: Dar nombres es difícil, no lo hagas más difícil con complejidad accidental innecesaria.
Nombres poco claros, engañosos, vagos y ambiguos
Terminología redundante
Abstracciones confusas
Abreviaturas crípticas
Simplificar las convenciones de nomenclatura
Garantizar la coherencia
Evitar jerga innecesaria
Usar nombres descriptivos según el comportamiento
Mantener una terminología coherente
Ludwig Wittgenstein argumentó que gran parte de la confusión surge del mal uso del lenguaje.
Esto sucede cuando complicas demasiado los nombres, mezclas metáforas o utilizas terminología inconsistente.
Cuando nombras clases, métodos o variables sin claridad, creas un laberinto lingüístico que a otros les cuesta navegar.
Esto provoca errores, dificulta el mantenimiento y genera frustración en el equipo.
public class AbstractDataHandlerManager { private String dtStr; public void execProcessingOps(String input) { if (dtStr != null && !dtStr.isEmpty()) { // process } } }
public class SETIProcessor { public void processSignal(String input) { // process } } }
[X]Manual
Puedes detectar este olor cuando los nombres empiezan a ser largos o cuando ves "Resumen", "Administrador", "Manejador", "Ayudante" o "Datos" con demasiada frecuencia.
Otra señal es cuando debes explicar qué significa un nombre a otros desarrolladores, por ejemplo, en una revisión de código.
[X] Principiante
Los generadores de IA a menudo crean este olor al producir nombres detallados y genéricos que intentan cubrir todos los contextos posibles.
Son expertos en muchos dominios y escriben código, pero frecuentemente no hacen ambas cosas a la vez a menos que se les indique.
Los generadores de IA a veces pueden solucionar este olor con instrucciones simples de refactorización como "simplificar nombres" o "eliminar términos redundantes", pero tienen dificultades para lograr una comprensión contextual más profunda.
La confusión lingüística en el código genera una complejidad innecesaria.
Utilice nombres claros, consistentes y directos para que su código sea más fácil de leer y mantener.
El concepto de confusión lingüística de Wittgenstein
Code Smells es mi opinión.
Foto de Mimi Thian en Unsplash
El mayor enemigo del lenguaje claro es la falta de sinceridad.
George Orwell
Este artículo es parte de la serie CodeSmell.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3