<?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>Delphi400’s Weblog &#187; Softwareentwicklung</title>
	<atom:link href="http://delphi400.neusath.de/category/softwareentwicklung/feed" rel="self" type="application/rss+xml" />
	<link>http://delphi400.neusath.de</link>
	<description>Ein weiteres tolles WordPress-Blog</description>
	<lastBuildDate>Wed, 12 Oct 2011 19:10:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2</generator>
		<item>
		<title>Breakout: Steinwand</title>
		<link>http://delphi400.neusath.de/breakout_003.html</link>
		<comments>http://delphi400.neusath.de/breakout_003.html#comments</comments>
		<pubDate>Wed, 12 Oct 2011 19:05:30 +0000</pubDate>
		<dc:creator>Delphi400</dc:creator>
				<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Breakout]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://delphi400.neusath.de/?p=514</guid>
		<description><![CDATA[Nun sollen die Steine ins Spielfeld eingebettet werden. Dafür wird ein Klasse SteinWand eingeführt, welche die Steine dann in einer Liste verwaltet. Bei der Programmierung hat es sich ergeben, dass mit den Steinen auch gleich die ganze Wand eingeführt wurde. &#8230; <a href="http://delphi400.neusath.de/breakout_003.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Nun sollen die Steine ins Spielfeld eingebettet werden. Dafür wird ein Klasse SteinWand eingeführt, welche die Steine dann in einer Liste verwaltet.</p>
<p>Bei der Programmierung hat es sich ergeben, dass mit den Steinen auch gleich die ganze Wand eingeführt wurde. Eine Trennung der Arbeitsschritte war überflüssig und unpraktisch. Dieser Punkt war auch recht einfach.</p>
<p><a href="http://delphi400.neusath.de/wp-content/uploads/2011/10/Breakout_003.jpg"><img class="aligncenter size-medium wp-image-515" title="Breakout_003" src="http://delphi400.neusath.de/wp-content/uploads/2011/10/Breakout_003-300x200.jpg" alt="Breakout mit Steinwand" width="300" height="200" /></a></p>
<p><span id="more-514"></span></p>
<p>Eine vernünftige Kollisionskontrolle war hingegen dann doch recht aufwendig. Der Ansatz „Record.IntersectsWith(rec)“ war nicht praktikabel und auch nur für den ersten Einstieg gedacht. Hilfreich waren dabei die Seiten <a title="Einfache Kollisionsbehandlung" href="http://mitohnehaare.de/2011/01/27/einfache-kollisionsbehandlung-collision-response/" target="_blank">Einfache Kollisionsbehandlung (Collision-Response)</a> und vor allem die auch dort verlinkte Seite <a title="Tutorial Separating Axis Theorem" href="http://wiki.delphigl.com/index.php/Tutorial_Separating_Axis_Theorem" target="_blank">DGL-Wiki</a>.</p>
<div class="mceTemp mceIEcenter">
<div id="attachment_516" class="wp-caption aligncenter" style="width: 594px"><a href="http://delphi400.neusath.de/wp-content/uploads/2011/10/Breakout_UML_003.jpg"><img class="size-large wp-image-516" title="Breakout_UML_003" src="http://delphi400.neusath.de/wp-content/uploads/2011/10/Breakout_UML_003-1024x710.jpg" alt="UML Diagramm zu Breakout mit Steinwand" width="584" height="404" /></a><p class="wp-caption-text">UML Diagramm</p></div>
</div>
<p>Das Programm verfügt nun eine recht ordentliche Basis. Als nächstes wäre dann ein kleiner Editor interessant mit dem die Wände definiert werden könnten. Das wird aber erst mal warten müssen, da ich im Moment noch erst mit WPF und Silverlight beschäftigen will&#8230;</p>
<p>Aber hier zum Herunterladen der aktuelle Projektstand: <a href="http://delphi400.neusath.de/wp-content/uploads/2011/10/Quellcode_Step003.zip">Quellcode_Step003</a></p>
]]></content:encoded>
			<wfw:commentRss>http://delphi400.neusath.de/breakout_003.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Breakout: Der Ball</title>
		<link>http://delphi400.neusath.de/breakout_002.html</link>
		<comments>http://delphi400.neusath.de/breakout_002.html#comments</comments>
		<pubDate>Tue, 20 Sep 2011 18:32:39 +0000</pubDate>
		<dc:creator>Delphi400</dc:creator>
				<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Breakout]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://delphi400.neusath.de/?p=504</guid>
		<description><![CDATA[Nun sind folgende Schritte zu erledigen: Das Spielfeld bekommt 4 Ränder Es kommt ein Ball hinzu, welcher sich über das Spielfeld bewegt und an den Wänden abprallt. Durchmesser und Geschwindigkeit des Balls sollen steuerbar sein. Der Ball muss sich dem &#8230; <a href="http://delphi400.neusath.de/breakout_002.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Nun sind folgende Schritte zu erledigen:</p>
<ul>
<li>Das Spielfeld bekommt 4 Ränder</li>
<li>Es kommt ein Ball hinzu, welcher sich über das Spielfeld bewegt und an den Wänden abprallt.</li>
<li>Durchmesser und Geschwindigkeit des Balls sollen steuerbar sein.</li>
<li>Der Ball muss sich dem Zoom des Spielfeldes anpassen.</li>
</ul>
<p><a href="http://delphi400.neusath.de/wp-content/uploads/2011/09/In-Action.jpg"><img class="aligncenter size-medium wp-image-498" title="In Action" src="http://delphi400.neusath.de/wp-content/uploads/2011/09/In-Action-300x176.jpg" alt="" width="300" height="176" /></a></p>
<p><span id="more-504"></span></p>
<p>Hier das Klassendiagramm:</p>
<p><a href="http://delphi400.neusath.de/wp-content/uploads/2011/09/Breakout_UML_002.jpg"><img class="aligncenter size-large wp-image-492" title="Breakout_UML_002" src="http://delphi400.neusath.de/wp-content/uploads/2011/09/Breakout_UML_002-1024x692.jpg" alt="" width="584" height="394" /></a></p>
<p>Und hier der Quellcode zum runterladen: <a href="http://delphi400.neusath.de/wp-content/uploads/2011/09/Quellcode_Step02.zip">Quellcode_Step02</a></p>
<p>Ursprünglich wollte ich an dieser Stelle auch die Kollision mit dem Schiff unterbringen. Darum werde ich mich aber erst nach der Einführung der Steine kümmern. Außerdem  bin ich mit der Bewegung des Balls noch nicht zufrieden. Ich habe mich aber entschlossen es erst mal bei dem aktuellen Stand zu lassen und mich später darum zu kümmern.</p>
]]></content:encoded>
			<wfw:commentRss>http://delphi400.neusath.de/breakout_002.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Breakout: Spielfeld und Schiff</title>
		<link>http://delphi400.neusath.de/breakout_001.html</link>
		<comments>http://delphi400.neusath.de/breakout_001.html#comments</comments>
		<pubDate>Wed, 14 Sep 2011 19:00:39 +0000</pubDate>
		<dc:creator>Delphi400</dc:creator>
				<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Breakout]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://delphi400.neusath.de/?p=476</guid>
		<description><![CDATA[Das Spielfeld mit beweglichem Schiff ist nun fertig. Bei der Erstellung sollten diese Punkte berücksichtigt werden: Das Spielfeld soll sich in zwei Bereiche aufteilen. Eines zur Anzeige von Daten wie Punktestand und Level, ein weiteres für das eigentliche Spielfeld. Das &#8230; <a href="http://delphi400.neusath.de/breakout_001.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Das Spielfeld mit beweglichem Schiff ist nun fertig.</p>
<p>Bei der Erstellung sollten diese Punkte berücksichtigt werden:</p>
<ul>
<li>Das Spielfeld soll sich in zwei Bereiche aufteilen. Eines zur Anzeige von Daten wie Punktestand und Level, ein weiteres für das eigentliche Spielfeld. Das Spielfeld soll nicht fix sein, sondern vergrößerbar, bis hin zum Vollbildmodus.</li>
<li>Alle Interaktionen (z.B. zwischen Formular und Schiff) werden über einen Controller gesteuert.</li>
<li>Alle Zeichenoperationen sollen über eine Klasse Renderer gehen, welcher dann die Zeichenmethoden der einzelnen Instanzen aufruft.</li>
<li>Neben dem Formular sind folgende Klassen sind zu erstellen: Spielfeld, Schiff, Controller und Renderer</li>
</ul>
<p>Hier das Klassendiagramm:</p>
<p><a href="http://delphi400.neusath.de/wp-content/uploads/2011/09/Breakout_UML_001.jpg"><img class="alignleft size-full wp-image-477" title="Breakout_UML_001" src="http://delphi400.neusath.de/wp-content/uploads/2011/09/Breakout_UML_001.jpg" alt="Klassendiagramm Spielfeld mit Schiff" width="664" height="720" /></a></p>
<p>Und hier der Quellcode zum runterladen:  <a href="http://delphi400.neusath.de/wp-content/uploads/2011/09/Quellcode_Step01.zip">Quellcode_Step01</a></p>
<p>Im nächsten Schritt geht es mit dem Ball und den Wänden weiter&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://delphi400.neusath.de/breakout_001.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Projekt Breakout</title>
		<link>http://delphi400.neusath.de/breakout_000.html</link>
		<comments>http://delphi400.neusath.de/breakout_000.html#comments</comments>
		<pubDate>Mon, 22 Aug 2011 09:50:30 +0000</pubDate>
		<dc:creator>Delphi400</dc:creator>
				<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Breakout]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://delphi400.neusath.de/?p=396</guid>
		<description><![CDATA[Um noch mehr Erfahrung in C# zu sammeln habe ich mir überlegt einen Clone des Arcade Klassikers Breakout zu erstellen. Ich unterteile das Projekt in einzelne Schritte. Das wären: Spielfeld mit beweglichen Schiff Ball der sich im Spielfeld bewegt und &#8230; <a href="http://delphi400.neusath.de/breakout_000.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Um noch mehr Erfahrung in C# zu sammeln habe ich mir überlegt einen Clone des Arcade Klassikers Breakout zu erstellen. Ich unterteile das Projekt in einzelne Schritte. Das wären:</p>
<ol>
<li>Spielfeld mit beweglichen Schiff</li>
<li>Ball der sich im Spielfeld bewegt und von den Wänden und dem Schiff abprallt.</li>
<li>Einführen von Steinen die bei Ballkontakt zerstört werden.</li>
<li>Eine ganze Wand von Steinen  als ersten Level.</li>
<li>Ein Leveleditor in welchen der Anwender Steinwände definieren kann.</li>
<li>Level aus Leveleditor ins Spiel einbinden und mehrere Level hintereinander spielen.</li>
<li>Einführen von Sondersteinen mit verschiedenen Verhalten bei Ballkontakt.</li>
</ol>
<p>Ich werde jeden Schritt hier ausführlich dokumentieren und am Ende hoffentlich ein Cooles Spiel präsentieren können.</p>
]]></content:encoded>
			<wfw:commentRss>http://delphi400.neusath.de/breakout_000.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agil 2.0 &#8211; das Agile Development Framework</title>
		<link>http://delphi400.neusath.de/agil-2-0-das-agile-development-framework.html</link>
		<comments>http://delphi400.neusath.de/agil-2-0-das-agile-development-framework.html#comments</comments>
		<pubDate>Fri, 15 Jul 2011 18:24:51 +0000</pubDate>
		<dc:creator>Delphi400</dc:creator>
				<category><![CDATA[Softwareentwicklung]]></category>

		<guid isPermaLink="false">http://delphi400.neusath.de/?p=376</guid>
		<description><![CDATA[Diese Woche war ich mal wieder in Regensburg auf einen Vortrag der .Net usergroup. Sprecher war Golo Roden, der sein Agile Development Framework (ADF) vorstellte. Dabei handelt es sich um einen Ansatz die verschiedenen Methode des Agilen Development wie z. B. &#8230; <a href="http://delphi400.neusath.de/agil-2-0-das-agile-development-framework.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Diese Woche war ich mal wieder in Regensburg auf einen Vortrag der <a title=".Net usergroup" href="http://www.dotnet-sharepoint-regensburg.de/">.Net usergroup</a>.</p>
<p>Sprecher war Golo Roden, der sein <a title="ADF" href="http://www.agile-development-framework.net/">Agile Development Framework (ADF)</a> vorstellte. Dabei handelt es sich um einen Ansatz die verschiedenen Methode des Agilen Development wie z. B. Scrum und XP neu zu bewerten und zu einem umfassenden Rahmenwerk zu vereinen. Ein spannender Vortrag der auch mir als Einzelkämpfer in Form von ADF White einige Anregungen gab.</p>
<p>Ich werde das Projekt auf jeden Fall im Auge behalten, zumal ich das pair programming gerne mal ausprobieren würde.</p>
]]></content:encoded>
			<wfw:commentRss>http://delphi400.neusath.de/agil-2-0-das-agile-development-framework.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EKON 12</title>
		<link>http://delphi400.neusath.de/ekon-12.html</link>
		<comments>http://delphi400.neusath.de/ekon-12.html#comments</comments>
		<pubDate>Wed, 22 Oct 2008 06:53:03 +0000</pubDate>
		<dc:creator>Delphi400</dc:creator>
				<category><![CDATA[Randnotitzen]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>

		<guid isPermaLink="false">http://delphi400.neusath.de/?p=292</guid>
		<description><![CDATA[Diese Jahr findet vom 27.-31. Oktober die Entwickler Konferenz (EKON) in Mainz statt. Seit 1997 bietet die EKON jeden Herbst eine Woche lang Top-Informationen für alle, die mit Delphi, C++, C++ Builder, InterBase &#38; Co. arbeiten, und ist somit das &#8230; <a href="http://delphi400.neusath.de/ekon-12.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Diese Jahr findet vom 27.-31. Oktober die <a title="EKON" href="http://it-republik.de/entwicklerkonferenz/" target="_blank">Entwickler Konferenz (EKON)</a> in Mainz statt.</p>
<blockquote><p>Seit 1997 bietet die EKON jeden Herbst eine Woche lang Top-Informationen für alle, die mit Delphi, C++, C++ Builder, InterBase &amp; Co. arbeiten, und ist somit das ultimative Event für alle Entwickler. Hier erhalten Sie die neuesten Informationen und fundierte Tipps &amp; Tricks. Im Mittelpunkt stehen in diesem Jahr Delphi 2009 und weitere Produkte aus dem Hause CodeGear/Embarcadero, aber auch Themen wie native Entwicklung für Windows, PHP sowie ASP.NET und AJAX.</p></blockquote>
<p>Leider werde ich es wieder nicht schaffen dabei zu sein. Aber beim nächsten Mal kann nichts nichts mehr aufhalten!</p>
]]></content:encoded>
			<wfw:commentRss>http://delphi400.neusath.de/ekon-12.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ModelMaker 10</title>
		<link>http://delphi400.neusath.de/modelmaker10.html</link>
		<comments>http://delphi400.neusath.de/modelmaker10.html#comments</comments>
		<pubDate>Wed, 08 Oct 2008 15:06:26 +0000</pubDate>
		<dc:creator>Delphi400</dc:creator>
				<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://delphi400.neusath.de/?p=281</guid>
		<description><![CDATA[Seit dem 26. September ist die neueste Version von ModelMaker verfügbar. Natürlich mit Delphi 2009 support. New Delphi 2009 syntax supported: Generic types: for example in classes, interfaces, records and delegates. Anonymous methods: the &#8220;reference to procedure&#8221; construct is emitted &#8230; <a href="http://delphi400.neusath.de/modelmaker10.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Seit dem 26. September ist die neueste Version von <strong>ModelMaker</strong> verfügbar. Natürlich mit Delphi 2009 support.</p>
<blockquote>
<ul class="featurelist">
<li>New <strong>Delphi 2009 syntax</strong> supported:
<ul class="noindentlist">
<li><strong>Generic types</strong>: for example in classes, interfaces, records and delegates.</li>
<li><strong>Anonymous methods</strong>: the &#8220;reference to procedure&#8221; construct is emitted as a special delegate type. Anonymous method implementations are emitted as Live Metric hints with navigation support.</li>
<li>Parsing support for the <strong>deprecated</strong> hint directive with string comment. Note: editing the hint using MM is not supported yet.</li>
<li>Other parser improvements to make the above possible: improved asm handling, improved operator keyword handling,</li>
<li>To enable Delphi 2009 syntax, make sure the pascal language mode on Project Options | General is set to D2009 win32. Selected Language mode is also displayed on the statusbar</li>
</ul>
</li>
</ul>
</blockquote>
<p>Ich arbeite seit einem Jahr mit ModelMaker 9 und werde die Tage updaten.</p>
<p>Alles weiter <a title="www.modelmakertools.com" href="http://www.modelmakertools.com/modelmaker/index.html">hier</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://delphi400.neusath.de/modelmaker10.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

