<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>IOException.de &#187; debugging</title>
	<atom:link href="http://www.ioexception.de/tag/debugging/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ioexception.de</link>
	<description>Ausgewählter Nerdkram von Informatikstudenten der Uni Ulm</description>
	<lastBuildDate>Fri, 13 Jan 2012 07:38:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Statische Code-Analyse für Java mit FindBugs</title>
		<link>http://www.ioexception.de/2009/07/03/statische-code-analyse-fur-java-mit-findbugs/</link>
		<comments>http://www.ioexception.de/2009/07/03/statische-code-analyse-fur-java-mit-findbugs/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 09:28:46 +0000</pubDate>
		<dc:creator>Benjamin Erb</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://www.ioexception.de/?p=186</guid>
		<description><![CDATA[FindBugs ist ein Open-Source Tool zur statischen Quellcode-Analyse für Java. Es sucht in Java-Code nach typischen Fehlermustern – hierbei wird lediglich der Java Bytecode betrachtet, der Code wird nicht ausgeführt. Hierfür besitzt FindBugs eine reichhaltige Sammlung von typischen Bugs. Diese basieren hauptsächlich auf schwierigen Sprachfeatures (z.B. fehleranfälliger Umgang mit intrinsischen Condition Queues – wait/notify/notifyAll), häufig [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ioexception.de/wp-content/uploads/2009/07/findbugs1.png"><img class="alignleft size-medium wp-image-194" title="findbugs1" src="http://www.ioexception.de/wp-content/uploads/2009/07/findbugs1-300x190.png" alt="findbugs1" width="300" height="190" /></a><a href="http://findbugs.sourceforge.net/">FindBugs</a> ist ein Open-Source Tool zur statischen Quellcode-Analyse für Java. Es sucht in Java-Code nach typischen Fehlermustern – hierbei wird lediglich der Java Bytecode betrachtet, der Code wird nicht ausgeführt. Hierfür besitzt FindBugs eine reichhaltige Sammlung von typischen Bugs. Diese basieren hauptsächlich auf schwierigen Sprachfeatures (z.B. fehleranfälliger Umgang mit intrinsischen <em>Condition Queues</em> – <code>wait/notify/notifyAll</code>), häufig missverstandenen API Funktionen (z.B. Start eines Threads durch Aufruf der <code>run()</code>-Methode anstatt <code>start()</code> ) und markanten Fehlern wie Typos, falschen Vergleichsoperationen (Stringvergleiche mit <code>==</code> anstatt <code>equals</code>) etc. Auch Korrektheit und Korrektheit bei nebenläufigen Programmen sowie Performance- und Sicherheitsaspekte werden beachtet. Eine komplette Liste aller bekannter Fehlermuster gibt es auf der <a href="http://findbugs.sourceforge.net/bugDescriptions.html">FindBugs Bug Descriptions</a> Seite.</p>
<p>Ein solches Tool kann nie sorgfältiges Design &amp; Implementierung, noch ausgebieges Testen und Debuggen ersetzen, jedoch ist es als weiteres Werkzeug bei der Suche nach Fehlern insbesondere in größeren Projekten sehr hilfreich. Neben einer Kommandozeilenvariante und einer GUI existiert außerdem ein Eclipse-Plugin, womit sich FindBugs vollständig in Eclipse integrieren lässt. Über den Package Explorer lassen sich Analyseprozesse starten, gefunden Fehlermuster werden sowohl in einem <code>Bux Explorer</code> als auch <em>inline</em> im <code>Editor</code> angezeigt.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ioexception.de/2009/07/03/statische-code-analyse-fur-java-mit-findbugs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

