<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.stageing.freitagsrunde.org//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.168.23.199</id>
	<title>FreitagsrundenWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stageing.freitagsrunde.org//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.168.23.199"/>
	<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//Spezial:Beitr%C3%A4ge/192.168.23.199"/>
	<updated>2026-11-02T00:28:53Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.45.6</generator>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Softwaretechnik&amp;diff=4614</id>
		<title>Softwaretechnik</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Softwaretechnik&amp;diff=4614"/>
		<updated>2006-07-25T10:17:11Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: /* Klausuren */ broken Link auskommentiert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;protokolle&amp;quot; style=&amp;quot;float:right; width:20%; margin:10px; padding:10px; background-color:#efefef;&amp;quot;&amp;gt;&lt;br /&gt;
=== Klausuren ===&lt;br /&gt;
&amp;lt;!-- &amp;lt;div style=&amp;quot;background-color:yellow&amp;quot;&amp;gt;WS 2004/2005&lt;br /&gt;
* [http://swt.cs.tu-berlin.de/lehre/swt/klausuren/klausur-WS0405.ps Klausur]&amp;lt;/div&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
SS 2004&lt;br /&gt;
* [http://docs.freitagsrunde.org/klausuren/Softwaretechnik/klausur-SS04.ps Musterlösung]&lt;br /&gt;
&lt;br /&gt;
WS 2003/2004&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/klausur-WS0304.ps Klausur]&lt;br /&gt;
&lt;br /&gt;
SS 2003&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/klausur-SS03.ps Klausur]&lt;br /&gt;
&lt;br /&gt;
WS 2002/2003&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/klausur-WS0203.ps Klausur]&lt;br /&gt;
&lt;br /&gt;
SS 2002&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ss2002.ps.gz Klausur]&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ss02_musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
SS 2001&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ss2001.ps.gz Klausur]&lt;br /&gt;
&lt;br /&gt;
WS 2000/2001&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ws0001_musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
SS 2000&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/SWT-Basis_SS2001_Musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
WS 1999/2000&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ws9900_musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
WS 1998/1999&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ws9899.ps.gz Klausur]&lt;br /&gt;
&lt;br /&gt;
SS 1998&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ss98_musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
WS 1997/1998&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ws9798_musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
SS 1997&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ss1997.ps.gz Klausur]&lt;br /&gt;
&lt;br /&gt;
WS 1996/1997&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ws9697_musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
SS 1996&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ss96.ps.gz Klausur]&lt;br /&gt;
&lt;br /&gt;
WS 1995/1996&lt;br /&gt;
* [http://docs.freitagsrunde.org/Klausuren/Softwaretechnik/ws9596_musterloesung.ps.gz Musterlösung]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Softwaretechnik&#039;&#039;&#039; ist eine [[Basisveranstaltung]] im Fachgebiet SWT (Studiengebiet SSG).&lt;br /&gt;
&lt;br /&gt;
== Inhalt ==&lt;br /&gt;
In der Lehrveranstaltung werden Methoden und Techniken zur Softwareentwicklung behandelt, die die Grundlage für weitere Vertiefung in das Studiengebiet Softwaretechnik und Systemgestaltung bilden. Schwerpunkte sind: Anforderungsermittlung, Software-Entwurf und -Konstruktion, Spezifikationstechniken, Qualitätssicherung und Software-Architektur. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Tipps und nützliche Infos ==&lt;br /&gt;
&lt;br /&gt;
Die Vorlesung gliedert sich in drei Teile: Fusion, Object-Z und Statecharts. In jedem Bereich gibt es eine Uebungsaufgabe, wobei die Fusion-Aufgabe 50% zaehlt (und äußerst umfangreich und schreibintensiv ist)&lt;br /&gt;
&lt;br /&gt;
Literatur:&lt;br /&gt;
unwichtig, gibt diverse Unterlagen zu den einzelnen Bereichen&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.swt.cs.tu-berlin.de/lehre/swt/index.html/ Softwaretechnik (jeweils aktuelles Semester)]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Persönliche Kommentare ==&lt;br /&gt;
: (Nicht unterschriebene Kommentare werden gelöscht!)&lt;br /&gt;
&lt;br /&gt;
* WS04/05 (Veranstalter: Stephan Herrmann): Man sollte es sich wirklich mehrfach ueberlegen, ob man diese Veranstaltung belegt. Positiv ist lediglich, dass es ein A-Kurs ist und dass bei der Klausur 35% zum Bestehen reichen. Alles andere ist sehr negativ. Die Tutoren wirken extrem unmotiviert und korrigieren ziemlich willkuerlich.&lt;br /&gt;
&lt;br /&gt;
Die Vorlesung muss man nicht besuchen. Der Dozent labert ewig lange bei voellig unwichtigen Sachen rum und zieht dann die interessanten 10 Folien am Schluss in maximal 5 Minuten durch...&lt;br /&gt;
&lt;br /&gt;
Totaler Mist. NICHT BELEGEN! FelixB&lt;br /&gt;
&lt;br /&gt;
* Völlig sinnloser Spezifikationsmarathon. Nur belegen, wenn man Vertiefungsveranstaltungen bei SWT besuchen will/muss. Wenn schon, dann im SS besuchen, wenn Jähnichen die VL macht. --[[Benutzer:Felix|Felix]] 12:14, 12. Aug 2005 (CEST)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Lehrveranstaltungen]]&lt;br /&gt;
[[Kategorie:Fakultäts-ABC]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs2006/Umfrage&amp;diff=7851</id>
		<title>Javakurs2006/Umfrage</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs2006/Umfrage&amp;diff=7851"/>
		<updated>2006-07-25T09:46:12Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: /* Fragen für die Javakurs-Teilnehmer */ Alternative Formulierung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Fragen für die Javakurs-Teilnehmer ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Konntet Ihr anderen Teilnehmern von Info 2 mit eurem Wissen helfen?&lt;br /&gt;
* Konntet Ihr der Veranstaltung besser folgen als Mitstudenten, die  nicht am Kurs teilgenommen haben?&lt;br /&gt;
* Hat euch der Kurs beim Verstehen und Lösen der Hausaufgaben geholfen?&lt;br /&gt;
* Was ist eure allgemeine Meinung zu dem Kurs?&lt;br /&gt;
** Würdet ihr ihn noch einmal besuchen?&lt;br /&gt;
** Würdet ihr ihn weiterempfehlen?&lt;br /&gt;
&lt;br /&gt;
Welche Art, den Javakurs zu organisieren, hätte dir mehr gebracht:&lt;br /&gt;
* Jeden Tag zwei Vorträge und dazugehörige Aufgaben.&lt;br /&gt;
* Vorträge und Aufgaben sind voneinander entkoppelt, d.h. man hat so lange für die Aufgaben Zeit, wie man braucht.&lt;br /&gt;
&lt;br /&gt;
* Wie war die Stoffmenge in der Vorlesung?&lt;br /&gt;
** Zu wenig?&lt;br /&gt;
** Genau richtig?&lt;br /&gt;
** Zu viel?&lt;br /&gt;
&lt;br /&gt;
* Wie war die Stoffmenge in der Übung?&lt;br /&gt;
** Sollten wir eher mehr Stoff bringen? (Geplant war noch mehr)&lt;br /&gt;
*** Sollte mehr Stoff vorgetragen werden als geübt wird?&lt;br /&gt;
** War die Stoffmenge ausreichend?&lt;br /&gt;
** Eher zu viel und wir hätten die Grundlagen noch genauer üben sollen?&lt;br /&gt;
&lt;br /&gt;
* Welchen Stoff habt ihr für Info 2 vermisst?&lt;br /&gt;
&lt;br /&gt;
* An was könnt ihr euch von den Vorträgen noch erinnern?&lt;br /&gt;
&lt;br /&gt;
* Hättet ihr Lust beim nächsten mal als Tutor mitzumachen?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternative Formulierung ==&lt;br /&gt;
Vielleicht eher mit Fragen die auf einer Punkteskala von &amp;quot;stimmt&amp;quot; bis &amp;quot;stimmt nicht&amp;quot; zu bewerten sind?&lt;br /&gt;
&lt;br /&gt;
Wie hilfreich war der Kurs für dich?&lt;br /&gt;
* Ich konnte anderen Teilnehmern von Inf02 mit meinem im Kurs erworbenen Wissen helfen.&lt;br /&gt;
* Ich konnte der Veranstaltung Info2 besser folgen als Mitstudenten, die  nicht am Kurs teilgenommen haben.&lt;br /&gt;
* Der Kurs hat mir beim Verstehen der Hausaufgaben in Info2 geholfen.&lt;br /&gt;
* Ich würde den Kurs noch einmal besuchen. (genauer...!)&lt;br /&gt;
* Ich kann den Kurs weiterempfehlen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wie war die Stoffmenge in der Vorlesung?&lt;br /&gt;
* In der Vorlesung wurde zu wenig Stoff durchgenommen.&lt;br /&gt;
* In der Vorlesung wurde zu viel Stoff durchgenommen.&lt;br /&gt;
* Ich hätte gerne mehr Übungen und dafür weniger Vorlesungen gehabt.&lt;br /&gt;
* Es hätte intensiver auf Grundlagen eingegangen werden sollen.&lt;br /&gt;
* Es hätten mehr weiterführende Themen behandelt werden sollen.&lt;br /&gt;
&lt;br /&gt;
* Ich hätte Lust beim nächsten Javakurs als Tutor mitzumachen.&lt;br /&gt;
* (Freitext) Welchen Stoff für Info2 hast du im Kurs vermisst?&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Beamer_f%C3%BCr_studentische_Projekte&amp;diff=7786</id>
		<title>Beamer für studentische Projekte</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Beamer_f%C3%BCr_studentische_Projekte&amp;diff=7786"/>
		<updated>2006-06-16T12:09:34Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Versicherung? ===&lt;br /&gt;
&lt;br /&gt;
=== Lampenwechsel? ===&lt;br /&gt;
Geld beim Ausleihen verlangen um Lampenwechsel zu finanzieren?&lt;br /&gt;
&lt;br /&gt;
=== Ausleihverfahren ===&lt;br /&gt;
&lt;br /&gt;
=== Benutzungsregeln ===&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Beamer_f%C3%BCr_studentische_Projekte&amp;diff=7785</id>
		<title>Beamer für studentische Projekte</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Beamer_f%C3%BCr_studentische_Projekte&amp;diff=7785"/>
		<updated>2006-06-16T12:07:06Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Versicherung? ===&lt;br /&gt;
&lt;br /&gt;
=== Lampenwechsel? ===&lt;br /&gt;
&lt;br /&gt;
=== Ausleihverfahren? ===&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7663</id>
		<title>Umfrage Fachschaft</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7663"/>
		<updated>2006-06-02T13:04:37Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Mitglieder ===&lt;br /&gt;
Robert L.(robert(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
Christopher(christopher(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
Felix F.(felixf(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Fragen hier Sammeln&lt;br /&gt;
&lt;br /&gt;
*Christopher bastelt ein kleines Skript als Online- Umfrage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Verteilung der Zettel ===&lt;br /&gt;
# Über Tutoren die Zezzel am Anfang des Tuts ausgeben und am ende wieder einsammeln. Dann irgendwie zur Freitagsrunde (Briefkasten / persönlich)&lt;br /&gt;
#:&lt;br /&gt;
# Idee um Studenten im Hauptstudium erreicht?&lt;br /&gt;
#* In Vorlesungen/ Seminare gehen -&amp;gt; viel Arbeit, wer macht das?&lt;br /&gt;
#* verlinkung der online-Umfrage auf der Startseite des Wikis.&lt;br /&gt;
#* Es gäbe ev. die Möglichkeit die Umfrage auf den Webseiten der Fachbereiche unter &amp;quot;aktualles&amp;quot; zu verlinken. Dann wird die Sache allerdings eher größer. -&amp;gt; Später nochmal drüber nachdenken.&lt;br /&gt;
#* Fragen &amp;quot;was findest du gut an der Tu, was schlecht&amp;quot; in den Fragebogen aufnehmen. Heiß den Tipp geben das wir diese Umfrage machen. Sollte in seinem Interesse liegen und vermutlich macht er dann ein wenig Werbung in seinen Veranstaltungen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Auswertung ===&lt;br /&gt;
Tabelle welche ähnlichen Antworten es wie oft gab und/oder kurzer text was dem Auswertenden bei der Auswertung aufgefallen ist.&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7662</id>
		<title>Umfrage Fachschaft</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7662"/>
		<updated>2006-06-02T13:02:00Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: /* Mitglieder */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Mitglieder ===&lt;br /&gt;
Robert L.(robert(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
Christopher(christopher(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
Felix F.(felixf(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Fragen hier Sammeln&lt;br /&gt;
&lt;br /&gt;
*Christopher bastelt ein kleines Skript als Online- Umfrage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Verteilung der Zettel ===&lt;br /&gt;
# Über Tutoren die Zezzel am Anfang des Tuts ausgeben und am ende wieder einsammeln. Dann irgendwie zur Freitagsrunde (Briefkasten / persönlich)&lt;br /&gt;
#:&lt;br /&gt;
# Idee um Studenten im Hauptstudium erreicht?&lt;br /&gt;
#* In Vorlesungen/ Seminare gehen -&amp;gt; viel Arbeit, wer macht das?&lt;br /&gt;
#* verlinkung der online-Umfrage auf der Startseite des Wikis.&lt;br /&gt;
#* Es gäbe ev. die Möglichkeit die Umfrage auf den Webseiten der Fachbereiche unter &amp;quot;aktualles&amp;quot; zu verlinken. Dann wird die Sache allerdings eher größer. -&amp;gt; Später nochmal drüber nachdenken.&lt;br /&gt;
#* Fragen &amp;quot;was findest du gut an der Tu, was schlecht&amp;quot; in den Fragebogen aufnehmen. Heiß den Tipp geben das wir diese Umfrage machen. Sollte in seinem Interesse liegen und vermutlich macht er dann ein wenig Werbung in seinen Veranstaltungen.&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7661</id>
		<title>Umfrage Fachschaft</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7661"/>
		<updated>2006-06-02T12:47:58Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Mitglieder ===&lt;br /&gt;
Robert L.(robert(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
Christopher(christopher(a)freitagsrunde.org)&lt;br /&gt;
&lt;br /&gt;
Felix F.(felixf(a)freitagsrunde.org)&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7660</id>
		<title>Umfrage Fachschaft</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Umfrage_Fachschaft&amp;diff=7660"/>
		<updated>2006-06-02T12:45:27Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Member:  Robert L.(robert@freitagsrunde.org), Christopher(christopher@freitagsrunde.org), Felix F.(felixf@freitagsrunde.org)&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Martin_H%C3%A4cker/Java_Kurs/Tag_1&amp;diff=6712</id>
		<title>Martin Häcker/Java Kurs/Tag 1</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Martin_H%C3%A4cker/Java_Kurs/Tag_1&amp;diff=6712"/>
		<updated>2006-03-14T17:52:44Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: /* Wie fangen wir Java an */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Benutzer:Martin_Häcker/Java_Kurs | &amp;lt;- Zurück zur Übersicht]]&lt;br /&gt;
&lt;br /&gt;
= LE 1: Hello, World! =&lt;br /&gt;
&#039;&#039;&#039;Vortragende:&#039;&#039;&#039; Robert Lubkoll, Felix Schwarz&lt;br /&gt;
&lt;br /&gt;
== Organisatorisches ==&lt;br /&gt;
* Was Passiert&lt;br /&gt;
* Wann passiert was&lt;br /&gt;
* Wie passierts&lt;br /&gt;
* Vorstellung&lt;br /&gt;
* Was ist das genau&lt;br /&gt;
* Wer sind wir: Freiwillig, Umsonst&lt;br /&gt;
* Ziel des Kurses&lt;br /&gt;
* Was sie am Ende können sollen&lt;br /&gt;
* Gruppeneinteilung&lt;br /&gt;
** am Ende der ersten Vorlesung&lt;br /&gt;
** Vorher per e-mail&lt;br /&gt;
&#039;&#039;&#039;Jemand vom Rechnerbetrieb soll bitte da sein, damit wir Login-Probleme lösen können&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Inhalt (Vorgehen, Beispiele, Ideen) ==&lt;br /&gt;
=== Methodik ===&lt;br /&gt;
&lt;br /&gt;
Was ist &#039;&#039;&#039;Programmieren?&#039;&#039;&#039;&lt;br /&gt;
* imperativ (prozedural) vs. funktionales Programmieren&lt;br /&gt;
** relation problem &amp;lt;-&amp;gt; lösung / kochrezept&lt;br /&gt;
* Zustandsmaschine&lt;br /&gt;
* Einführung nach [http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-9.html#%25_chap_1 SICP Kapitel 1] (bis &amp;quot;Programming in Lisp&amp;quot;)&lt;br /&gt;
** &#039;&#039;Damit ist die Philosophie von Programmieren gemeint&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Drei Dinge, die wichtig sind für Programmierer (Das soll sich durch den Kurs durchziehen als roter Faden für die Sprachfeatures die wir einführen):&lt;br /&gt;
* Primitive Ausdrücke&lt;br /&gt;
* Kombinationsmöglichkeiten&lt;br /&gt;
* Abstraktionsmöglichkeiten&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
==== Wie fangen wir Java an ====&lt;br /&gt;
* Live vorführen (Screenshots oder zur Console wechseln)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Hello world&lt;br /&gt;
grobe Struktur der &amp;quot;Umgebung&amp;quot;: keine .sig/.impl Datei sondern nur eine .java&lt;br /&gt;
&lt;br /&gt;
system.out.println();&lt;br /&gt;
&lt;br /&gt;
*compilieren:&lt;br /&gt;
Was passiert da, wieso erst Compilieren, dann ausführen?&lt;br /&gt;
javac&lt;br /&gt;
java&lt;br /&gt;
&lt;br /&gt;
was für Fehler können auftreten?&lt;br /&gt;
.class&lt;br /&gt;
Klasse heißt anders als Datei &lt;br /&gt;
Compiler falsch aufgerufen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Variablentyp (int) -&amp;gt; Syntax der Deklaration&lt;br /&gt;
Wie darf ein Variablenname aussehen? (Buchstaben,Zahlen, _ )&lt;br /&gt;
* Zuweisung -&amp;gt; Syntax&lt;br /&gt;
man kann Zahlen &amp;gt; 32 direkt eingeben !&lt;br /&gt;
&lt;br /&gt;
* Werte und operatoren +,*,- -&amp;gt; Syntax&lt;br /&gt;
 int zahl1 = 7;&lt;br /&gt;
 int zahl2 = 42;&lt;br /&gt;
 int ergebnis = zahl1 + zahl2;&lt;br /&gt;
 System.out.println(ergebnis);&lt;br /&gt;
&lt;br /&gt;
Zuweisung nach Deklaration.&lt;br /&gt;
Variableninhalte ändern sich durch Zuweisung. Zeigen mit sysout.&lt;br /&gt;
&lt;br /&gt;
Selbse GANZ kurz nochmal mit anderen Operatoren.&lt;br /&gt;
&lt;br /&gt;
* String: Vormerken, das man hier später klar macht das das auch Objekte und daher Referenzen &lt;br /&gt;
&lt;br /&gt;
sind - erstmal ists aber egal, da sie eh Immutable sind&lt;br /&gt;
&lt;br /&gt;
String deklarieren mit &amp;quot;bla&amp;quot; , kein Anführungszeichen im &amp;quot;...&amp;quot;&lt;br /&gt;
&lt;br /&gt;
verknüpfen von Strings (+)&lt;br /&gt;
&lt;br /&gt;
komplizierteres Sysout an selbem Programm&lt;br /&gt;
&lt;br /&gt;
* boolean (true/false)&lt;br /&gt;
&lt;br /&gt;
* if -&amp;gt; Syntax&lt;br /&gt;
Minniprogramm zur Fallunterscheidung&lt;br /&gt;
 else&lt;br /&gt;
erweitertes Minniprogramm zur Fallunterscheidung&lt;br /&gt;
* &amp;lt;, &amp;gt;, ==, &amp;lt;=, &amp;gt;= Operatoren die boolean zurückliefern&lt;br /&gt;
if mit Operatoren und anderen Variablen&lt;br /&gt;
* Kompliziertere Bedingungen (&amp;amp;&amp;amp;, ||, !)&lt;br /&gt;
&lt;br /&gt;
*(double) mit Punkt als Trennzeichen.&lt;br /&gt;
&lt;br /&gt;
*Division mit / und das bei int gerundet wird&lt;br /&gt;
&lt;br /&gt;
*Semikolons, Kommentare&lt;br /&gt;
&lt;br /&gt;
==== Vorführung ====&lt;br /&gt;
&#039;&#039;&#039;Aufbau eines Java-Programms&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel bringen und daran erklären, was primitive Ausdrücke, Kombinationen und Abstraktionsmöglichkeiten sind. Das Programm dabei langsam entwickeln und dabei vorführen. Ziel ist, das am schluss ein komplettes Beispiel da steht - also alles verwendet wird was wir erklärt haben, es aber trotzdem so einfach bleibt das es ohne viel Fehlerpotenzial später nachgemacht werden kann.&lt;br /&gt;
 class Test {&lt;br /&gt;
 	static void print(double aNumber) {&lt;br /&gt;
 		System.out.println(&amp;quot;&amp;gt; &amp;quot; + aNumber);&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 	public static void main(String [] arguments) {&lt;br /&gt;
 		print(3 * 4);&lt;br /&gt;
 		print(7 + 23 * 8 - 3);&lt;br /&gt;
 		// ....&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Methodik ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Sauberes Programmieren&#039;&#039;&#039;&lt;br /&gt;
* Variablen und Identifier-Namen&lt;br /&gt;
** Variablendeklaration - Namen vergeben für Dinge, die man berechnet hat!&lt;br /&gt;
** Lokale Namen und wieso: (vielleicht?) [http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-10.html#%25_sec_1.1.8 scrollen bis &#039;&#039;&#039;Local Names&#039;&#039;&#039;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Fehlermeldungen lesen und verstehen&#039;&#039;&#039;&lt;br /&gt;
* Klammer vergessen&lt;br /&gt;
* Semikolon vergessen&lt;br /&gt;
* Klasse heißt anders als Datei&lt;br /&gt;
* Compiler falsch aufgerufen&lt;br /&gt;
&lt;br /&gt;
== Übungsaufgaben ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;cd&#039;&#039; üben&lt;br /&gt;
* Hello World eintippen (kate, gedit, nano, ..)&lt;br /&gt;
* javac / java benutzen&lt;br /&gt;
* Ergebnisse sehen&lt;br /&gt;
* Fehler einbauen, Fehler finden (laufzeit/compilezeit)&lt;br /&gt;
* Einige Expressions angeben und die Teilnehmer sollen feststellen, was die ausgeben/berechnen würden&lt;br /&gt;
* Das gleiche dann nochmal mit if/else&lt;br /&gt;
* Einen mathematischen Ausdruck in Java übersetzen&lt;br /&gt;
* [http://www.cs.princeton.edu/introcs/11hello/ Beispiele für Anfängeraufgaben]&lt;br /&gt;
&lt;br /&gt;
= LE 2: Standardkonstrukte in Java (Robert und Sven) =&lt;br /&gt;
Übungs-Aufgaben inklusive Vorgaben und Musterlösung [http://user.cs.tu-berlin.de/~svens/files/le2_ue.tar.gz LE2UEB]&lt;br /&gt;
&lt;br /&gt;
updated: freitag 2006-03-10 19:05&lt;br /&gt;
&lt;br /&gt;
letzte änderungen: aufgabe 0 mit einigen methoden die sie fixen müssen, bzw. analyisieren sollen.&lt;br /&gt;
&lt;br /&gt;
TODO: LE1 aufgabe benutzen. (delayed)&lt;br /&gt;
&lt;br /&gt;
== Inhalt ==&lt;br /&gt;
=== Methodik ===&lt;br /&gt;
* Wichtigkeit, dass man Programme in verständliche und sinnvolle Teile unterteilt: &lt;br /&gt;
** dadurch verbesserte test-möglichkeiten (sprich methoden sind auch eine art von modul)&lt;br /&gt;
** verbesserte verständlichkeit([http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-10.html#%25_sec_1.1.8 Procedures as Black-Box Abstractions])&lt;br /&gt;
* Quelltextverkürzung durch schleifen&lt;br /&gt;
** nicht minimierung auf kosten der verständlichkeit&lt;br /&gt;
** was ist aufgabe des entwicklers?&lt;br /&gt;
** und was ist aufgabe des compilers? (vllt. auch nicht?)&lt;br /&gt;
** evtl. ist eine eigene methode sinnvoller/verständlicher?&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
* &#039;&#039;&#039;Typen&#039;&#039;&#039;&lt;br /&gt;
** Arrays&lt;br /&gt;
*** warum, wie und probleme&lt;br /&gt;
** void&lt;br /&gt;
** char?&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Methoden&#039;&#039;&#039;:&lt;br /&gt;
** Namend&lt;br /&gt;
** Aufruf&lt;br /&gt;
** Parameter und Rückgabe -&amp;gt; Call by Value&lt;br /&gt;
** main&lt;br /&gt;
** return&lt;br /&gt;
** Nachtrag Datenstrukturen: void&lt;br /&gt;
** Beispiel: System.out.println()&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Blöcke&#039;&#039;&#039;&lt;br /&gt;
** if-else (das ist doch schon in LE1 enthalten!)&lt;br /&gt;
** while&lt;br /&gt;
*** Formulieren von Bedingungen&lt;br /&gt;
*** Schleife als zweite Lösung für duplikation von Code&lt;br /&gt;
*** Diskussion Schleife &amp;lt;-&amp;gt; Rekursion&lt;br /&gt;
&lt;br /&gt;
* Anwendung von Schleifen&lt;br /&gt;
* Rekursion &amp;lt;-&amp;gt; Schleifen (Beispiel)&lt;br /&gt;
* Warum/wann Schleifen?&lt;br /&gt;
** als Alternative zu Akkumulator Parametern (Vergleich zu OPAL)&lt;br /&gt;
** wenn die Anzahl der Durchläufe nicht konstant ist&lt;br /&gt;
** for schleife, wann und wozu, einfache beispiele: for(int i = 0; i &amp;lt; 3; i++)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Gute Namen&#039;&#039;&#039;&lt;br /&gt;
** Abstrakter Gedanke: Für den Computer ists wurscht, wie man das was man meint aufschreibt. Wir Menschen dagegen lassen und leicht verwirren&lt;br /&gt;
** abwägen zwischen&lt;br /&gt;
*** aussagekraft des namens&lt;br /&gt;
*** häufigkeit im code&lt;br /&gt;
*** kommentar zu variable(nnamen)&lt;br /&gt;
*** länge des namens&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Testen&#039;&#039;&#039;&lt;br /&gt;
* was ist testen?&lt;br /&gt;
** überprüfung von einigen randwerten =&amp;gt; nachdenken ist erforderlich um interessante fälle zu finden&lt;br /&gt;
** testen ist nicht verifizieren&lt;br /&gt;
* wie in java?&lt;br /&gt;
** System.out.println(..);&lt;br /&gt;
** auskommentieren und schrittweises testen&lt;br /&gt;
* was wird getestet?&lt;br /&gt;
** ausgabe von arrays komplex&lt;br /&gt;
** ausgabe von werten mit text verknüpfen&lt;br /&gt;
** Variablen haben unterschiedliche Werte während das Program läuft!&lt;br /&gt;
&lt;br /&gt;
assert-Methode selber schreiben -&amp;gt; Später! (WANN?)&lt;br /&gt;
&lt;br /&gt;
== Übungsaufgaben ==&lt;br /&gt;
&lt;br /&gt;
* Methoden definieren, die bestimmte Eigenschaften haben&lt;br /&gt;
* Beispiele dann Abtippen und ausprobieren&lt;br /&gt;
* Sie sollen Nachfragen, wenn sie was anderes hatten (oder sowas)&lt;br /&gt;
* Verschiedene Eingabewerte&lt;br /&gt;
* erste Endlosschleife&lt;br /&gt;
* Fehler für die eingeführten elemente&lt;br /&gt;
&lt;br /&gt;
[[Benutzer:Martin_Häcker/Java_Kurs | &amp;lt;- Zurück zur Übersicht]]&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Martin_H%C3%A4cker/Java_Kurs/Tag_2&amp;diff=6759</id>
		<title>Martin Häcker/Java Kurs/Tag 2</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Martin_H%C3%A4cker/Java_Kurs/Tag_2&amp;diff=6759"/>
		<updated>2006-03-10T15:18:00Z</updated>

		<summary type="html">&lt;p&gt;192.168.23.199: /* Übungsaufgaben */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Benutzer:Martin_Häcker/Java_Kurs | &amp;lt;- Zurück zur Übersicht]]&lt;br /&gt;
&lt;br /&gt;
= LE 3: Verfeinerung Java und Klassenbibliothek =&lt;br /&gt;
&#039;&#039;&#039;Vortragende:&#039;&#039;&#039; Martin, Felix&lt;br /&gt;
== Inhalt ==&lt;br /&gt;
&lt;br /&gt;
=== Java / Methodik ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Modularisierung und Strukturierung&#039;&#039;&#039; -- auf allen Ebenen&lt;br /&gt;
** Klassen (als Strukturen)&lt;br /&gt;
** Methoden-Kapselung: &#039;&#039;&#039;Methoden-Nachtrag&#039;&#039;&#039;&lt;br /&gt;
*** Methoden als Abstraktionsmöglichkeiten -&amp;gt; verstecken von methoden [http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%25_toc_%25_sec_Temp_43] Bringts das an der stelle?&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Testen&#039;&#039;&#039;&lt;br /&gt;
** eigene assert-Funktion&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Objektorientierung&#039;&#039;&#039; (Erklärungsansatz)&lt;br /&gt;
* Objekt, Klasse erklären als: &amp;quot;Klasse&amp;quot; Mensch&lt;br /&gt;
** davon dann klonen mit bestimmten Modifikationen (augenfarbe, größe, name....)&lt;br /&gt;
** das wäre dann klasse, objekte und konstruktoraufruf&lt;br /&gt;
* Objekte / Klassen erklären als&lt;br /&gt;
** Platonische Ideen (Pferd)&lt;br /&gt;
** Tatsächliches Ding (Bruno auf dem ich jeden Dienstag in Hellersdorf reite)&lt;br /&gt;
* Objekte als Daten mit &#039;&#039;Schutzschicht&#039;&#039; Methoden aussen herum&lt;br /&gt;
** Klassen als solches erst später (quasi erst prototyp und dann klassen erklären)&lt;br /&gt;
* Ganz anderer Ansatz: Erklären über Einheiten die sich über Nachrichten gegenseitig verständigen&lt;br /&gt;
* Äquivalenz zu Funktionaler Programmierung aufmachen&lt;br /&gt;
** Constructor: Funktion die Parameter bekommt und eine Funktion zurückgibt die diese verkapselt&lt;br /&gt;
** Methoden: diese Funktion kann mit dem Namen verschiedener Methoden aufgerufen werden und wird, indem es diese ausführt, zum Objekt&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Probleme beim Erklären&#039;&#039;&#039;&lt;br /&gt;
* this, woher kommt das und wie verwendet man es!&lt;br /&gt;
&lt;br /&gt;
== Übungsaufgaben ==&lt;br /&gt;
&lt;br /&gt;
* Selbst Klassen schreiben:&lt;br /&gt;
&lt;br /&gt;
Ziel: Kleine Studentendatenbank in der Studenten eingefügt und gesucht werden können. &lt;br /&gt;
Advanced: mit löschen&lt;br /&gt;
Idee: &amp;quot;Statistik&amp;quot; : Anzahl der Studenten, durchschnittliches Alter, bla&lt;br /&gt;
&lt;br /&gt;
1.: &lt;br /&gt;
Schreibe eine Klasse die informationen über einen Studenten speichert (....)&lt;br /&gt;
Erzeuge ein Objekt dieser Klasse, schreibe einen Wert in eine ihrer Variablen, lese ihn anschließend wieder aus und gib ihn auf dem Bildschirm aus.&lt;br /&gt;
&lt;br /&gt;
2.: &lt;br /&gt;
schreibe einen Konstructor für die Klasse Student mit welchem die Variablen des erzeugten Objektes gleich mit Werten gefüllt werden. Erzeuge mit hilfe dieses Constructors ein Objekt, lies einen seiner Werte aus und gib ihn auf dem Bildschirm aus.&lt;br /&gt;
&lt;br /&gt;
3:&lt;br /&gt;
Schreibe eine Funktion &amp;quot;PrintMe&amp;quot; die die Daten des Studentenobkektes in der Console ausgibt und teste diese.&lt;br /&gt;
&lt;br /&gt;
4:&lt;br /&gt;
Lege ein Array mit 100 Studentenobjekten an welche verschiedene Matrikelnummern haben und gib alle auf dem Bildschirm aus.&lt;br /&gt;
&lt;br /&gt;
5:&lt;br /&gt;
Verlagere das Array in eine neue Klasse StudentenDatenbank und schreibe für diese die Methoden StudentHinzufuegen und PrintMe.&lt;br /&gt;
&lt;br /&gt;
6:&lt;br /&gt;
....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(private / public ?)&lt;br /&gt;
&lt;br /&gt;
= LE 4: Wir sind alle nur Objekte =&lt;br /&gt;
&#039;&#039;&#039;Vortragende:&#039;&#039;&#039; Arthur, Martin&lt;br /&gt;
&lt;br /&gt;
== Inhalt ==&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Modularisierung in Java: Klassen und Objekte&#039;&#039;&#039;&lt;br /&gt;
** Instanziierung (auch Erklärung Mehrdeutigkeit von &amp;quot;Objekt&amp;quot; für Klasse oder Instanz)&lt;br /&gt;
** Referenzen (Pointer)&lt;br /&gt;
** insb: Referenzen sind nicht Kopien&lt;br /&gt;
** Overloading  / Polymorphie&lt;br /&gt;
*** Standardmethoden: toString, equals, hash, compare&lt;br /&gt;
** Type Casting einfacher Basistypen?&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Objekte vertieft&#039;&#039;&#039;: als Ansammlung von Daten mit Methoden dazu&lt;br /&gt;
** Konstruktoren&lt;br /&gt;
** um innendrinn auswechseln zu können&lt;br /&gt;
** &#039;&#039;static&#039;&#039;&lt;br /&gt;
** Static nicht static: [http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%25_toc_%25_sec_3.1.2 Benefits of Local State]&lt;br /&gt;
** &#039;&#039;final&#039;&#039;&lt;br /&gt;
** &#039;&#039;null&#039;&#039;, &#039;&#039;new&#039;&#039;&lt;br /&gt;
** &#039;&#039;this&#039;&#039;&lt;br /&gt;
** static / instanz -&amp;gt; Ebenen modell (?)&lt;br /&gt;
&lt;br /&gt;
* Java-API: Konzept &#039;&#039;&#039;Klassenbibliothek&#039;&#039;&#039;&lt;br /&gt;
** Javadocs finden, lesen&lt;br /&gt;
* JavaDoc selber schreiben und verwenden -&amp;gt; http://www.javadocs.org&lt;br /&gt;
* Input/Output (Streams, usw.) &amp;lt;-- großer Block&lt;br /&gt;
** List, ArrayList, InputReader, BufferedReader, Scanner&lt;br /&gt;
** Collections&lt;br /&gt;
&lt;br /&gt;
== Übungsaufgaben ==&lt;br /&gt;
* meinPferd = deinPferd;&lt;br /&gt;
* Klassen benutzen:&lt;br /&gt;
** Input/Output üben&lt;br /&gt;
** Viele andere Klassen aus der Java-API finden und nutzen&lt;br /&gt;
** Praktische Vorgehensweise, Anleitung zum Selbstlernen, nicht so viel Vorlesung dazu&lt;br /&gt;
&lt;br /&gt;
* UtilityObjekt mit readFile(aFilename) und getUserInput(aPrompt) [http://www.cs.princeton.edu/introcs/22inout/In.java.html sowas sollte rauskommen!]&lt;br /&gt;
&lt;br /&gt;
* Menü Objekt, das sich leicht adaptieren lässt?&lt;br /&gt;
* Apfelbaum&lt;br /&gt;
 while (Apfelbaum.hatNochAepfel) {&lt;br /&gt;
        Apfel meinApfel = Apfelbaum.getApfel(); // Apfel pflücken&lt;br /&gt;
        ich.esse(meinApfel);&lt;br /&gt;
 }&lt;br /&gt;
*  Collections, Polymorphie (Apfel mit Wurm....)&lt;br /&gt;
&lt;br /&gt;
[[Benutzer:Martin_Häcker/Java_Kurs | &amp;lt;- Zurück zur Übersicht]]&lt;/div&gt;</summary>
		<author><name>192.168.23.199</name></author>
	</entry>
</feed>