{"id":76,"date":"2007-05-14T23:30:47","date_gmt":"2007-05-14T23:30:47","guid":{"rendered":"http:\/\/www.dereckson.be\/blog\/2007\/05\/14\/visual-studio-express-editions-vs-visual-studio-team-system-professionnal-ou-standard\/"},"modified":"2007-05-14T23:30:47","modified_gmt":"2007-05-14T23:30:47","slug":"visual-studio-express-editions-vs-visual-studio-team-system-professionnal-ou-standard","status":"publish","type":"post","link":"https:\/\/www.dereckson.be\/blog\/2007\/05\/14\/visual-studio-express-editions-vs-visual-studio-team-system-professionnal-ou-standard\/","title":{"rendered":"Visual Studio Express Editions vs. Visual Studio Team System, Professional ou Standard"},"content":{"rendered":"<p>Souvent, une question revient sur #Win : quel est l&#8217;int\u00e9r\u00eat des \u00e9ditions compl\u00e8tes de Visual Studio par rapport aux versions express ?<\/p>\n<p><img decoding=\"async\" src=\"\/Blog\/images\/VisualStudio\/Extensibility.png\" alt=\"\" \/><\/p>\n<p><!--more--><\/p>\n<p>Tout d&#8217;abord pr\u00e9cisons que les versions express n&#8217;ont rien d&#8217;incomplet. L&#8217;\u00e9diteur est identique. En tant que d\u00e9veloppeur d\u00e9butant, vous \u00e9crirez, compilerez, testerez votre code de la m\u00eame fa\u00e7on sur la version express que sur la version compl\u00e8te.<\/p>\n<p>L\u00e0 o\u00f9 la version compl\u00e8te commence \u00e0 devenir int\u00e9ressante, c&#8217;est dans l&#8217;hypoth\u00e8se o\u00f9 sur un m\u00eame projet, vous utilisez plusieurs langages. Ainsi, une application de blocage de processus que je r\u00e9alise pour un client est constitu\u00e9e de 3 projets : une interface graphique et une biblioth\u00e8que en C# ainsi qu&#8217;une DLL utilisant des fonctions natives (= non .Net) Windows en C<ins>. Si je travaillais avec la version Express, je devrais lancer Visual C<\/ins> Express Edition et Visual C# Express Edition ind\u00e9pendamment au lieu de pouvoir les utiliser dans une m\u00eame solution.<\/p>\n<p>Mais le gros d\u00e9savantage de Visual Studio Express est le bridage des add-ins et de l&#8217;extensibilit\u00e9. Vous pouvez en effet \u00e9tendre toutes les versions de Visual Studio \u00e0 l&#8217;exception des \u00e9ditions Express. Voyez sur ces deux captures d&#8217;\u00e9cran (\u00e0 gauche l&#8217;add-in manager, \u00e0 droite le splash screen de d\u00e9marrage) quelques exemples de produits (tous gratuit, VisualSVN et InstallShield except\u00e9s).<\/p>\n<p><strong>Petit tour d&#8217;horizon<\/strong><\/p>\n<ul>\n<li><a href=\"http:\/\/www.roland-weigelt.de\/ghostdoc\/\" hreflang=\"en\">Ghostdoc<\/a> permet de commenter tr\u00e8s facilement un code source, en devinant de par le nom de la fonction son comportement.<\/li>\n<\/ul>\n<blockquote><p><img decoding=\"async\" src=\"\/Blog\/images\/VisualStudio\/GhostDoc.png\" alt=\"\" \/><\/p><\/blockquote>\n<ul>\n<li>PInvoke permet d&#8217;effectuer une recherche sur la base de donn\u00e9es de pinvoke.net pour ajouter une d\u00e9claration d&#8217;une DLL native. Par exemple pour un bip syst\u00e8me fonction propos\u00e9e par kernel32.dll :<\/li>\n<\/ul>\n<pre>DllImport(\"kernel32.dll\", SetLastError=true) return: MarshalAs(UnmanagedType.Bool) static extern bool Beep(uint dwFreq, uint dwDuration);<\/pre>\n<ul>\n<li><a href=\"http:\/\/www.testdriven.net\/\" hreflang=\"en\">TestDriven.Net<\/a> permet d&#8217;effectuer d&#8217;un seul clic divers unit tests, en utilisant le framework de notre choix, le plus populaire \u00e9tant <a href=\"http:\/\/www.nunit.com\/\" hreflang=\"en\">NUnit<\/a>.<\/li>\n<\/ul>\n<ul>\n<li><img decoding=\"async\" src=\"\/Blog\/images\/VisualStudio\/VSCmdShell.png\" align=right alt=\"VSCmdShell\" \/>VSCmdShell permet de lancer une invite de commande directement dans Visual Studio.<br \/>&nbsp;<\/li>\n<li>WSCF permet de cr\u00e9er un webservice SOAP en pr\u00e9parant tout d&#8217;abord le contrat WSDL. Il g\u00e9n\u00e8re ensuite le code source.<br \/>&nbsp;<\/li>\n<li><a href=\"http:\/\/www.espace-win.org\/?Topic=EWOSP\" hreflang=\"fr\">EWOSP Auto Header<\/a> est un add-in que j&#8217;ai d\u00e9velopp\u00e9 permettant d&#8217;ajouter en haut de chaque fichier un bloc de copyright, date de cr\u00e9ation, date de modification, licence, &#8230;<br \/>&nbsp;<\/li>\n<li><img decoding=\"async\" src=\"\/Blog\/images\/VisualStudio\/VisualSVN.png\" align=right alt=\"VisualSVN\" \/><a href=\"http:\/\/www.visualsvn.com\/\" hreflang=\"en\">VisualSVN<\/a> permet d&#8217;int\u00e9grer SubVersion \u00e0 Visual Studio, assez pratique de pouvoir commit\/update directement depuis son IDE, tr\u00e8s pratique de voir les fichiers que nous avons mis \u00e0 jour.<br \/>&nbsp;<\/li>\n<li>Le reste ce sont divers SDK (celui de Sharepoint par exemple), fonctionnalit\u00e9s de Team Studio ou encore InstallShield dont l&#8217;IDE est totalement int\u00e9gr\u00e9 \u00e0 Visual Studio.<br \/>&nbsp;<\/li>\n<\/ul>\n<p><strong>Conclusions<\/strong><\/p>\n<p>Si les \u00e9ditions compl\u00e8tes sont tr\u00e8s lourdes (au moins un DVD) et longues \u00e0 installer, elles apportent un r\u00e9el confort en permettant d&#8217;avoir tous les outils dont nous avons besoin \u00e0 port\u00e9e de main, de d\u00e9velopper ce que l&#8217;on veut (des applications et add-ins Office par exemple, des webparts Sharepoint, un code en Cobol .Net, des applications pour SmartPhone et autres PDA&#8230;).<\/p>\n<p>D\u00e8s <span style='font-size: 50%'>(merci CrashZ)<\/span> le moment o\u00f9 vous d\u00e9velopper au quotidien ou cr\u00e9er un projet plus complexe qu&#8217;une simple application Windows, les versions Professional (ou Team System si vous bossez en \u00e9quipe) deviennent tr\u00e8s vite indispensables.<\/p>\n<p><strong>Voir aussi<\/strong><\/p>\n<ul>\n<li><a href=\"http:\/\/msdn2.microsoft.com\/en-us\/vstudio\/aa700921.aspx\" hreflang=\"en\">Product Feature Comparisons<\/a> (en)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Souvent, une question revient sur #Win : quel est l&#8217;int\u00e9r\u00eat des \u00e9ditions compl\u00e8tes de Visual Studio par rapport aux versions express ?<\/p>\n<p><img decoding=\"async\" src=\"\/Blog\/images\/VisualStudio\/Extensibility.png\" alt=\"\" \/><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[22],"class_list":["post-76","post","type-post","status-publish","format-standard","hentry","tag-visualstudio"],"_links":{"self":[{"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/posts\/76","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/comments?post=76"}],"version-history":[{"count":0,"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/posts\/76\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/media?parent=76"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/categories?post=76"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dereckson.be\/blog\/wp-json\/wp\/v2\/tags?post=76"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}