miércoles, 7 de mayo de 2014

Introducción a la Referencia Online de Código Fuente de Microsoft .NET Framework

Tabla de Contenido

0. Introducción
1. ¿Qué es la Referencia Online de Código Fuente?
2. Localización
3. Descripción de Paneles
3.1 Panel de resultados
3.2 Panel principal
3.3 Panel de Croquis de Documento (Document Outline)
3.4 Panel de Explorador de Proyecto
3.5 Panel de Nombre de Espacios
4. Búsquedas
4.1 Búsqueda parcial
4.2 Búsqueda por nombre completo de tipo o nombre completamente calificado
4.3 Búsquedas absolutas
4.4 Prefijos de búsqueda
4.5 Archivos
5. Generación de Hipervínculos
5.1 Hipervínculos para assemblies
5.2 Archivos de código fuente
5.3 Línea de código
5.4 Tipos o miembros
6. Recursos
6.1 Vídeo de demostración
6.2 Descarga de código fuente en archivo .zip
6.3 Configuración para depuracion en Visual Studio
7. Conclusiones
8. Glosario
9. Enlaces & Literatura

0. Introducción

En este artículo les voy a presentar un recurso invaluable para la exploración online de código fuente del Framework .NET. Presentare cómo realizar búsquedas, iconografía de las características del buscador y del visualizador. Los accesos de búsqueda rápida, URL para acceder a los assemblies, clases, enumeraciones, entre otros artefactos del Framework .NET. En los ejemplos y herramientas de búsqueda emanará la utilidad de esta grandiosa que Microsoft dispone para programadores.

1. ¿Qué es la Referencia Online de Código Fuente?

La Referencia Online de Código Fuente del Microsoft .NET Framework es el catálogo de consulta de código fuente de todos los proyectos que integran el Framework .NET. Con este recurso, un programador puede consultar cualquier de los archivos, assemblies, línea de código para conocer el detrás de cámaras y toda la maquinaria que hace que el Framework funcione.

2. Localización

Basta con activar nuestro navegador Web favorito e ir al siguiente enlace:

Reference Source [1]

En la Figura 1 se muestra la vista previa de la pantalla principal del sitio oficial de la referencia online:
Panalla principal de la Referencia de Microsoft .NET Framework Online
Figura 1. Pantalla principal de la Referencia Online de Microsoft .NET Framework Online [1].

3. Descripción de Paneles

En este apartado voy a describir los principales panales o vistas.

3.1 Panel de resultados

Cuando realicemos una búsqueda desde el campo de búsqueda (esquina superior izquierda), obtendremos los en el panel contextual de la izquierda. Primero, esta es la vista por defecto del panel:
Panel contextual
Figura 2. Vista por defecto del panel contextual.
La vista del panel se adapta de acuerdo al contexto (más adelante veremos otras presentaciones del panel). Vamos a buscar por la clase String:
Panel de resultados
Figura 3. Panel de resultados.
En la Figura 3 los resultados se organización por proyecto, nombres de espacio (namespaces), y los archivos donde aparecen coincidencia de la palabra de búsqueda (en este caso 'String').

Cuando seleccionamos uno de los resultados de búsqueda, el contenido de éste se presenta en el panel principal.

3.1.2 Panel principal

En la Figura 4 se muestra el panel principal con el código de la clase String:
Panel principal
Figura 4. Panel principal
Desde este panel podemos visualizar el código fuente. El código fuente cuenta con impresora estética (syntax highlighting), navegación por artefactos (identificadores de variables, constantes, de funciones, clases, entre otros más). En este último, cuando hacemos clic, por ejemplo, sobre uno de los identificadores, el panel contextual se adapta para mostrar las líneas en donde aparecen coincidencias (referencias) de ese identificador. En la Figura 5 se muestra esta operación:
Panel de resultado de referencias
Figura 5. Panel de resultado de referencias
Además desde el panel principal podemos acceder directamente a los demás paneles: Croquis del Documento (Document Online), Explorador de Proyecto (Proyect Explorer), y Explorador de Nombres de Espacio (Namespace Explorer). En la Figura 5 se resaltan los botones de acceso rápido a estos paneles.
Accesos rápido a paneles
Figura 6. Accesos rápido a paneles.

Por otra parte, desde la parte inferior de este panel, podemos acceder de forma directa al archivo contenedor de la clase, como también al assembly al que pertenece el archivo de código fuente. En la Figura 7 se muestra una captura de pantalla para la clase String:
Accesos rápidos a archivo y assembly de String.
Figura 7. Accesos rápidos a archivo y assembly de String.

3.1.3 Panel de croquis de documento (Document Outline)

