{"id":237,"date":"2009-02-18T23:04:26","date_gmt":"2009-02-18T22:04:26","guid":{"rendered":"http:\/\/www.gamlor.info\/wordpress\/?p=237"},"modified":"2021-03-11T09:44:26","modified_gmt":"2021-03-11T08:44:26","slug":"fxcop","status":"publish","type":"post","link":"https:\/\/www.gamlor.info\/wordpress\/2009\/02\/fxcop\/","title":{"rendered":"FxCop"},"content":{"rendered":"<p>I\u2019m a fan of static analysis because whem I\u2019m writing code in a statically typed language I want to get the most of it. So I\u2019m a huge fan of <a href=\"http:\/\/www.jetbrains.com\/idea\/documentation\/inspections.jsp\">IntelliJ IDEA\u2019s code analysis and quick-fixes<\/a>. Also <a href=\"http:\/\/findbugs.sourceforge.net\/\">FindBugs<\/a> is useful and also open source. Of course there are even more sophisticated analyses, but it catches tons of common errors.<br \/>\nSo in the .NET-Word I\u2019m using the inspections of <a href=\"http:\/\/www.jetbrains.com\/resharper\/\">Resharper<\/a> and <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/bb429476(VS.80).aspx\">FxCop<\/a>. FxCop is completely free and a must-have tool. FxCop tells you where you violated naming and coding-conventions, if you have inconsistencies in your API, if you\u2019re making dangerous calls and reports even spelling errors. It is really aggressive, nitpicking and strict. However most of the reported stuff is worth to fix.<br \/>\nAn extremely cool feature is that FxCop tells you fixing the problem will break dependent code or not. So if you have a public API which is already use everywhere, you just can fix the non-breaking changes. Of course on a fresh project or a new part of existing one you should fix everything before its to late.<br \/>\nAlso a handy feature is of FxCop is that it tells you a link to the right MSDN-article for reported problems. On this MSDN-Page there is normally a more detailed description and an example how its done right.<\/p>\n<p><a href=\"https:\/\/www.gamlor.info\/wordpress\/wp-content\/uploads\/fxcop.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-238\" title=\"fxcop\" src=\"https:\/\/www.gamlor.info\/wordpress\/wp-content\/uploads\/fxcop-300x232.png\" alt=\"fxcop\" width=\"300\" height=\"232\" srcset=\"https:\/\/www.gamlor.info\/wordpress\/wp-content\/uploads\/fxcop-300x232.png 300w, https:\/\/www.gamlor.info\/wordpress\/wp-content\/uploads\/fxcop.png 875w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I\u2019m a fan of static analysis because whem I\u2019m writing code in a statically typed language I want to get the most of it. So I\u2019m a huge fan of&hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"categories":[126,17],"tags":[21,24,22,23,20],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/posts\/237"}],"collection":[{"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/comments?post=237"}],"version-history":[{"count":3,"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/posts\/237\/revisions"}],"predecessor-version":[{"id":519,"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/posts\/237\/revisions\/519"}],"wp:attachment":[{"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/media?parent=237"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/categories?post=237"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gamlor.info\/wordpress\/wp-json\/wp\/v2\/tags?post=237"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}