{"id":166,"date":"2015-04-26T14:00:20","date_gmt":"2015-04-26T12:00:20","guid":{"rendered":"http:\/\/ccd.ralfw.domainfactory-kunde.de\/?page_id=166"},"modified":"2024-10-17T18:35:35","modified_gmt":"2024-10-17T16:35:35","slug":"tools","status":"publish","type":"page","link":"https:\/\/clean-code-developer.de\/en\/weitere-infos\/werkzeuge\/","title":{"rendered":"Tools"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"166\" class=\"elementor elementor-166\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-58e403c8 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"58e403c8\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-46aafae0\" data-id=\"46aafae0\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-53ae8a3e elementor-widget elementor-widget-text-editor\" data-id=\"53ae8a3e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Architecture \/ Design<\/h2><h3>Inversion of Control \/ Dependency Injection<\/h3><ul><li>.Net<ul><li>autofac, <a title=\"http:\/\/code.google.com\/p\/autofac\/\" href=\"https:\/\/github.com\/autofac\/Autofac\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.google.com\/p\/autofac\/<\/a><\/li><li>Microsoft Unity, <a title=\"http:\/\/msdn.microsoft.com\/en-us\/library\/cc468366.aspx\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/cc468366.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/msdn.microsoft.com\/en-us\/library\/cc468366.aspx<\/a><\/li><li>NinJect, <a title=\"http:\/\/ninject.org\/\" href=\"http:\/\/ninject.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/ninject.org\/<\/a><\/li><li>Spring.NET, <a title=\"http:\/\/www.springframework.net\/\" href=\"http:\/\/www.springframework.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.springframework.net\/<\/a><\/li><li>StructureMap, <a title=\"http:\/\/structuremap.sourceforge.net\/Default.htm\" href=\"http:\/\/structuremap.github.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/structuremap.sourceforge.net\/Default.htm<\/a><\/li><\/ul><\/li><\/ul><p>Attempt to standardize access to DI containers:<\/p><ul><li>Microsoft Common Service Locator, <a title=\"http:\/\/www.codeplex.com\/CommonServiceLocator\" href=\"http:\/\/www.codeplex.com\/CommonServiceLocator\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.codeplex.com\/CommonServiceLocator<\/a><\/li><\/ul><p><a title=\"Comparison\" href=\"http:\/\/blog.ashmind.com\/index.php\/2008\/08\/19\/comparing-net-di-ioc-frameworks-part-1\/\" target=\"_blank\" rel=\"noopener noreferrer\">Comparison<\/a> of some DI frameworks.<\/p><ul><li>Java<ul><li>Guice, <a title=\"http:\/\/code.google.com\/p\/google-guice\/\" href=\"https:\/\/github.com\/google\/guice\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/google\/guice<\/a><\/li><li>Spring Framework, <a title=\"http:\/\/www.springsource.org\/\" href=\"http:\/\/spring.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/spring.io\/<\/a><\/li><\/ul><\/li><\/ul><h3>Refactorization<\/h3><ul><li>.Net<ul><li>JetBrains ReSharper (VS Add-In), <a title=\"http:\/\/www.jetbrains.com\/resharper\" href=\"http:\/\/www.jetbrains.com\/resharper\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jetbrains.com\/resharper<\/a><\/li><li>DevExpress <a title=\"CodeRush Express (VS Add-In)\" href=\"https:\/\/www.devexpress.com\/Products\/CodeRush\/\" target=\"_blank\" rel=\"noopener noreferrer\">CodeRush Express (VS Add-In)<\/a><\/li><li>Visual Studio (Std Edition and higher)<\/li><\/ul><\/li><li>C++<ul><li>VisualAssistX, plugin for Visual Studio, <a title=\"http:\/\/www.wholetomato.com\/\" href=\"http:\/\/www.wholetomato.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.wholetomato.com\/<\/a><\/li><\/ul><\/li><li>Java<ul><li>included in Eclipse <a title=\"http:\/\/www.eclipse.org\" href=\"http:\/\/www.eclipse.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.eclipse.org<\/a><\/li><li>included in IntelliJ IDEA <a title=\"http:\/\/www.jetbrains.com\/idea\/\" href=\"http:\/\/www.jetbrains.com\/idea\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jetbrains.com\/idea\/<\/a><\/li><\/ul><\/li><\/ul><h3>Metrics \/ code analysis<\/h3><ul><li>.Net<ul><li>NDepend, <a title=\"http:\/\/ndepend.com\/\" href=\"http:\/\/ndepend.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/ndepend.com\/<\/a><\/li><li>Simian, <a title=\"http:\/\/www.redhillconsulting.com.au\/products\/simian\/\" href=\"http:\/\/www.harukizaemon.com\/simian\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.redhillconsulting.com.au\/products\/simian\/<\/a> - detects violations of the DRY principle in the code<\/li><li>SourceMonitor, <a title=\"http:\/\/www.campwoodsw.com\/sourcemonitor.html\" href=\"http:\/\/www.campwoodsw.com\/sourcemonitor.html\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.campwoodsw.com\/sourcemonitor.html<\/a><\/li><li>IOSP Analyzer, <a href=\"https:\/\/ccd-akademie.de\/iosp-analyzer\/\" target=\"_blank\" rel=\"noopener\">https:\/\/ccd-akademie.de\/iosp-analyzer\/<\/a><\/li><\/ul><\/li><li>Java<ul><li>Sonar, <a title=\"http:\/\/www.sonarsource.org\/\" href=\"http:\/\/www.sonarqube.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.sonarqube.org\/<\/a><\/li><li>PMD, <a title=\"http:\/\/pmd.sourceforge.net\/\" href=\"http:\/\/pmd.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/pmd.sourceforge.net\/<\/a> also as a Maven plugin<\/li><li>Checkstyle, <a title=\"http:\/\/checkstyle.sourceforge.net\/\" href=\"http:\/\/checkstyle.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/checkstyle.sourceforge.net\/<\/a> also as a Maven plugin<\/li><li>FindBugs, <a title=\"http:\/\/findbugs.sourceforge.net\/\" href=\"http:\/\/findbugs.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/findbugs.sourceforge.net\/<\/a> also as a Maven plugin<\/li><\/ul><\/li><li>Groovy<ul><li>CodeNarc, <a title=\"http:\/\/codenarc.sourceforge.net\/\" href=\"http:\/\/codenarc.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/codenarc.sourceforge.net\/<\/a> also as a Maven plugin<\/li><\/ul><\/li><\/ul><h2>Automated testing<\/h2><h3>Integration tests, UI tests<\/h3><ul><li>.Net<ul><li>Ranorex (integration tests for desktop and web applications and general UI automation), <a title=\"http:\/\/www.ranorex.com\/\" href=\"http:\/\/www.ranorex.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.ranorex.com\/<\/a><\/li><li>WatiN (integration tests for web applications), <a title=\"http:\/\/watin.sourceforge.net\/\" href=\"http:\/\/watin.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/watin.org\/<\/a><\/li><li>WatiR (web applications), <a title=\"http:\/\/watir.com\/\" href=\"http:\/\/watir.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/watir.com\/<\/a><\/li><li>Telerik Teststudio (testing of desktop, web and Silverlight applications), <a title=\"http:\/\/www.telerik.com\/teststudio\" href=\"http:\/\/www.telerik.com\/teststudio\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.telerik.com\/teststudio<\/a><\/li><li>white (Win32, WinForms, WPF, SWT), <a title=\"http:\/\/www.codeplex.com\/white\" href=\"https:\/\/github.com\/TestStack\/White\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/TestStack\/White<\/a><\/li><li>Selenium (web applications), <a title=\"http:\/\/seleniumhq.org\/\" href=\"http:\/\/seleniumhq.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/seleniumhq.org\/<\/a><\/li><li>Silverlight Selenium (Silverlight applications), <a title=\"http:\/\/code.google.com\/p\/silverlight-selenium\/\" href=\"http:\/\/code.google.com\/p\/silverlight-selenium\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.google.com\/p\/silverlight-selenium\/<\/a><\/li><li>SilverUnit (Silverlight applications), <a title=\"http:\/\/cthru.codeplex.com\/\" href=\"http:\/\/cthru.codeplex.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/cthru.codeplex.com\/<\/a><\/li><\/ul><\/li><\/ul><ul><li>Java<ul><li>QF-Test - for Swing, SWT, JavaFX and web applications <a title=\"http:\/\/www.qfs.de\/de\/qftest\/index.html\" href=\"http:\/\/www.qfs.de\/de\/qftest\/index.html\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.qfs.de\/de\/qftest\/index.html<\/a><\/li><\/ul><\/li><\/ul><h3>Unit tests<\/h3><ul><li>.Net<ul><li>NCrunch, <a href=\"http:\/\/www.ncrunch.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.ncrunch.net\/ <\/a>(continuous testing for Visual Studio)<\/li><li>NUnit (Unit Test Framework), <a title=\"http:\/\/nunit.org\/\" href=\"http:\/\/nunit.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/nunit.org\/<\/a><\/li><li>JetBrains ReSharper (VS Add-In), <a title=\"http:\/\/www.jetbrains.com\/resharper\/\" href=\"http:\/\/www.jetbrains.com\/resharper\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jetbrains.com\/resharper\/<\/a> (contains a test runner for NUnit and other test frameworks)<\/li><li>Testdriven.Net (VS Add-In), <a title=\"http:\/\/testdriven.net\/\" href=\"http:\/\/testdriven.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/testdriven.net\/<\/a> (Testrunner for NUnit and other test frameworks)<\/li><li>Visual Studio (Pro Edition and higher)<\/li><li>xUnit.net, <a title=\"http:\/\/www.codeplex.com\/xunit\" href=\"https:\/\/github.com\/xunit\/xunit\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/xunit\/xunit<\/a><\/li><\/ul><\/li><li>C++:<ul><li>Google Test, <a title=\"http:\/\/code.google.com\/p\/googletest\/\" href=\"http:\/\/code.google.com\/p\/googletest\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.google.com\/p\/googletest\/<\/a><\/li><li>CppUnit, <a title=\"http:\/\/cppunit.sourceforge.net\/\" href=\"http:\/\/cppunit.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/cppunit.sourceforge.net\/<\/a><\/li><\/ul><\/li><li>Java<ul><li>JUnit, <a href=\"http:\/\/qunitjs.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/qunitjs.com\/<\/a>\u00a0(already included in Eclipse, incl. Testrunner)<\/li><li>Hamcrest, <a title=\"http:\/\/code.google.com\/p\/hamcrest\/\" href=\"http:\/\/code.google.com\/p\/hamcrest\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.google.com\/p\/hamcrest\/<\/a><\/li><li>Infinitest, <a href=\"https:\/\/infinitest.github.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/infinitest.github.io\/ <\/a>(continuous testing for Eclipse and IntelliJ)<\/li><\/ul><\/li><li>\u00a0JavaScript<ul><li>QUnit, <a title=\"http:\/\/docs.jquery.com\/Qunit\" href=\"http:\/\/docs.jquery.com\/Qunit\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/docs.jquery.com\/Qunit<\/a><\/li><\/ul><\/li><li>Python<ul><li>unittest - integrated in the standard lib<\/li><li>unittest2, <a title=\"http:\/\/pypi.python.org\/pypi\/unittest2\/\" href=\"http:\/\/pypi.python.org\/pypi\/unittest2\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/pypi.python.org\/pypi\/unittest2\/<\/a><\/li><li>nose, <a title=\"http:\/\/pypi.python.org\/pypi\/nose\/\" href=\"http:\/\/pypi.python.org\/pypi\/nose\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/pypi.python.org\/pypi\/nose\/<\/a><\/li><\/ul><\/li><\/ul><p><a title=\"List of unittest frameworks at Wikipedia\" href=\"http:\/\/de.wikipedia.org\/wiki\/Liste_von_Modultest-Software\" target=\"_blank\" rel=\"noopener noreferrer\">List of unittest frameworks at Wikipedia<\/a><\/p><h3>Mockup Frameworks<\/h3><ul><li>.Net<ul><li>Moq, <a title=\"http:\/\/code.google.com\/p\/moq\/\" href=\"https:\/\/github.com\/Moq\/moq4\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/Moq\/moq4<\/a><\/li><li>NMock, <a title=\"http:\/\/nmock.org\/\" href=\"http:\/\/nmock.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/nmock.org\/<\/a><\/li><li>Rhino Mocks, <a title=\"http:\/\/ayende.com\/projects\/rhino-mocks.aspx\" href=\"https:\/\/hibernatingrhinos.com\/oss\/rhino-mocks\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/ayende.com\/projects\/rhino-mocks.aspx<\/a><\/li><li>TypeMock Isolator, <a title=\"http:\/\/typemock.com\/\" href=\"http:\/\/typemock.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/typemock.com\/<\/a><\/li><\/ul><\/li><li>C++<ul><li>Google Mock, <a title=\"http:\/\/code.google.com\/p\/googlemock\/\" href=\"http:\/\/code.google.com\/p\/googlemock\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.google.com\/p\/googlemock\/<\/a><\/li><li>mockpp, <a title=\"http:\/\/mockpp.sourceforge.net\/\" href=\"http:\/\/mockpp.sourceforge.net\/index-en.html\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/mockpp.sourceforge.net\/index-en.html<\/a><\/li><\/ul><\/li><li>Java<ul><li>EasyMock, <a title=\"http:\/\/easymock.org\/\" href=\"http:\/\/easymock.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/easymock.org\/<\/a><\/li><li>JMock, <a title=\"http:\/\/www.jmock.org\/\" href=\"http:\/\/www.jmock.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jmock.org\/<\/a><\/li><li>mockito, <a title=\"http:\/\/code.google.com\/p\/mockito\/\" href=\"https:\/\/github.com\/mockito\/mockito\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/mockito\/mockito<\/a><\/li><\/ul><\/li><\/ul><h3>Code Coverage Analysis<\/h3><ul><li>.Net<ul><li>JetBrains dotCover, <a title=\"http:\/\/www.jetbrains.com\/dotcover\/\" href=\"http:\/\/www.jetbrains.com\/dotcover\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jetbrains.com\/dotcover\/<\/a><\/li><li>NCover, <a title=\"http:\/\/www.ncover.com\/\" href=\"http:\/\/www.ncover.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.ncover.com\/<\/a><\/li><li>Visual Studio Team System<\/li><\/ul><\/li><li>C++<ul><li>BullseyeCoverage, <a title=\"http:\/\/www.bullseye.com\/\" href=\"http:\/\/www.bullseye.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.bullseye.com\/<\/a><\/li><\/ul><\/li><li>Java<ul><li>Cobertura <a title=\"http:\/\/cobertura.sourceforge.net\/\" href=\"http:\/\/cobertura.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/cobertura.sourceforge.net\/<\/a>is also available as a Maven plugin<\/li><li>Emma <a title=\"http:\/\/emma.sourceforge.net\/\" href=\"http:\/\/emma.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/emma.sourceforge.net\/<\/a>is also available as a Maven plugin<\/li><\/ul><\/li><li>Python<ul><li>Integrated in PyDev: <a title=\"http:\/\/stackoverflow.com\/questions\/2262777\/how-to-get-unit-test-coverage-results-in-eclipse-pydev\" href=\"http:\/\/stackoverflow.com\/questions\/2262777\/how-to-get-unit-test-coverage-results-in-eclipse-pydev\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/stackoverflow.com\/questions\/2262777\/how-to-get-unit-test-coverage-results-in-eclipse-pydev<\/a><\/li><\/ul><\/li><\/ul><h2>Production<\/h2><h3>Build tools<\/h3><ul><li>ANT the <i>indispensable <\/i>busy ant <a title=\"http:\/\/ant.apache.org\" href=\"http:\/\/ant.apache.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/ant.apache.org<\/a><\/li><li>MAVEN prototype-driven generator, build controller, internet repository <a title=\"http:\/\/maven.apache.org\" href=\"http:\/\/maven.apache.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/maven.apache.org<\/a><\/li><\/ul><h3>Version control<\/h3><h4>Central<\/h4><ul><li>Subversion (SVN), <a title=\"http:\/\/subversion.tigris.org\/\" href=\"http:\/\/subversion.apache.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/subversion.apache.org\/<\/a><ul><li>VisualSVN (VS Add-In, Subversion Server), <a title=\"http:\/\/visualsvn.com\/\" href=\"http:\/\/visualsvn.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/visualsvn.com\/<\/a><\/li><li>TortoiseSVN, <a title=\"http:\/\/tortoisesvn.tigris.org\/\" href=\"https:\/\/tortoisesvn.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/tortoisesvn.tigris.org\/<\/a><\/li><\/ul><\/li><li>Team Foundation Server, <a title=\"http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx\" href=\"http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx<\/a><\/li><li>Vault, <a title=\"http:\/\/www.sourcegear.com\/vault\/index.html\" href=\"http:\/\/www.sourcegear.com\/vault\/index.html\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.sourcegear.com\/vault\/index.html<\/a><\/li><\/ul><h4>Distributed<\/h4><ul><li>Mercurial (HG), <a title=\"http:\/\/mercurial.selenic.com\/\" href=\"https:\/\/www.mercurial-scm.org\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/mercurial.selenic.com\/<\/a><ul><li>TortoiseHG, Windows Explorer extension, <a title=\"http:\/\/tortoisehg.bitbucket.org\/\" href=\"http:\/\/tortoisehg.bitbucket.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/tortoisehg.bitbucket.org\/<\/a><\/li><\/ul><\/li><li>Git, <a title=\"http:\/\/git-scm.com\/\" href=\"http:\/\/git-scm.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/git-scm.com\/<\/a><ul><li>TortoiseGIT, <a title=\"http:\/\/code.google.com\/p\/tortoisegit\/\" href=\"http:\/\/code.google.com\/p\/tortoisegit\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.google.com\/p\/tortoisegit\/<\/a><\/li><li>Gerrit, <a title=\"http:\/\/code.google.com\/p\/gerrit\/\" href=\"http:\/\/code.google.com\/p\/gerrit\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/code.google.com\/p\/gerrit\/<\/a><\/li><li>msysgit, <a title=\"http:\/\/code.google.com\/p\/msysgit\/\" href=\"http:\/\/msysgit.github.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/msysgit.github.io\/<\/a><\/li><\/ul><\/li><li>Bazaar, <a title=\"http:\/\/bazaar.canonical.com\/en\/\" href=\"http:\/\/bazaar.canonical.com\/en\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/bazaar.canonical.com\/en\/<\/a><ul><li>TortoiseBzr, <a title=\"https:\/\/launchpad.net\/tortoisebzr\" href=\"https:\/\/launchpad.net\/tortoisebzr\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/launchpad.net\/tortoisebzr<\/a><\/li><\/ul><\/li><li>Pastic SCM, <a title=\"http:\/\/www.plasticscm.com\" href=\"http:\/\/www.plasticscm.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.plasticscm.com<\/a><\/li><li>Darcs, <a title=\"http:\/\/darcs.net\/\" href=\"http:\/\/darcs.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/darcs.net\/<\/a><ul><li>TortoiseDarcs, <a title=\"http:\/\/tortoisedarcs.sourceforge.net\/\" href=\"http:\/\/tortoisedarcs.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/tortoisedarcs.sourceforge.net\/<\/a><\/li><\/ul><\/li><li>IBM CM Synergy <a title=\"http:\/\/www-01.ibm.com\/software\/awdtools\/synergy\/\" href=\"http:\/\/www-01.ibm.com\/software\/awdtools\/synergy\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www-01.ibm.com\/software\/awdtools\/synergy\/<\/a><\/li><li>Veracity <a title=\"http:\/\/www.veracity-scm.com\/\" href=\"http:\/\/www.veracity-scm.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.veracity-scm.com\/<\/a><\/li><\/ul><h3>Continuous Integration<\/h3><ul><li>FinalBuilder (visual scripts for CI and general batch tasks), <a title=\"http:\/\/www.finalbuilder.com\" href=\"http:\/\/www.finalbuilder.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.finalbuilder.com<\/a><\/li><li>JetBrains TeamCity, <a title=\"http:\/\/www.jetbrains.com\/teamcity\/\" href=\"http:\/\/www.jetbrains.com\/teamcity\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jetbrains.com\/teamcity\/<\/a><\/li><li class=\"p1\">Azure Pipelines,\u00a0<a href=\"https:\/\/azure.microsoft.com\/de-de\/services\/devops\/pipelines\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/azure.microsoft.com\/de-de\/services\/devops\/pipelines\/<\/a><\/li><li>VisualBuild, <a title=\"http:\/\/www.kinook.com\/VisBuildPro\/\" href=\"http:\/\/www.kinook.com\/VisBuildPro\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.kinook.com\/VisBuildPro\/<\/a><\/li><\/ul><h3>Profiler<\/h3><ul><li>.Net<ul><li>JetBrains dotTrace, <a title=\"http:\/\/www.jetbrains.com\/profiler\/\" href=\"http:\/\/www.jetbrains.com\/profiler\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jetbrains.com\/profiler\/<\/a><\/li><li>Red-Gate ANTS, <a title=\"http:\/\/www.red-gate.com\/products\/ants_performance_profiler\/index.htm\" href=\"http:\/\/www.red-gate.com\/products\/ants_performance_profiler\/index.htm\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.red-gate.com\/products\/ants_performance_profiler\/index.htm<\/a><\/li><\/ul><\/li><li>Java<ul><li>YourKit, <a title=\"http:\/\/www.yourkit.com\/\" href=\"http:\/\/www.yourkit.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.yourkit.com\/<\/a><\/li><\/ul><\/li><\/ul><h2>Development process<\/h2><ul><li>Team Foundation Server, <a title=\"http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx\" href=\"http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx<\/a><\/li><li>VersionOne, <a title=\"http:\/\/www.versionone.com\/\" href=\"http:\/\/www.versionone.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.versionone.com\/<\/a><\/li><li>Pivotal Tracker, <a title=\"http:\/\/www.pivotaltracker.com\/\" href=\"http:\/\/www.pivotaltracker.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.pivotaltracker.com\/<\/a><\/li><li>Redmine, <a title=\"http:\/\/www.redmine.org\/\" href=\"http:\/\/www.redmine.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.redmine.org\/<\/a><\/li><\/ul><h3>Issue Tracking<\/h3><ul><li>Bugzilla, <a title=\"http:\/\/www.bugzilla.org\/\" href=\"https:\/\/www.bugzilla.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.bugzilla.org\/<\/a><\/li><li>Team Foundation Server, <a title=\"http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx\" href=\"http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/msdn.microsoft.com\/en-us\/tfs2008\/default.aspx<\/a><\/li><li>Trac, <a title=\"http:\/\/trac.edgewall.org\/\" href=\"http:\/\/trac.edgewall.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/trac.edgewall.org\/<\/a><\/li><li>JetBrains YouTRACK, <a title=\"http:\/\/www.jetbrains.com\/youtrack\/index.html\" href=\"http:\/\/www.jetbrains.com\/youtrack\/index.html\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.jetbrains.com\/youtrack\/index.html<\/a><\/li><li>Mantis, <a title=\"http:\/\/www.mantisbt.org\/\" href=\"http:\/\/www.mantisbt.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.mantisbt.org\/<\/a><\/li><li>JIRA, <a title=\"http:\/\/www.atlassian.com\/software\/jira\/\" href=\"http:\/\/www.atlassian.com\/software\/jira\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.atlassian.com\/software\/jira\/<\/a><\/li><li>Polarion TRACK &amp; WIKI, <a title=\"http:\/\/www.polarion.com\/\" href=\"http:\/\/www.polarion.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.polarion.com\/<\/a><\/li><li>IBM CM Change <a title=\"http:\/\/www-01.ibm.com\/software\/awdtools\/change\/\" href=\"http:\/\/www-01.ibm.com\/software\/awdtools\/change\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www-01.ibm.com\/software\/awdtools\/change\/<\/a><br \/>can be integrated with the above-mentioned CM Synergy<\/li><li>Redmine, <a title=\"http:\/\/www.redmine.org\/\" href=\"http:\/\/www.redmine.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.redmine.org\/<\/a><\/li><\/ul><h3>Application Lifecycle Management<\/h3><ul><li>Requirements Engineering, Software Configuration Management, Quality Management<\/li><li>Polarion, <a title=\"http:\/\/www.polarion.com\/\" href=\"http:\/\/www.polarion.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.polarion.com\/<\/a><\/li><li>Rationale,\u00a0<a title=\"http:\/\/www-01.ibm.com\/software\/rational\/offerings\/lifecycle\/?ca=rhp\" href=\"http:\/\/www-01.ibm.com\/software\/rational\/alm\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www-01.ibm.com\/software\/rational\/alm\/<\/a><\/li><\/ul><h2>Clean Code Developer<\/h2><ul><li>CCD cheat sheet in Visual Studio, <a title=\"http:\/\/code.google.com\/p\/ccdaddin\/\" href=\"https:\/\/github.com\/AlexZeitler\/CcdAddIn\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/AlexZeitler\/CcdAddIn<\/a><\/li><li>CCD app for Windows 8, <a title=\"http:\/\/tinyurl.com\/b4pappn\" href=\"http:\/\/tinyurl.com\/b4pappn\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/tinyurl.com\/b4pappn<\/a><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Architektur \/ Design Inversion of Control \/ Dependency Injection .Net autofac, http:\/\/code.google.com\/p\/autofac\/ Microsoft Unity, http:\/\/msdn.microsoft.com\/en-us\/library\/cc468366.aspx NinJect, http:\/\/ninject.org\/ Spring.NET, http:\/\/www.springframework.net\/ StructureMap, http:\/\/structuremap.sourceforge.net\/Default.htm Versuch einer Vereinheitlichung des Zugriffs auf DI Container: Microsoft Common Service Locator, http:\/\/www.codeplex.com\/CommonServiceLocator Vergleich einiger DI Frameworks. Java Guice, https:\/\/github.com\/google\/guice Spring Framework, http:\/\/spring.io\/ Refaktorisierung .Net JetBrains ReSharper (VS Add-In), http:\/\/www.jetbrains.com\/resharper DevExpress CodeRush Express (VS [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":155,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-166","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/pages\/166","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/comments?post=166"}],"version-history":[{"count":5,"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/pages\/166\/revisions"}],"predecessor-version":[{"id":959,"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/pages\/166\/revisions\/959"}],"up":[{"embeddable":true,"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/pages\/155"}],"wp:attachment":[{"href":"https:\/\/clean-code-developer.de\/en\/wp-json\/wp\/v2\/media?parent=166"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}