primeramente
Hágase la pregunta "¿cuál es el único propósito de esta clase?". Sin adherirse al Principio de Responsabilidad Única, nombrar clases y métodos se vuelve muy difícil. Si no puede responder esa pregunta, es posible que deba repensar lo que desea que haga la clase y considerar separar las preocupaciones. Esto hará que sea más fácil nombrar
En segundo lugar
¿Tienes un patrón para nombrar tus clases? Quizás intente mirar algunos patrones de nombres comunes, por ejemplo, el patrón, que se vuelve mucho más fácil de seguir una vez que haya abordado SRP anteriormente. ¿Su clase analiza XML? Prueba XMLParser. ¿Analiza XML, crea modelos de dominio para representar la entrada, los persiste en la base de datos y luego publica un mensaje de éxito en Twitter? Intenta refactorizar.
En tercer lugar
Entiendo de dónde vienes, y he estado en una situación similar antes. Quizás intente desarrollar su clase con alguna funcionalidad, con un nombre temporal para comenzar. Con cualquier buen IDE o asistente de refactorización, cambiar el nombre de la clase debería ser una acción de un solo clic, ¡así que lo que denomines tu clase inicialmente no necesita ser permanente! Esto lo ayudará a superar su bloqueo de TOC y le dará tiempo a su subconsciente para procesarlo un poco más.
Finalmente y ligeramente fuera de tema
Tuve un momento de bombilla en un trabajo que estaba haciendo el otro día, implementando un sistema no crítico, y pasé un tiempo justo jugando con diferentes nombres de clases, etc. clases de acuerdo con su implementación específica ... Por ejemplo, puede tener la tentación de tener IXMLParser y XMLParser, pero ¿qué sucede cuando su entrada cambia a JSON? Pruebe IInputParser en su lugar, de esa manera puede crear clases concretas XMLParser y JSONParser que implementan IInputParser de diferentes maneras.