{"id":1341,"date":"2018-03-02T18:39:24","date_gmt":"2018-03-02T16:39:24","guid":{"rendered":"http:\/\/medtech-ingenieur.de\/?p=1341"},"modified":"2021-08-06T14:43:43","modified_gmt":"2021-08-06T13:43:43","slug":"statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch","status":"publish","type":"post","link":"https:\/\/medtech-ingenieur.de\/en\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/","title":{"rendered":"Static Code Analysis \u2013 Are you analyzing or debugging?"},"content":{"rendered":"<p>Static code analysis is not really a new development in the software world. Tools like <em>PC Lint<\/em> have been in use since the 1980s and are widely used in industry. When using such a tool, it doesn&#039;t really matter whether firmware is being developed for an embedded target or software for a PC. Nevertheless, it often seems that static code analysis hasn&#039;t yet fully arrived in the embedded sector. Many firmware developers, despite years of experience, seem to have never heard of static code analysis. Others have heard of static code analysis itself, but aren&#039;t familiar with the corresponding tools. Reason enough to provide a brief overview of the topic at this point.<\/p>\n<h2>Why static code analysis?<\/h2>\n<p>Anyone who has ever written software knows that finding errors often takes more time than writing the actual code. Many errors are already flagged by compiler warnings. Nevertheless, errors almost always remain in the code. Some of these only become apparent later in the project. These errors usually have to be found through time-consuming debugging. This can be difficult, especially with sporadically occurring errors.<\/p>\n<p>The idea behind static code analysis is to automatically find errors before they even become noticeable at runtime. Every error found reduces development time. However, it should be warned that even static code analysis does not produce 100% error-free code.<\/p>\n<p>Another application of static code analysis is checking code for compliance with coding guidelines. Many tools, for example, support checking according to MISRA-C rules or can be extended to include your own coding guidelines. Instead of having to fix hundreds of findings after a code review, developers can regularly review the output of the static code analysis. If this happens regularly, the programmer will eventually begin to internalize the coding guidelines and follow them automatically.<\/p>\n<div class=\"table-scrollable\">\r\n<table style=\"min-width: 300px;\">\r\n<tbody>\r\n<tr>\r\n<td colspan=\"2\" bgcolor=\"#FFFFFF\">\r\n<h4><center><strong>Your contact person:<\/strong><\/center><\/h4>\r\n<\/td>\r\n<\/tr>\r\n<tr>\r\n<td style=\"text-align: center;\" bgcolor=\"#f9f9f9\"><strong><span style=\"color: #2c2ccc;\">M.Sc. Bj\u00f6rn Schmitz<\/span><\/strong><span style=\"color: #2c2ccc;\">, Software Developer<\/span> <br \/>E-mail: <a href=\"mailto:schmitz@medtech-ingenieur.de\">schmitz@medtech-ingenieur.de<\/a> <br \/>Phone:\u00a0\u00a0<a href=\"tel:+499131691240\">+49 9131 691 240<\/a><\/td>\r\n<td style=\"background-image: url('https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2015\/02\/Bj%C3%B6rnSchmitz-150x150.jpg'); background-repeat: no-repeat; background-position: top; background-size: cover;\" bgcolor=\"#f9f9f9\" width=\"70px\">\u00a0<\/td>\r\n<\/tr>\r\n<tr>\r\n<td colspan=\"2\" bgcolor=\"#FFFFFF\">\r\n<center><p>Do you need support with the development of your medical device? We&#039;re happy to help! MEDtech Ingenieur GmbH offers hardware development, software development, systems engineering, mechanical development, and consulting services from a single source. Contact us.<\/p>\r\n<center><a class=\"large blue button\" href=\"https:\/\/medtech-ingenieur.de\/en\/kontakt\/\">make contact<\/a><\/center><br\/><\/center>\r\n<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n<\/div>\n<h2>What tools are available<\/h2>\n<p>There are several tools for static code analysis. Many of them are available for free and fully functional. Typically, different programs are required for different programming languages. <a href=\"https:\/\/de.wikipedia.org\/wiki\/Liste_von_Werkzeugen_zur_statischen_Codeanalyse\">Wikipedia<\/a> provides a pretty good overview here, sorted by programming language. Below, I&#039;ll discuss two tools that I&#039;ve had quite good experiences with. There are probably a lot of other tools out there with similar or perhaps even better performance. They all have their advantages and disadvantages. Therefore, it may be advisable to use several tools in parallel. This is even recommended by some software developers.<\/p>\n<h2>PC Lint<\/h2>\n<p>When it comes to commercial tools for analyzing C code, I personally have good experiences with the classic<em> PC Lint<\/em> The tool offers a wide range of features and is highly configurable. It includes, among other things, the MISRA-C rules. Each MISRA-C rule can be selectively activated or deactivated. This also applies to any other rule according to the <em>Lint<\/em> checked the code. In addition, <em>Lint<\/em> There are various ways to integrate your own rules. For example, you can use the command <em>-deprecate<\/em>\u00a0 for keywords such as <em>goto<\/em> For each <em>goto<\/em> the <em>Lint<\/em> If a rule is found, a warning specified by the developer can be issued. By selectively enabling and disabling rules and implementing new ones, you can largely integrate your own coding guidelines.<\/p>\n<p>The high complexity of <em>Lint<\/em> However, this is also the biggest disadvantage. It takes some time to get used to <em>Lint<\/em> really warmed up. If you have no experience with the tool and want to set it up for a new software project, it will take quite a while until the program really works smoothly with all the desired rules. Especially since the tool&#039;s documentation is not very clear. In addition, <em>Lint<\/em> It has no GUI, but is a pure command-line tool by design. Developers can significantly improve the workflow by writing programs in scripting languages such as Python. These can automatically adapt the Lint configuration to their own software project (for example, setting the include paths) and <em>linten <\/em>of all files. Of course, writing these scripts can also be time-consuming.<\/p>\n<figure id=\"attachment_1519\" aria-describedby=\"caption-attachment-1519\" style=\"width: 1149px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1519 size-full\" src=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2.png\" alt=\"\" width=\"1149\" height=\"369\" srcset=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2.png 1149w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-300x96.png 300w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-768x247.png 768w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-1024x329.png 1024w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-100x32.png 100w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-150x48.png 150w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-200x64.png 200w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-450x145.png 450w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-600x193.png 600w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/LintOutputNeu-2-900x289.png 900w\" sizes=\"auto, (max-width: 1149px) 100vw, 1149px\" \/><\/a><figcaption id=\"caption-attachment-1519\" class=\"wp-caption-text\">Example lint output<\/figcaption><\/figure>\n<h2>Cppcheck<\/h2>\n<p>One free alternative for analyzing C code is the program Cppcheck. Its biggest advantage is its ease of use. Once the program is installed, you can set up a new Cppcheck project in just a few minutes. The integrated GUI is very simple and intuitive, so reading documentation is actually unnecessary. This open source tool also finds many errors and checks the code according to certain style rules. The software distinguishes between four levels of output: error, warning, style warning, and information. Each level can be switched on and off separately. Due to its ease of use, Cppcheck is definitely a good choice for developers who want to check existing code for overlooked errors without much effort. However, you should limit yourself to warnings and errors here, as otherwise the effort required to examine the output can become very time-consuming.<\/p>\n<figure id=\"attachment_1515\" aria-describedby=\"caption-attachment-1515\" style=\"width: 965px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1515 size-full\" src=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png\" alt=\"\" width=\"965\" height=\"532\" srcset=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png 965w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-300x165.png 300w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-768x423.png 768w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-100x55.png 100w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-150x83.png 150w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-200x110.png 200w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-450x248.png 450w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-600x331.png 600w, https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot-900x496.png 900w\" sizes=\"auto, (max-width: 965px) 100vw, 965px\" \/><\/a><figcaption id=\"caption-attachment-1515\" class=\"wp-caption-text\">Cppcheck GUI<\/figcaption><\/figure>\n<h2>Pitfalls<\/h2>\n<p>The worst thing you can do when using static code analysis is to finish developing your firmware and then &quot;quickly run the tool over it again to see what it finds.&quot; This means that many errors have probably already been found through time-consuming processes such as debugging, which could have been found much more quickly using static code analysis. On the other hand, depending on the configuration of the tool used, the developer may be overwhelmed by the sheer number of errors, warnings, and information found. This happens especially when coding standards such as MISRA-C are required and are to be checked using static code analysis. If the developer then runs static code analysis at the end of development, hundreds of warnings per module can occur. Often, this is simply because one or two rules were overlooked during development. For an entire firmware project, this can quickly lead to thousands of outputs.<\/p>\n<p>Of course, it&#039;s usually still a good idea to examine a finished piece of software using static code analysis. However, you should limit yourself to &quot;real&quot; errors. Tools like <em>Cppcheck<\/em> or <em>PC Lint<\/em> usually allow you to configure different levels of warnings. <em>PC Lint<\/em> For example, distinguish between errors, warnings, and information, each of which can be enabled or disabled. However, if possible, it is recommended to use static code analysis tools as early as possible. Ideally, the tools should be set up right at the beginning of a firmware project and used regularly. Automation can also be useful. For example, many tools can be integrated into the compiler&#039;s prebuild process or into a version control tool.<\/p>\n<h2>Conclusion<\/h2>\n<p>In my opinion, there is no reason not to use a tool for static code analysis. Even if you think that your compiler already finds most errors, free tools like the one mentioned above are already <em>Cppcheck<\/em> far too simple to use to simply ignore. Every additional tool at least slightly increases the probability of discovering errors in your own code that would otherwise have to be laboriously searched for manually, or that might otherwise remain unnoticed in the code. More complex tools may require a certain amount of time to set up initially, but it should be noted that every error discovered early on naturally saves time. If you take the time to set up a tool for one project, you can then use the corresponding configuration for every subsequent project anyway. For software developers, it is therefore always worthwhile to familiarize themselves with the topic and try out different tools. If only because the style warnings that appear in abundance at the beginning and are sometimes very annoying, inevitably lead to a better programming style.<\/p>\n<p>I would be very happy to receive feedback and additions, such as recommendations for additional tools and techniques.<\/p>","protected":false},"excerpt":{"rendered":"<p>Statische Codeanalyse geh\u00f6rt nicht wirklich zu den Neuheiten in der Softwarewelt. Tools wie PC-Lint sind seit den 80er Jahren im Einsatz und werden in der Industrie durchaus auch h\u00e4ufig verwendet. F\u00fcr die Verwendung eines solchen Tools spielt es eigentlich keine Rolle ob Firmware f\u00fcr ein Embedded Target oder Software f\u00fcr einen PC entwickelt wird. Trotzdem [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":1515,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,8],"tags":[201,200,198,35,199,197,196],"class_list":["post-1341","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","category-tools","tag-coding-guidelines","tag-cppcheck","tag-debuggen","tag-embedded","tag-pc-lint","tag-softwarequelitaet","tag-statische-codeanalyse","post-wrapper","thrv_wrapper"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Statische Code Analyse - Analysieren Sie schon oder debuggen sie noch? - MEDtech Ingenieur GmbH<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/medtech-ingenieur.de\/en\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Statische Code Analyse - Analysieren Sie schon oder debuggen sie noch? - MEDtech Ingenieur GmbH\" \/>\n<meta property=\"og:description\" content=\"Statische Codeanalyse geh\u00f6rt nicht wirklich zu den Neuheiten in der Softwarewelt. Tools wie PC-Lint sind seit den 80er Jahren im Einsatz und werden in der Industrie durchaus auch h\u00e4ufig verwendet. F\u00fcr die Verwendung eines solchen Tools spielt es eigentlich keine Rolle ob Firmware f\u00fcr ein Embedded Target oder Software f\u00fcr einen PC entwickelt wird. Trotzdem [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/medtech-ingenieur.de\/en\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/\" \/>\n<meta property=\"og:site_name\" content=\"MEDtech Ingenieur GmbH\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/medtechIngenieur\" \/>\n<meta property=\"article:published_time\" content=\"2018-03-02T16:39:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-08-06T13:43:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png\" \/>\n\t<meta property=\"og:image:width\" content=\"965\" \/>\n\t<meta property=\"og:image:height\" content=\"532\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Bj\u00f6rn Schmitz\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@MedtechIng\" \/>\n<meta name=\"twitter:site\" content=\"@MedtechIng\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Bj\u00f6rn Schmitz\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/\"},\"author\":{\"name\":\"Bj\u00f6rn Schmitz\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/person\\\/d8d57dae1a037203802f980694210c96\"},\"headline\":\"Statische Code Analyse &#8211; Analysieren Sie schon oder debuggen sie noch?\",\"datePublished\":\"2018-03-02T16:39:24+00:00\",\"dateModified\":\"2021-08-06T13:43:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/\"},\"wordCount\":1388,\"commentCount\":4,\"publisher\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2018\\\/03\\\/CppScreenshot.png\",\"keywords\":[\"Coding Guidelines\",\"Cppcheck\",\"Debuggen\",\"Embedded\",\"PC-Lint\",\"Softwarequelit\u00e4t\",\"Statische Codeanalyse\"],\"articleSection\":[\"Software\",\"Tools\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/\",\"name\":\"Statische Code Analyse - Analysieren Sie schon oder debuggen sie noch? - MEDtech Ingenieur GmbH\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2018\\\/03\\\/CppScreenshot.png\",\"datePublished\":\"2018-03-02T16:39:24+00:00\",\"dateModified\":\"2021-08-06T13:43:43+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#primaryimage\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2018\\\/03\\\/CppScreenshot.png\",\"contentUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2018\\\/03\\\/CppScreenshot.png\",\"width\":965,\"height\":532},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\\\/\\\/medtech-ingenieur.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Statische Code Analyse &#8211; Analysieren Sie schon oder debuggen sie noch?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#website\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/\",\"name\":\"MEDtech Ingenieur GmbH\",\"description\":\"Ingenieursdienstleister f\u00fcr Medizintechnik\",\"publisher\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#organization\"},\"alternateName\":\"MEDtech\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/medtech-ingenieur.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#organization\",\"name\":\"MEDtech Ingenieur\",\"alternateName\":\"MEDtech\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/logo-700x700-1.png\",\"contentUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/logo-700x700-1.png\",\"width\":700,\"height\":700,\"caption\":\"MEDtech Ingenieur\"},\"image\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/medtechIngenieur\",\"https:\\\/\\\/x.com\\\/MedtechIng\",\"https:\\\/\\\/www.instagram.com\\\/medtech.ingenieure\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/37871229\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/person\\\/d8d57dae1a037203802f980694210c96\",\"name\":\"Bj\u00f6rn Schmitz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/220b9f0a28245f1734df66dc6a1279c867b612a6f80e83450554b93475740ff1?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/220b9f0a28245f1734df66dc6a1279c867b612a6f80e83450554b93475740ff1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/220b9f0a28245f1734df66dc6a1279c867b612a6f80e83450554b93475740ff1?s=96&d=mm&r=g\",\"caption\":\"Bj\u00f6rn Schmitz\"},\"description\":\"Seit Juli 2017 geh\u00f6re ich zum MEDtech-Ingenieur Team und bin hier vor allem als Firmwareentwickler t\u00e4tig. Schon in k\u00fcrzester Zeit konnte ich an vielen spannenden Projekten aus dem Bereich Medizintechnik, aber auch aus anderen Bereichen mitwirken.\",\"sameAs\":[\"https:\\\/\\\/www.medtech-ingenieur.de\"],\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/en\\\/author\\\/bjoern\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Static Code Analysis - Are you already analyzing or still debugging? - MEDtech Ingenieur GmbH","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/medtech-ingenieur.de\/en\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/","og_locale":"en_US","og_type":"article","og_title":"Statische Code Analyse - Analysieren Sie schon oder debuggen sie noch? - MEDtech Ingenieur GmbH","og_description":"Statische Codeanalyse geh\u00f6rt nicht wirklich zu den Neuheiten in der Softwarewelt. Tools wie PC-Lint sind seit den 80er Jahren im Einsatz und werden in der Industrie durchaus auch h\u00e4ufig verwendet. F\u00fcr die Verwendung eines solchen Tools spielt es eigentlich keine Rolle ob Firmware f\u00fcr ein Embedded Target oder Software f\u00fcr einen PC entwickelt wird. Trotzdem [&hellip;]","og_url":"https:\/\/medtech-ingenieur.de\/en\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/","og_site_name":"MEDtech Ingenieur GmbH","article_publisher":"https:\/\/www.facebook.com\/medtechIngenieur","article_published_time":"2018-03-02T16:39:24+00:00","article_modified_time":"2021-08-06T13:43:43+00:00","og_image":[{"width":965,"height":532,"url":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png","type":"image\/png"}],"author":"Bj\u00f6rn Schmitz","twitter_card":"summary_large_image","twitter_creator":"@MedtechIng","twitter_site":"@MedtechIng","twitter_misc":{"Written by":"Bj\u00f6rn Schmitz","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#article","isPartOf":{"@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/"},"author":{"name":"Bj\u00f6rn Schmitz","@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/person\/d8d57dae1a037203802f980694210c96"},"headline":"Statische Code Analyse &#8211; Analysieren Sie schon oder debuggen sie noch?","datePublished":"2018-03-02T16:39:24+00:00","dateModified":"2021-08-06T13:43:43+00:00","mainEntityOfPage":{"@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/"},"wordCount":1388,"commentCount":4,"publisher":{"@id":"https:\/\/medtech-ingenieur.de\/#organization"},"image":{"@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#primaryimage"},"thumbnailUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png","keywords":["Coding Guidelines","Cppcheck","Debuggen","Embedded","PC-Lint","Softwarequelit\u00e4t","Statische Codeanalyse"],"articleSection":["Software","Tools"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/","url":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/","name":"Static Code Analysis - Are you already analyzing or still debugging? - MEDtech Ingenieur GmbH","isPartOf":{"@id":"https:\/\/medtech-ingenieur.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#primaryimage"},"image":{"@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#primaryimage"},"thumbnailUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png","datePublished":"2018-03-02T16:39:24+00:00","dateModified":"2021-08-06T13:43:43+00:00","breadcrumb":{"@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#primaryimage","url":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png","contentUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2018\/03\/CppScreenshot.png","width":965,"height":532},{"@type":"BreadcrumbList","@id":"https:\/\/medtech-ingenieur.de\/statische-code-analyse-analysieren-sie-schon-oder-debuggen-sie-noch\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/medtech-ingenieur.de\/"},{"@type":"ListItem","position":2,"name":"Statische Code Analyse &#8211; Analysieren Sie schon oder debuggen sie noch?"}]},{"@type":"WebSite","@id":"https:\/\/medtech-ingenieur.de\/#website","url":"https:\/\/medtech-ingenieur.de\/","name":"MEDtech Ingenieur GmbH","description":"Engineering service provider for medical technology","publisher":{"@id":"https:\/\/medtech-ingenieur.de\/#organization"},"alternateName":"MEDtech","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/medtech-ingenieur.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/medtech-ingenieur.de\/#organization","name":"MEDtech Engineer","alternateName":"MEDtech","url":"https:\/\/medtech-ingenieur.de\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/logo\/image\/","url":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2024\/01\/logo-700x700-1.png","contentUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2024\/01\/logo-700x700-1.png","width":700,"height":700,"caption":"MEDtech Ingenieur"},"image":{"@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/medtechIngenieur","https:\/\/x.com\/MedtechIng","https:\/\/www.instagram.com\/medtech.ingenieure\/","https:\/\/www.linkedin.com\/company\/37871229\/"]},{"@type":"Person","@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/person\/d8d57dae1a037203802f980694210c96","name":"Bj\u00f6rn Schmitz","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/220b9f0a28245f1734df66dc6a1279c867b612a6f80e83450554b93475740ff1?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/220b9f0a28245f1734df66dc6a1279c867b612a6f80e83450554b93475740ff1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/220b9f0a28245f1734df66dc6a1279c867b612a6f80e83450554b93475740ff1?s=96&d=mm&r=g","caption":"Bj\u00f6rn Schmitz"},"description":"I&#039;ve been part of the MEDtech engineering team since July 2017, primarily working as a firmware developer. In a very short time, I&#039;ve been able to work on many exciting projects in the medical technology field, as well as in other areas.","sameAs":["https:\/\/www.medtech-ingenieur.de"],"url":"https:\/\/medtech-ingenieur.de\/en\/author\/bjoern\/"}]}},"_links":{"self":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts\/1341","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/comments?post=1341"}],"version-history":[{"count":26,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts\/1341\/revisions"}],"predecessor-version":[{"id":5861,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts\/1341\/revisions\/5861"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/media\/1515"}],"wp:attachment":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/media?parent=1341"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/categories?post=1341"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/tags?post=1341"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}