<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.flbk-hamm.de/index.php?action=history&amp;feed=atom&amp;title=Objekt-First</id>
	<title>Objekt-First - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.flbk-hamm.de/index.php?action=history&amp;feed=atom&amp;title=Objekt-First"/>
	<link rel="alternate" type="text/html" href="https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;action=history"/>
	<updated>2026-06-21T23:13:17Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in FLBK-Wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2072&amp;oldid=prev</id>
		<title>Thomas: /* Einführung */</title>
		<link rel="alternate" type="text/html" href="https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2072&amp;oldid=prev"/>
		<updated>2025-09-29T12:02:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Einführung&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 29. September 2025, 14:02 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l8&quot;&gt;Zeile 8:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 8:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;2. Kapselung von Anfang an:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;2. Kapselung von Anfang an:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Schüler lernen direkt, dass [[Daten]] (private [[Attribut|Attribute]]) und die Operationen auf diesen Daten (öffentliche [https://wiki.flbk-hamm.de/Methode#Sondierende_Methode Getter] und [[https://wiki.flbk-hamm.de/Methode#Ver%C3%A4ndernde_Methode&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|&lt;/del&gt;Setter]]) zusammengehören. Das fördert von Anfang an das grundlegende [[Objektorientierung|objektorientierte]] Prinzip der Kapselung.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Schüler lernen direkt, dass [[Daten]] (private [[Attribut|Attribute]]) und die Operationen auf diesen Daten (öffentliche [https://wiki.flbk-hamm.de/Methode#Sondierende_Methode Getter] und [[https://wiki.flbk-hamm.de/Methode#Ver%C3%A4ndernde_Methode Setter]]) zusammengehören. Das fördert von Anfang an das grundlegende [[Objektorientierung|objektorientierte]] Prinzip der Kapselung.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;3. Vermeidung des &amp;quot;Static-Main-Problems&amp;quot;:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;3. Vermeidung des &amp;quot;Static-Main-Problems&amp;quot;:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff:1.41:old-2071:rev-2072:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Thomas</name></author>
	</entry>
	<entry>
		<id>https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2071&amp;oldid=prev</id>
		<title>Thomas: /* Einführung */</title>
		<link rel="alternate" type="text/html" href="https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2071&amp;oldid=prev"/>
		<updated>2025-09-29T12:02:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Einführung&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 29. September 2025, 14:02 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Zeile 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die reale Welt besteht aus [[Objekt|Objekten]] (Autos, Kunden, Rechnungen). Der Objekt-First-Ansatz erlaubt es uns, diese realen Konzepte sofort in [[Quellcode|Code]] abzubilden. Schüler verstehen schnell, dass ein [[Objekt]] [[Zustand]] ([[Attribut|Attribute]]) und Verhalten ([[Methode|Methoden]]) besitzt. Dies ist intuitiver als abstrakte prozedurale [[Anweisung|Anweisungen]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die reale Welt besteht aus [[Objekt|Objekten]] (Autos, Kunden, Rechnungen). Der Objekt-First-Ansatz erlaubt es uns, diese realen Konzepte sofort in [[Quellcode|Code]] abzubilden. Schüler verstehen schnell, dass ein [[Objekt]] [[Zustand]] ([[Attribut|Attribute]]) und Verhalten ([[Methode|Methoden]]) besitzt. Dies ist intuitiver als abstrakte prozedurale [[Anweisung|Anweisungen]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;2. Kapselung von Anfang an: &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;🛡️&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;2. Kapselung von Anfang an:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Schüler lernen direkt, dass [[Daten]] (private [[Attribut|Attribute]]) und die Operationen auf diesen Daten (öffentliche [https://wiki.flbk-hamm.de/Methode#Sondierende_Methode Getter] und [[https://wiki.flbk-hamm.de/Methode#Ver%C3%A4ndernde_Methode|Setter]]) zusammengehören. Das fördert von Anfang an das grundlegende [[Objektorientierung|objektorientierte]] Prinzip der Kapselung.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Schüler lernen direkt, dass [[Daten]] (private [[Attribut|Attribute]]) und die Operationen auf diesen Daten (öffentliche [https://wiki.flbk-hamm.de/Methode#Sondierende_Methode Getter] und [[https://wiki.flbk-hamm.de/Methode#Ver%C3%A4ndernde_Methode|Setter]]) zusammengehören. Das fördert von Anfang an das grundlegende [[Objektorientierung|objektorientierte]] Prinzip der Kapselung.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;3. Vermeidung des &quot;Static-Main-Problems&quot;: &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;🚫&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;3. Vermeidung des &quot;Static-Main-Problems&quot;:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der prozedurale Start im leeren public static void main(String[] args) erzeugt eine künstliche Welt, in der alles [[static]] sein muss. Schüler tun sich später schwer zu verstehen, wann sie [[Instanz|Instanzen]] (new Objekt()) erstellen müssen und wann nicht. Beim Objekt-First-Ansatz wird die Instanziierung zum Standard.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der prozedurale Start im leeren public static void main(String[] args) erzeugt eine künstliche Welt, in der alles [[static]] sein muss. Schüler tun sich später schwer zu verstehen, wann sie [[Instanz|Instanzen]] (new Objekt()) erstellen müssen und wann nicht. Beim Objekt-First-Ansatz wird die Instanziierung zum Standard.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;4. Bessere [[Projekt]]struktur: &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;🏗️&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;4. Bessere [[Projekt]]struktur:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Ansatz erzwingt von Beginn an eine saubere Struktur, bei der Logik in thematisch getrennten [[Klasse|Klassen]] liegt. Dies bereitet optimal auf größere Berufsprojekte vor.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Ansatz erzwingt von Beginn an eine saubere Struktur, bei der Logik in thematisch getrennten [[Klasse|Klassen]] liegt. Dies bereitet optimal auf größere Berufsprojekte vor.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff:1.41:old-2070:rev-2071:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Thomas</name></author>
	</entry>
	<entry>
		<id>https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2070&amp;oldid=prev</id>
		<title>Thomas: /* Phase 2: Einführung zentraler OOP-Konzepte */</title>
		<link rel="alternate" type="text/html" href="https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2070&amp;oldid=prev"/>
		<updated>2025-09-29T12:01:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Phase 2: Einführung zentraler OOP-Konzepte&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 29. September 2025, 14:01 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l31&quot;&gt;Zeile 31:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 31:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nachdem die Grundlagen sitzen, folgen die weiterführenden [[Objektorientierung|objektorientierten]] Prinzipien:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nachdem die Grundlagen sitzen, folgen die weiterführenden [[Objektorientierung|objektorientierten]] Prinzipien:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Vererbung]] (Inheritance): Wie man Code wiederverwendet (z.B. LKW erbt von Fahrzeug).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &lt;/ins&gt;[[Vererbung]] (Inheritance): Wie man Code wiederverwendet (z.B. LKW erbt von Fahrzeug).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &lt;/ins&gt;[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https://wiki.flbk-hamm.de/Vererbung#Polymorphie &lt;/ins&gt;Polymorphie] (Polymorphism): Die Fähigkeit, dass eine Methode in verschiedenen Klassen unterschiedlich implementiert werden kann.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[&lt;/del&gt;[Polymorphie&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]&lt;/del&gt;] (Polymorphism): Die Fähigkeit, dass eine Methode in verschiedenen Klassen unterschiedlich implementiert werden kann.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &lt;/ins&gt;[[Abstract|Abstrakte]] Klassen und Interfaces: Wie man Vorgaben für das Verhalten definiert, ohne die gesamte Implementierung zu liefern.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Abstract|Abstrakte]] Klassen und Interfaces: Wie man Vorgaben für das Verhalten definiert, ohne die gesamte Implementierung zu liefern.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Durch diese Vorgehensweise lernen die Schüler Java so, wie es in der professionellen Softwareentwicklung angewendet wird. Sie schreiben von der ersten Stunde an objektorientierten Code, der leicht zu warten und zu erweitern ist.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Durch diese Vorgehensweise lernen die Schüler Java so, wie es in der professionellen Softwareentwicklung angewendet wird. Sie schreiben von der ersten Stunde an objektorientierten Code, der leicht zu warten und zu erweitern ist.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff:1.41:old-2067:rev-2070:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Thomas</name></author>
	</entry>
	<entry>
		<id>https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2067&amp;oldid=prev</id>
		<title>Thomas: Die Seite wurde neu angelegt: „== Einführung == Der Objekt-First-Ansatz ist eine didaktische Methode, die im modernen Java-Unterricht eine hohe Bedeutung hat. Anstatt mit statischen Methoden, primitiven Datentypen und Kontrollstrukturen zu beginnen, stellen man hier Objekte und Klassen von Anfang an in den Mittelpunkt. Das entspricht der wahren Natur von Objektorientierung|objektorientierte…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.flbk-hamm.de/index.php?title=Objekt-First&amp;diff=2067&amp;oldid=prev"/>
		<updated>2025-09-29T11:46:09Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „== Einführung == Der Objekt-First-Ansatz ist eine didaktische Methode, die im modernen &lt;a href=&quot;/Java&quot; title=&quot;Java&quot;&gt;Java&lt;/a&gt;-Unterricht eine hohe Bedeutung hat. Anstatt mit &lt;a href=&quot;/Static&quot; title=&quot;Static&quot;&gt;statischen&lt;/a&gt; &lt;a href=&quot;/Methode&quot; title=&quot;Methode&quot;&gt;Methoden&lt;/a&gt;, &lt;a href=&quot;/Primitiver_Datentyp&quot; title=&quot;Primitiver Datentyp&quot;&gt;primitiven Datentypen&lt;/a&gt; und &lt;a href=&quot;/Kontrollstruktur&quot; title=&quot;Kontrollstruktur&quot;&gt;Kontrollstrukturen&lt;/a&gt; zu beginnen, stellen man hier &lt;a href=&quot;/Objekt&quot; class=&quot;mw-redirect&quot; title=&quot;Objekt&quot;&gt;Objekte&lt;/a&gt; und &lt;a href=&quot;/Klasse&quot; title=&quot;Klasse&quot;&gt;Klassen&lt;/a&gt; von Anfang an in den Mittelpunkt. Das entspricht der wahren Natur von Objektorientierung|objektorientierte…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Einführung ==&lt;br /&gt;
Der Objekt-First-Ansatz ist eine didaktische Methode, die im modernen [[Java]]-Unterricht eine hohe Bedeutung hat. Anstatt mit [[static|statischen]] [[Methode|Methoden]], [[Primitiver Datentyp|primitiven Datentypen]] und [[Kontrollstruktur|Kontrollstrukturen]] zu beginnen, stellen man hier [[Objekt|Objekte]] und [[Klasse|Klassen]] von Anfang an in den Mittelpunkt. Das entspricht der wahren Natur von [[Objektorientierung|objektorientierte]] Programmiersprache wie zum Beispiel [[Java]].&lt;br /&gt;
&lt;br /&gt;
Die traditionelle Vorgehensweise (häufig als Procedural-First bezeichnet) startet oft mit der main-Methode, [[Schleife|Schleifen]] und [[Verzweigung|if-Anweisungen]]. Das hat Nachteile:&lt;br /&gt;
&lt;br /&gt;
1. Natürliches Modellieren:&lt;br /&gt;
Die reale Welt besteht aus [[Objekt|Objekten]] (Autos, Kunden, Rechnungen). Der Objekt-First-Ansatz erlaubt es uns, diese realen Konzepte sofort in [[Quellcode|Code]] abzubilden. Schüler verstehen schnell, dass ein [[Objekt]] [[Zustand]] ([[Attribut|Attribute]]) und Verhalten ([[Methode|Methoden]]) besitzt. Dies ist intuitiver als abstrakte prozedurale [[Anweisung|Anweisungen]].&lt;br /&gt;
&lt;br /&gt;
2. Kapselung von Anfang an: 🛡️&lt;br /&gt;
Schüler lernen direkt, dass [[Daten]] (private [[Attribut|Attribute]]) und die Operationen auf diesen Daten (öffentliche [https://wiki.flbk-hamm.de/Methode#Sondierende_Methode Getter] und [[https://wiki.flbk-hamm.de/Methode#Ver%C3%A4ndernde_Methode|Setter]]) zusammengehören. Das fördert von Anfang an das grundlegende [[Objektorientierung|objektorientierte]] Prinzip der Kapselung.&lt;br /&gt;
&lt;br /&gt;
3. Vermeidung des &amp;quot;Static-Main-Problems&amp;quot;: 🚫&lt;br /&gt;
Der prozedurale Start im leeren public static void main(String[] args) erzeugt eine künstliche Welt, in der alles [[static]] sein muss. Schüler tun sich später schwer zu verstehen, wann sie [[Instanz|Instanzen]] (new Objekt()) erstellen müssen und wann nicht. Beim Objekt-First-Ansatz wird die Instanziierung zum Standard.&lt;br /&gt;
&lt;br /&gt;
4. Bessere [[Projekt]]struktur: 🏗️&lt;br /&gt;
Der Ansatz erzwingt von Beginn an eine saubere Struktur, bei der Logik in thematisch getrennten [[Klasse|Klassen]] liegt. Dies bereitet optimal auf größere Berufsprojekte vor.&lt;br /&gt;
&lt;br /&gt;
Die Umsetzung: Wie man Objekt-First unterrichtet&lt;br /&gt;
Der Schlüssel liegt darin, frühzeitig mit der Modellierung und der Erstellung einfacher, aber vollständiger [[Klasse|Klassen]] zu beginnen.&lt;br /&gt;
&lt;br /&gt;
== Phase 1: Die Welt der [[Objekt|Objekte]] kennenlernen ==&lt;br /&gt;
Schritt	Fokus	Beispiel-Code (Konzept)&lt;br /&gt;
1. Konzept	[[Objekt]] vs. [[Klasse]]	Eine Klasse Auto ist der Bauplan, ein new Auto() ist das konkrete Fahrzeug.&lt;br /&gt;
2. [[Attribut|Attribute]]	[[Zustand]] ([[Daten]])	private String farbe;, private int geschwindigkeit;&lt;br /&gt;
3. [[Konstruktor]]	Objekterzeugung	Der Bauplan wird mit Leben gefüllt.&lt;br /&gt;
4. [[Methode|Methoden]]	Verhalten (Aktionen)	public void beschleunigen(int delta);&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Wichtig: Kleine Übungen verwenden, bei denen Objekte miteinander interagieren, z.B. ein Kunde, der ein Produkt kauft, oder ein Konto, von dem abgebucht wird. Die main-Methode dient hierbei nur als &amp;quot;Testumgebung&amp;quot; zur Instanziierung und zum Aufruf der Methoden.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Phase 2: Einführung zentraler OOP-Konzepte ==&lt;br /&gt;
Nachdem die Grundlagen sitzen, folgen die weiterführenden [[Objektorientierung|objektorientierten]] Prinzipien:&lt;br /&gt;
&lt;br /&gt;
[[Vererbung]] (Inheritance): Wie man Code wiederverwendet (z.B. LKW erbt von Fahrzeug).&lt;br /&gt;
&lt;br /&gt;
[[Polymorphie]] (Polymorphism): Die Fähigkeit, dass eine Methode in verschiedenen Klassen unterschiedlich implementiert werden kann.&lt;br /&gt;
&lt;br /&gt;
[[Abstract|Abstrakte]] Klassen und Interfaces: Wie man Vorgaben für das Verhalten definiert, ohne die gesamte Implementierung zu liefern.&lt;br /&gt;
&lt;br /&gt;
Durch diese Vorgehensweise lernen die Schüler Java so, wie es in der professionellen Softwareentwicklung angewendet wird. Sie schreiben von der ersten Stunde an objektorientierten Code, der leicht zu warten und zu erweitern ist.&lt;/div&gt;</summary>
		<author><name>Thomas</name></author>
	</entry>
</feed>