jueves 4 de marzo de 2010

¿Como saber donde efecta el codigo que modificamos? usando Resharper

Actualmente en realidad siempre hemos tenido el problema de que modificamos un metodo, variable,constante, enum, etc, etc. y no sabemos donde puede afectar.

Bueno resharper nos facilita esto, tanto para clases como para interfeces(no interfaces de usuario).

Resharper tienes muchas cosas buenas, las cuales no las voy a detallar ahora.

Este software se acopla a Visual studio, y nos da mas opciones, para el efecto de este post hablare de:

  • Find Usage
  • Find Advance Usage
Find Usage
Como lo dice su nombre busca donde "x" se encuentra en toda la aplicacion. puede buscar variables , clases, enums. el uso es bastante simple nos posicionamos con el mouse sobre lo que queremos buscar y despues click derecho y por ultimo find Usage.
La mayor gracia es que busca incluso los que son utilizados mediente una Interface, que es casi imposible detectarlo a simple vista. y la ventana de resultado es bastante simple, y potente, nos permite agruparlos de varias formas[al ultimo hablare un poco mas de esto]. aqui algunas imagenes

Buscamos la clase "voyage" donde se usa:

y la ventana de resultado es la siguiente
Fijense que por refecto lo agrupa por namespace, si bien este ejemplo mustra muchos resultados, muchas veces para casos mas especificos, como un bag, un metoto, es muy util.

Find Advance Usage

Es basicamente lo mismo, pero con algunas opciones. pero con opciones de donde buscar y la forma de hacerlo. la pantalla habla casi por si sola.

Pantalla de resultado:

Esta tiene muchas gracias y caracteristicas, por cada busqueda genera una nueva pestaña, asi podemos tener un historial.
No solo la podemos organizar por namespace.hay 13 formas de agrupacion.
Refresco de resultados, de forma manual.



Conclusion:
Si bien actualmente la mayoria usamos reshaper[ojo no esta licenciado como deberia ser], estos simples tips podrian aumentar la informacion del codigo que estamos modificando, asi saber a quien preguntarle, y el ambito y alcance de este.
por ejemplo si muestra muchos resultados, como el ejemplo de "voyage", voy a tener que pensar muy bien antes de cambiarle el nombre por ejemplo. Asi que a usar resharper por favor :D.