En el panel de croquis de documento (Document Outline) podemos visualizar todos los miembros de un artefacto del Framework .NET: Archivo, clase, enumeración, interfaz, &c. En la Figura 8 se muestra (vista parcial debido a la cantidad de miembros) el croquis de documento para la clase String:
Panel de croquis de documento (Document Outline)
Figura 8. Panel de croquis de documento (Document Outline).

3.1.4 Panel de Explorador de Proyecto

Desde este panel podemos acceder a todos los artefactos físicos del proyecto (e.g., archivos de código fuente), carpetas, &c. En la Figura 9 se muestra el proyecto mscorlib en donde se haya el archivo de código fuente para la clase String:
Panel de Explorador de Proyecto (Project Explorer)
Figura 9. Panel de Explorador de Proyecto (Project Explorer).

3.1.5 Panel de Nombre de espacios (Namespace Explorer)

En el panel de Nombre de Espacios se enumeran los nombres de espacios del proyecto. En la Figura 10 se muestran los nombres de espacio del proyecto mscorlib.
Panel de Explorador de Nombres de Espacio (Namespace Explorer)
Figura 10. Panel de Explorador de Nombres de Espacio (Namespace Explorer).

4. Búsquedas

Vamos explorar los métodos de búsqueda.

4.1 Búsqueda parcial

Podemos especificar palabras claves parciales para realizar búsquedas, por ejemplo:

4.2 Búsqueda por nombre completo de tipo o nombre completamente calificado

Podemos especificar como palabras claves de búsqueda el nombre completo del tipo o el nombre completamente calificado. Por ejemplo:
Las búsquedas absolutas funcionan especificando las palabras de búsqueda entre comillas dobles. Por ejemplo:

4.4 Prefijos de búsqueda

Conjunto de prefijos para filtrar una búsqueda.

4.5 Archivos

También podemos buscar archivos directamente.

5. Generación de Hipervínculos

Aquí vamos a explorar la forma en podemos generar hipervínculos (URL) para los artefactos de los proyectos.

5.1 Hipervínculos para assemblies

5.2 Archivos de código fuente

Para crear un hipervínculo para un archivo de código fuente, copiamos el texto aparece frente File (ver Figura 7), luego a la cadena http://referencesource.microsoft.com/# le agregamos texto recién copiado. Ejemplo con el archivo bitconverter.cs:
  • http://referencesource.microsoft.com/#system\bitconverter.cs

5.3 Línea de código

Para crear un hipervínculo para una línea de código específica, nos ubicamos en un archivo de código fuente, y en la columna de enumeración de líneas de código, hacemos clic derecho y luego clic sobre el comando 'Copiar ruta de enlace' (puede variar de acuerdo al navegador que estemos usando.

5.4 Tipos o Miembros

Desde un archivo de código fuente podemos crear enlaces a miembros integrales de una clase.

Por ejemplo para la clase Object, nos ubicamos en la línea 65, luego damos clic derecho sobre Equals y clic sobre el comando 'Copiar ruta de enlace'. Este es el enlace que nos genera:

6.1 Vídeo de demostración

Desde Channel 9 [3] este vídeo de demostración de uso de Reference Source:

6.2 Descarga de código fuente en archivo .zip

Podemos descargar un archivo .zip con todos los proyectos integrales del Framework .NET:

Enlace: [4]

6.3 Configuración para depuración en Visual Studio

Desde [5] podemos conocer cómo configurar Visual Studio para depuración de tipos del Framework .NET.

7. Conclusiones

En este artículo he presentado las características y funcionalidadades de la Reference Source para el Framework .NET. Recurso útil para conocer el código fuente, la organización, y distribución de todos los artefactos integrales del Framework .NET. Podemos utilizarlo para conocer el funcionamiento de clases, interfaces, enumeraciones, entre muchos más. Nos puede resultar vital para la depuración de aplicación. Otro uso importante que puedo considerar es para la creación de documentación o artículos de código fuente C#.

8. Glosario

  • .NET
  • Assembly
  • Buscador artefactos .NET
  • Código fuente
  • Hipervínculos
  • Miembros
  • Tipos

9. Enlaces & Literatura

[1]: Reference Source - http://referencesource.microsoft.com/
[2]: A new look for .NET Reference Source - .NET Blog - Site Home - MSDN Blogs
http://blogs.msdn.com/b/dotnet/archive/2014/02/24/a-new-look-for-net-reference-source.aspx
[3]: How to browse the .NET Reference Source | .NET Framework | Channel 9
http://channel9.msdn.com/Series/NET-Framework/How-to-browse-the-NET-Reference-Source
[4]: How to configure Visual Studio for debugging .NET frameworks - http://referencesource.microsoft.com/setup.html


J

No hay comentarios:

Publicar un comentario

Envíe sus comentarios, dudas, sugerencias, críticas. Gracias.