Pregunta

Donde trabajo, a menudo veo que un código como:

public void Test(Models.User.UserInfo userInfo, Models.User.UserParameter param)
   { ... }

En lo personal, yo prefiero ver algo así:

public void Test(UserInfo userInfo, UserParameter param) { ... }

Y tiene una importación en la parte superior.

¿Qué opinas sobre esto? Cuáles son las mejores prácticas? Lo que los pros y los contras de ambos? ¿Cómo pude convencer a mis compañeros de equipo?

Encuentro segunda opción sea más clara.

¿Fue útil?

Solución

Definitivamente usar la directiva using, la OMI. Normalmente se trata de código sólo que ha sido generada automáticamente por Visual Studio. No he visto a nadie deliberadamente escribir código como este manual. OMI que vale la pena asegurarse de que todo el código que los humanos van a leer miradas como los humanos escribieron - por lo que me gustaría añadir la directiva using y reducir los nombres aquí. Esto hace que sea mucho más fácil de leer -. Particularmente cuando los espacios de nombres son largos

Otros consejos

Me tienden a utilizar el nombre completo si el tipo sólo se utiliza una vez o tal vez dos veces en un archivo de código. Para todo lo demás que el uso using

Pero esto también depende de la longitud del nombre completo. Es todo acerca de la escritura hermosa, fácil de leer código.

En todos pero algunas circunstancias, diría, import o using los espacios de nombres es la mejor práctica. Esto tiene la ventaja añadida de la degradación temprana:. El compilador se quejará si no puede encontrar el espacio de nombres

Entre los pocos casos en que se necesita el nombre completo (para ser más correctos: no es completamente cualificado, no se especifica la versión o la tecla) está en que pueda ocurrir colisiones de nombres (es decir, : cuando dos espacios de nombres sucede que tiene el mismo nombre, veo esto sucede a menudo con las clases Util que muchos vendedores se suman a sus libs) (nota que se puede usar nombres de las clases de alias using). O cuando se necesita para calificar el nombre como una cadena, pero eso es otro caso de uso (es decir, con la reflexión). De vez en cuando, durante la depuración, ayuda a utilizar el FQN, porque el depurador no permite agregar una directiva using.

En el caso de utilizar el nombre de una sola vez, puede tener la tentación de utilizar el FQN, pero en mi experiencia, que va a encontrar rápidamente por sí mismo utilizando más de un nombre del espacio de nombres y refactor a importar el espacio de nombres en el cabecera.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top