GhostDoc

Si vous souhaitez générer une documentation cohérente assez rapidement au sein de vos classes C# vous pouvez utiliser l’outil GhostDoc, la cohérence des cartouches de documentation est assurée par un fichier ".gdc".
Note : Ne pas confondre avec la génération de documentation projet, cette dernière est assurée par des composants tels SandCastle, DoxyGen etc. (Lien : http://aghilasyakoub.wordpress.com/2013/03/13/doxygen-gui-frontend/)

Elle est basée sur une bonne génération de documentation de code de dernière génération en utilisant des notions telles summary,remark, author, param etc.

Le fichier ".gdc" peut être exporté sur votre machine locale d’administration et le partager au sein du gestionnaire de code source.
Les autres postes de développeur doivent importer ce fichier et configurer GhostDoc localement.

GhostDoc est téléchargeable sur le lien suivant : http://submain.com/products/ghostdoc.aspx

Ci-dessous des écrans décrivant les étapes de configuration :

1. Accéder à la console de configuration sous la section Option.

GDOption

2. Sélectionner la section Rules pour définir vos règles

GDRules

3. Créer une règle sur une classe

GDCreateRule

4. Une fois les règles définies vous pouvez exporter votre fichier de règle gdc.

GDExport

5. Si vous souhaitez importer un fichier de règles sélectionner le lien importer.

Poster un commentaire

Classé dans C#, GhostDoc

Windows Workflow Foundation 4.5 News (WindowsIdentity, hébergement, génération, NoPersistScope, Designer, …)

Sur la plateforme Windows Workflow Foundation 4.5 un ensemble de nouveautés font leur apparition sur différents thèmes tels la conception d’un flux, développements associés, utilisation du concepteur visuel etc. Ce billet a pour objectif de citer les évolutions les plus importantes à mon sens.

L’apparition d’une nouvelle classe WorkflowIdentity, elle permet d’héberger plusieurs versions d’un flux de travail côte à côte, ensuite le chargement d’une instance persistante se fait via la classe WorkflowApplicationInstance puis DefinitionIdentity peut être utilisé par l’hôte pour fournir la version appropriée de la définition de flux en instanciant WorkflowApplication.
Ci-dessous un fragment de code permettant de mettre en œuvre la classe WorkflowIdentity, elle est créée et associée à une instance.

WorkflowIdentity identityFirstVersion = new WorkflowIdentity
{
    Name = "YourWorkflowFirstVersion",
    Version = new Version(1, 0, 0, 0)
};
WorkflowApplication wfApp = new WorkflowApplication(new YourWorkflow (), identity);
// Configurer les services de persistence.
ConfigureWorkflowApplication(wfApp);
// Exécuter le flux.
wfApp.Run();

Ci-dessous un fragment de code permettant de mettre en œuvre le chargement du flux.

WorkflowApplication wfApp = new WorkflowApplication(new YourWorkflow (),identityFirstVersion);
ConfigureWorkflowApplication(wfApp);
// Charger le flux.
wfApp.Load(instanceId);

WorkflowServiceHost prend en compte le multi-versioning. Lorsqu’une nouvelle version d’un service de flux est déployée, les nouvelles instances sont créées à l’aide du nouveau service, mais les instances existantes s’exécutent à l’aide de la version antérieure.

WorkflowServiceHost contient deux propriétés pour configurer plusieurs versions d’un flux de travail de s’exécuter côte à côte : SupportedVersions qui contient les versions prises en charge du service de workflow et DefinitionIdentity qui permet d’identifier chaque service de workflow.

//Configurer WorkflowServiceHost une version actuelle.
WorkflowServiceHost host = new WorkflowServiceHost(serviceActualVersion, 
    new Uri("http://localhost:8080/YourWorkflow"));
//Créer une version précédente du flux.
WorkflowService serviceOldVersion = new WorkflowService
{
    Name = "YourWorkflow",
    Body = new YourWorkflow(),
    DefinitionIdentity = new WorkflowIdentity
    {
        Name = " YourWorkflow",
        Version = new Version(1, 0, 0, 0)
    }
};
//Ajouter une version précédente du service à SupportedVersions.
host.SupportedVersions.Add(serviceOldVersion);

Vous pouvez valider la structure du flux de travail au moment de la génération, sur la version précédente de la plateforme .NET Framework 4, les erreurs de validation du flux n’étaient pas été comptées comme des erreurs de compilation pendant la génération du projet.
Dans le .NET Framework 4.5 RC, les erreurs de validation provoquent l’échec de la génération.

Un ensemble de nouveautés dédiées au flux de travail de type machine à état telles :
La possibilité de définir des points d’arrêt sur des états, la possibilité de copier et coller des transitions dans le concepteur visuel du flux, la prise en charge du concepteur pour la création de transition de déclencheur partagé et

De nouvelles activités telles NoPersistScope permettant de désactiver la persistance d’un flux de travail lorsque des activités enfants de NoPersistScope sont en cours d’exécution, cela s’avère utile dans les scénarios ou on fait appel à des transactions en base de données.
Améliorations du concepteur visuel de flux de travail, dorénavant on peut supprimer l’élément de menu contextuel dans le concepteur de variable et d’argument

On dispose d’un encadrement automatique avec séquence, certaines activités comme NoPersistScope peut uniquement contenir une seule activité de corps, l’ajout d’une deuxième activité sur la version 4.0 exige que le développeur supprime la première activité, ajoute une activité Sequence, puis ajoute les deux activités à l’activité de séquence.
À partir du .NET Framework 4.5 RC, lors de l’ajout d’une deuxième activité sur l’aire du concepteur, un activité Sequence est créée automatiquement pour encapsuler les deux activités.

Pour faciliter le développement de plus grands workflows, le concepteur prend désormais en charge l’ajout d’annotations pour faciliter le suivi du processus de création. Une annotation peut être ajoutée aux activités, états, nœuds d’organigramme, variables et arguments. La capture d’écran suivante montre le menu contextuel utilisé pour ajouter des annotations au concepteur.

Pour parcourir un flux de travail au sein du concepteur, le mode panoramique peut être activé plutôt que d’utiliser les barres de défilement.

2 Commentaires

Classé dans WWF (Windows Workflow Foundation)

Doxygen GUI frontend

Une fois les développements terminés il est important de générer la documentation associée, vous disposez d’un ensemble d’outils dédiés tels : Sandcastle, Ndoc, GhostDoc, etc. Doxygen génére un navigateur de documentation en ligne (en HTML) et / ou un manuel de référence hors-ligne à partir d’un ensemble de fichiers sources documentées. Il y’a aussi un support pour générer une sortie au format RTF (MS-Word), PostScript, PDF, HTML compressé, et les pages de manuel Unix. La documentation est extraite directement des sources, ce qui rend beaucoup plus facile de tenir la documentation conforme au code source.

Vous pouvez configurer doxygen pour extraire la structure du code à partir de fichiers source sans-papiers. Ceci est très utile pour trouver rapidement votre chemin dans les grandes distributions de source. Doxygen peut aussi visualiser les relations entre les différents éléments à l’aide de l’inclusion de graphiques, des diagrammes de dépendance héritage et diagrammes de collaboration, qui sont tous générés automatiquement. Vous pouvez également utiliser doxygen pour la création de la documentation normale.

Vous pouvez le télépcharger sous le lien suivant : http://www.stack.nl/~dimitri/doxygen/download.html
Ci-dessous les écrans permettant de mettre en place un processus de génération.
Renseigner le répertoire de travail, le nom de projet, le chemin du code source à analyser et le chemin de sortie.
 DoxygenConfigure
Sélectionner le format de sortie, dans le cas de figure ou on sélectionne la section Html, aprés génération on obtient un site html décrivant l’application avec un aspect de navigation. 
DoxygenOutput
La section Run permet d’exécuter le processus de génération.
DoxygenRun
Ci-dessous un exemple de génération, on retrouve un menu de navigation ou on a la possibilité de visualiser les paquets (Packages) les classes, les méthodes ou des fichiers, vous disposez d’une section de recherche.
Output

Poster un commentaire

Classé dans Technical Document, Uncategorized

MCSD sur Windows Store Apps

Si vous souhaitez devenir MCSD (Microsoft Certified Solution Developer) sur les applications Windows Store, vous avez deux chemins à emprunter pour y parvenir, soit favoriser un chemin axé sur les développpements d’interfaces graphiques avec HTML5 et CSS3 ou un chemin axé sur les développements en langage objet avec C#.

Ci-dessous un graphe décrivant le processus de certification :

MCSD

Ci-joint un lien décrivant le détail des programmes :  http://www.microsoft.com/learning/en/us/mcsd-windows-store-apps-certification.aspx

Poster un commentaire

Classé dans MCSD, Windows Store App

Request Review

Suite à la correction d’un bug sur l’une de vos classes, vous souhaitez solliciter les membres de votre équipe pour effectuer une revue de code, Dans Team Explorer sous la section mes taches « My Work » sélectionner le lien solliciter une revue de code « Request Review ».

Request Review Intro

Une page intitulée nouvelle revue de code « New Code Review » apparait, vous pouvez saisir les membres sollicités pour la revue de code, spécifier un nom pour la revue, spécifier un périmètre fonctionnel ou ajouter un commentaire. Les sollicités seront alertés par un mail.
Request Review Insert Data

Remarque : Il est aussi possible de solliciter une revue de code pour un travail suspendu, une série de changement « ChangeSet » ou une étagère « ShelveSet ».
Pour accepter ou décliner une revue de code accéder à la section requête et revue de code « My Code Reviews & Requests », sélectionner le lien accepter ou refuser pour informer l’auteur si vous souhaitez effectuer la revue de code.
Request Review Code Accept

Vous pouvez aussi faire contribuer de nouveaux lecteurs de code dans le but d’ enrichir votre revue en sélectionnant le lien ajouter des lecteurs « Add Reviewer  », visualiser les discussions relatives à la revue de code en sélectionnant la section  commentaire « Comments »,   ajouter votre propre commentaire à la discussion en sélectionnant le lien envoyer un commentaire « Send Comments ».
Sélectionner le lien envoyer et finir « Send and Finish » pour clôturer la revue de code.

Poster un commentaire

Classé dans Request Review Code

Suspendre une tache « Suspend Work »

Si vous souhaitez suspendre une tache pour réaliser une tache plus prioritaire comme par exemple corriger un bug avant d’effectuer une revue de code, « Team Explorer » propose la fonctionnalité suspendre une tache « Suspend Work » qui sauvegarde l’état d’avancement de la tâche contenant les modifications du code source, les tests associés, les variables suivies pendant la session de débogage, les points d’arrêt et l’environnement de développement avec les différentes fenêtres ouvertes.
Sélectionner la rubrique mes taches « My Work », dans la section taches en cours « In Progress Work » sélectionner le lien suspendre « Suspend »
Suspended Work First
Pour restaurer son espace de travail avec les fenêtres ouvertes, les points d’arrêt et les variables suivies dans la fenêtre de surveillance, sélectionner le lien reprendre « Resume » sur un élément de travail disponible sous la section « Suspended Work ».
 
Suspended Work Resume

Poster un commentaire

Classé dans C#, Suspend Work, Visual Studio

Annotate sous Visual Studio 2012

La fonctionnalité annoter « Annotate » s’applique à un fichier pour savoir quels sont les utilisateurs qui ont apporté des modifications au fichier de code source. Pour exécuter cette fonctionnalité il est nécessaire d’avoir les droits de lecture. La fenêtre annoter permet de visualiser : le chemin et l’identifiant de l’ensemble des modifications « Changeset », l’utilisateur qui a effectué la série de changement, le type de changement, les numéros de lignes sur lesquelles ont été effectuées les modifications ou les commentaires associés aux changements.
Annotate Code
Ci-dessous un exemple d’écran d’annotation.
Annotate Sample
Si vous cliquez sur le numéro de la ligne, vous accédez au détail de l’ensemble des modifications.
Annotate Team Explorer

Poster un commentaire

Classé dans C#, Visual Studio