Deutsche Version der Folien. Einführung in die Programmierung. Wähle Deine Sprache. Sprache. Ziele dieses Kurses. Mitwirkende am Unterricht

Ähnliche Dokumente
Einführung in die Programmierung. Deutsche Version der Folien. Sprache. Bertrand Meyer

Deutsch Version der Folien. Programmierung im Grossen. Bertrand Meyer. Ziele der Vorlesung. Wähle deine Sprache. Themen.

Informatik-I. Einführung in das Programmieren Technische Grundlagen der Informatik

Einführung in die Programmierung

Coma I. Einleitung. Computer und Algorithmen. Programmiersprachen. Algorithmen versus Programmiersprachen. Literaturhinweise

JavaScript kinderleicht!

Infovorkurs, Teil III: Maschinenabstraktion & Ausblick

LINUX Schulung. FrauenComputerZentrum Berlin. Jutta Horstmann, Mai 2006

Praktische Informatik 1

Kontakt. Programmierkurs. Webseite. Ziel des Kurses

Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung

Programmiertechnik. Prof. Dr. Oliver Haase Raum G124 Tel: 07531/ Oliver Haase Hochschule Konstanz 1

Übungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11

EINLEITUNG KAPITEL1 HARDWAREEINSTELLUNG

Institut für Telematik Universität zu Lübeck. Programmieren. Kapitel 0: Organisatorisches. Wintersemester 2008/2009. Prof. Dr.

Staatlich geprüfter EDV-Führerschein

Fragebogen zum Grundkurs Einsatz von Medien und ICT in der Schule

Programmieren was ist das genau?

Ein kleines Computer-Lexikon

Einführung in Betriebssysteme

Informatik 1 Tutorial

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

1 Einleitung. 1.1 Flash? Was ist das überhaupt? ActionScript

1 Computer- Chinesisch

I. Einführung. 1. Ziel und Motivation. Ingenieur, Programmieren?? Ingenieur, Programmieren?? Technische Informatik für Ingenieure (TIfI) WS 2005/2006

Informatik I. Vorlesung an der Universität Bonn im Wintersemester 2001/02. Prof. Dr. Rainer Manthey Prof. Dr. Rainer Manthey Informatik I 1

Einführung in die Programmierung

Jürg Gutknecht, SI und ETH Zürich, April 2015

FB Informatik Prof. Dr. R.Nitsch. Programmieren 1. Reiner Nitsch 06151/ Homepage: Raum: D14/0.

Persona-SVS e-sync GUI/Client Installation

MIT WISSEN ZUR HÖCHSTFORM. Anleitung für Anwender. Mainfranken-Campus. Die Internet-Kommunikationsplattform für Teilnehmer und Dozenten

iq AirPort mit ipod/ipad Bedienungsanleitung

Die Käfer lernen dazu...

Vorlesung: von Montag, , bis Mittwoch, , Uhr. Emil-Figge-Straße 50, HS 1, Campus Nord Hörsaalgbäude I, Hörsaal 6, Campus Süd

Installationsanleitung. Ab Version

SF-RB- BackUp Benutzerhandbuch Das Datensicherungssystem zu SF-RB

1. Java Grundbegriffe

3 Berechnungen und Variablen

001 Gibt es einen roten Faden, den man aus der Beobachtung der letzten Jahrzehnte aus der Open Source Kultur ableiten kann?

Informatik II Übung 1 Gruppe 7

Vorwort. Hello World (2. Auflage)

Im Folgenden erhalten Sie eine kurze Beschreibung unseres Unternehmens sowie unsere aktuellen Praktikumangebote.

Neuheiten PROfirst CAD Version 6

Checkliste Systemvoraussetzungen. Systemvoraussetzungen für den Datenbank-Server von MKS Goliath

EXPANDIT. ExpandIT Client Control Kurzanleitung. utilities. be prepared speed up go mobile. Stand

Technische Voraussetzungen

Einführung in C++ Oliver Rheinbach. Büro T03 R03 D53 Tel

Novo Interactive Tools Installationsanleitung

8. Softwareentwicklung

Software-Engineering Einführung

RECUVA der Retter in der Not. erstellt für PC-Club und PC-Kurs unter Verwendung von Textmaterial aus dem Internet 1

Installationsanleitung für das Touch Display: S170E1-01 LCD A170E1-T3 ChiMei - egalaxy

Kurse. Interessenten m i t PC- Kenntnisse. Interessenten o h n e PC- Kenntnisse. Praxis. Internet von A - Z. Praxis. WORD * Grundlagen.

Technische Voraussetzungen

Informatik I Tutorial

Schnellanleitung (Version für Microsoft Windows)

Guideline für Connect Einsteiger

ISA Server Best Practice Analyzer

Hinweise zu den Video/Audiobooks. Hinweise zu den Live-Online- Vorlesungen

Programmieren I. Administratives / Java Installation. Thomas Vetter, Brian Amberg, Andreas Forster. 21. September 2010 UNIVERSITÄT BASEL

Dieses Handbuch beschreibt die folgende KobaSpeech 2 Version: KobaSpeech 2 v2.0.5

MAXDATA b.drive. Externe Festplatte mit integrierter Backup Software

1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi

Paragon Online WinPE Builder Service

Logik und diskrete Strukturen

Fachhochschule Wiesbaden - Fachbereich DCSM. Skriptsprachen. Moderne, objekt-orientierte Skriptsprachen mit Betonung auf Ruby

SCS Data Manager. Versionshinweise. Version 3.00

Mikrocontroller Grundlagen. Markus Koch April 2011

Allgemein: Das Mainboard

Installationsanleitung für. SugarCRM Open Source. Windows Einzelplatz

Modellierung und Programmierung 1

Byte-Taxi. Bedienungsanleitung. Seite 1 von 8

Fronplattenbeispiel RAL9005 Frontplattenbeispiel 19 Rack - RAL7035 Frontplattenbeispiel Edelstahl IP65

CS Software GmbH - Schiersteiner Strasse Wiesbaden - Tel.: 0611/ Fax 0611/

Mac- Programmierung. Mac-Programmierung. Holger Hinzberg. Hinzberg. 2. Auflage

Smartphone Entwicklung mit Android und Java

DAS EINSTEIGERSEMINAR. Mindmapping mit. Mindjet MindManager Gudrun Rehn-Göstenmeier LERNEN ÜBEN ANWENDEN

Programmieren. Programmieren. Webseiten aufpeppen. Grafikkarte ausreizen. Coole Sprachen. Kinect am PC. 3D-Programmierung

Witbox. Anleitung Repetier-Host. Witbox

Aktivierung der Produktschlüssel. in CABAReT-Produkten am Beispiel CABAReT Stage

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Im Original veränderbare Word-Dateien

VIRTUALISIERUNG IN MIKROKERN BASIERTEN SYSTEMEN

Um etwas zu bearbeiten, fährt man einfach mit der Maus auf das betreffende Objekt.

2 Der Schnelleinstieg *

Programmierung 2. Organisatorisches. Sebastian Hack. Klaas Boesche. Sommersemester

Erfassen und Veröffentlichen von Betriebs- und Projektdaten login.landwirtschaft.ch login.agriculture.ch login.agricoltura.ch

BTD-300 Bluetooth USB-Adapter (Version 3.0)

Installationsanleitung für das Integrity Tool zur AusweisApp Version 1.7 (Microsoft Windows) Dokumentversion 1.0

Skype Installation und Einstieg in das Programm

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

LAUNCHPAD. Kurzanleitung

Technische Hintergründe des Web 2.0. Praxisprojekt Du bist das Netz! Web 2.0 Morten Strüwe, Florian Brachten

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

Übung - Installieren eines virtuellen PCs

Anleitung zur Installation von Microsoft Office 365

2.1 Lightning herunterladen Lightning können Sie herunterladen über:

Kommunikations- und Arbeitswerkzeuge der Piraten I

Wintersemester 2010/2011 Rüdiger Westermann Institut für Informatik Technische Universität München

Transkript:

1 Deutsche Version der Folien 2 Einführung in die Programmierung Folien für diese und alle weiteren Vorlesungseinheiten werden von nun an auch in Deutsch verfügbar sein. Die deutschen Folien werden auf der Webseite der Vorlesung publiziert. Bertrand Meyer ETH Zürich, Oktober 2003 Februar 2004 Sprache 3 Wähle Deine Sprache 4 Das war die erste deutsche Folie dieser Vorlesung Das ist die letzte deutsche Folie dieser Vorlesung Übungsstunden (Übungsgruppen) werden in Deutsch, Englisch und, falls sich genügend Studenten interessieren, auch in Französisch durchgeführt. Wähle eine Übungsgruppe (eine Assistentin/einen Assistenten) in der gewünschten Sprache. Die Assistenten sprechen folgende Sprachen: Deutsch, Französisch, Englisch, etwas Italienisch, Polnisch, Türkisch. Ziele dieses Kurses 5 6 Nach diesem Kurs wirst du: Die wichtigsten Konzepte des Programmierens kennen. Deine erste Programmiersprache beherrschen: Eiffel. Mitwirkende am Unterricht Software und Hardware Tools verstehen. Grundlegende Konzepte von Design, Implementation und Unterhalt grosser Software- Systeme kennen. ( software engineering ). 1

Bertrand Meyer 7 Die Assistenten 8 E-Mail: Bertrand.Meyer@inf.ethz.ch Büro: RZ J6 Sekretärin: Ruth Bürkli, (01) 632-5277 Volkan Arslan Benno Baumgartner Till Bay Susanne Cech Jörg Derungs Peter Farkas Michael Gomez Piotr Nienaltowski Michela Pedroni Matthias Sala Gabor Szabo Tobias Widmer Karine Arnout Übungsstunden 9 Volkan Arslan 10 Üblicherweise zwei Sessions pro Woche: Montag, 15:00 16:00, versch. Zimmer Dienstag, 13:00 15:00, versch. Zimmer Mailing list: lions@se.inf.ethz.ch Eine Guppe hat an Stelle der Session am Dienstag eine Session am Mittwoch, 14:00 16:00 Zwei Gruppen haben nur eine Session: Dienstag, 15:00 18:00 Wähle die Übungsstunde entsprechend der bevorzugten Sprache und Tag/Zeit. E-Mail: Volkan.Arslan@inf.ethz.ch Büro: RZ J3 Telefon: 01/ 632 44 70 Sprache: Deutsch (Englisch) Montag: ML F39 (15:00 16:00) Dienstag: ETZ E9 (13:00 15:00) Wir werden Gruppenlisten zirkulieren lassen, auf denen du dich einschreiben kannst Benno Baumgartner 11 Till Bay 12 Mailing list: bees@se.inf.ethz.ch Mailing list: dragonflies@se.inf.ethz.ch E-Mail: benno@student.ethz.ch Sprache: Deutsch (Englisch) Montag: ETZ K91 (15:00 16:00) Dienstag: HG D7.2 (13:00 15:00) E-Mail: till.bay@inf.ethz.ch Büro: RZ J22 Telefon: 01/ 632 76 33 Sprache: Deutsch (Französisch, Englisch) Montag: ML H37.1 (15:00 16:00) Dienstag: ML D13 (13:00 15:00) 2

Susanne Cech 13 Jörg Derungs 14 Mailing list: turtles@se.inf.ethz.ch Mailing list: ants@se.inf.ethz.ch E-Mail: scech@inf.ethz.ch Büro: RZ J5 Telefon: 01/ 632 79 36 Sprachen: Deutsch (Englisch) Montag: LEC C14 (15:00 16:00) Dienstag: HG F3 (13:00 15:00) E-Mail: derungs@inf.ethz.ch Büro: CLW B3 Telefon: 01/ 632 74 06 Sprache: Deutsch (Englisch, Französisch) Montag: ETZ H91 (15:00 16:00) Dienstag: ML H44 (13:00 15:00) Peter Farkas 15 Michael Gomez 16 Mailing list: mice@se.inf.ethz.ch Mailing list: cows@se.inf.ethz.ch E-Mail: pefarkas@student.ethz.ch Sprache: Deutsch (Englisch) Dienstag: IFW A34 (15:00 18:00) E-Mail: gomezm@student.ethz.ch Sprachen: Deutsch Montag: ML J37.1 (15:00 16:00) Dienstag: ML J34.3 (13:00 15:00) Piotr Nienaltowski 17 Michela Pedroni 18 Mailing list: frogs@se.inf.ethz.ch Mailing list: lizards@se.inf.ethz.ch E-Mail: Piotr.Nienaltowski@inf.ethz.ch Büro: RZ J3 Telefon: 01/ 632 44 68 Sprachen: Französisch (Englisch) Montag: IFW A32.1 (15:00 16:00) Dienstag: ETZ K91 (13:00 15:00) E-Mail: michela.pedroni@inf.ethz.ch Büro: RZ J22 Telefon: 01/ 632 76 84 Sprachen: Deutsch (Englisch) Montag: ML H34.3 (15:00 16:00) Dienstag: HG F5 (13:00 15:00) 3

Matthias Sala 19 Gabor Szabo 20 Mailing list: cats@se.inf.ethz.ch Mailing list: dogs@se.inf.ethz.ch E-Mail: salam@student.ethz.ch Sprachen: Deutsch (Englisch) Montag: IFW A36 (15:00 16:00) Mittwoch: HG E22 (14:00 16:00) E-Mail: Gabor.Szabo@inf.ethz.ch Büro: CLW B2 Telefon: 01/ 632 73 97 Sprachen: Englisch Dienstag: IFW D42 (15:00 18:00) Tobias Widmer 21 Karine Arnout 22 Mailing list: ducks@se.inf.ethz.ch E-Mail: Tobias.Widmer@id.ethz.ch Sprachen: Deutsch (Englisch, Italian) Montag: ML J34.1 (15:00 16:00) Dienstag: LEC C18 (13:00 15:00) E-Mail: karine.arnout@inf.ethz.ch Büro: RZ J4 Telefon: 01/ 632 4723 Sprachen: Französisch (Englisch) Übungsstunden 23 Bertrand Meyer: Über mich 24 Listen für die Übungsstunden, auf denen Ihr Euch einschreiben könnt, zirkulieren jetzt. Wähle die Übungsstunde entsprechend der bevorzugten Sprache und Tag/Zeit. Seit 2 Jahren an der ETH. In der Privateindustrie für den grössten Teil meiner Karriere. 1985 Eiffel Software in Santa Barbara, Kalifornien, gegründet. Noch immer Chief Architect der Firma. Mehrere Bücher publiziert, unter anderem Object- Oriented Software Construction (2. Auflage: 1997). Idee: Der Industrie helfen, die bestmögliche Software herzustellen. 4

25 Terminplan 26 Vorlesungen: Montag, 13:00 15:00, HG E7 Dienstag, 10:00 12:00, HG E7 Praktische Informationen Übungsstunden: Montag, 15:00 16:00, versch. Zimmer Dienstag, 13:00 15:00, versch. Zimmer oder (für zwei Gruppen) Dienstag, 15:00 18:00 oder (für eine Gruppe) Montag, 15:00 16:00 Mittwoch, 14:00 16:00 Kurs-Material 27 Touch of class 28 Kurs-Webseite: http://se.inf.ethz.ch/teaching/37-001 Zweimal wöchentlich checken Es gibt eine deutsche und eine englische Version. Die aktuellere Version ist die deutsche. Vorlesungs-Material: Vorlesungsfolien Buch: Touch of Class (Entwurf) Kann von der Kurs-Webseite heruntergeladen werden. Übungs-Material: Übungsblätter Beispiellösungen Forum 29 Bürozeiten 30 Forum: Hilfe für den ganzen Kurs: http://se.inf.ethz.ch/teaching/ws2003/37-001/forum/ Jede Gruppe hat eine Mailingliste Ratschlag und Regeln: Benutzt das Forum und die Mailing Listen! Programmieren lernen ist schwierig. Nutzt jede Hilfe, die ihr kriegen könnt. RZ J22 Freitag 14:00 16:00 Kein Grund, schüchtern zu sein. Es gibt keine dummen Fragen! Kritik ist willkommen. Sei jedoch freundlich und anständig. Unser ganzes Team (Professor und Assistenten) ist erreichbar unter: intro-assi@se.inf.ethz.ch 5

Übungsstunden 31 Mailing list für Studentinnen 32 Besucht alle Übungen Mailing list*: Macht alle Übungen (werden benötigt für das Testat) chicks@se.inf.ethz.ch * Notiz für aussenstehende Leser: Der Name dieser Mailingliste wurde von unseren (weiblichen) Assistenten gewählt. Der Name ist als natürliches Komplement der anderen Tiernamen zu verstehen. Sein impliziter Ton ist natürlich nicht derogativ, sondern vielmehr humorvoll. Uns ist es absolut ernst damit, die Anzahl der Frauen in der Informatik zu erhöhen, und wir unterstützen weibliche Studentinnen. Das D-INFK hat eine aktive Frauenförderungs-Initiative: http://www.frauen.inf.ethz.ch/ Übungen, Testatbedingungen 33 Die TRAFFIC Software 34 Testat: Wird für die Prüfungszulassung benötigt. Übungen: 7 Übungen 2 Übungen in der Klasse 1 Projektübung Testatbedingungen: Mind. 6 Übungen gemacht Mind. 1 Klassenübung 1 Projektübung Engagement muss sichtbar sein Fragebogen muss ausgefüllt werden MilitäroderKrankheit kontaktiere deinen Assistenten/deine Assistentin. Das Buch und die Übungen basieren auf der TRAFFIC Software. TRAFFIC ist einem Transportation System einer Stadt nachempfunden. EiffelStudio download: http://www.eiffel.com/downloads/ TRAFFIC software download: http://se.inf.ethz.ch/teaching/ws2003/37-001/downloads/ Du wirst TRAFFIC kennenlernen 35 Warnung 36 Dieser Kurs ist neu in dieser Form. Auch wir machen den Kurs zum ersten Mal! Die Unterlagen sind immer noch in Bearbeitung. DESHALB: Nicht alles, was wir machen, ist perfekt. Die TRAFFIC Software hat bestimmt Bugs, und auch das Buch hat noch Fehler. ABER: Wir werden die Fehler so schnell wie möglich korrigieren. Schiebe beim Herumprobieren die Schuld nicht zuerst der Software in die Schuhe. Vielleicht macht die Software genau das, was du ihr gesagt hast. 6

37 Software- Ingenieure bauen Maschinen 38 Vorlesung 1: Die Industrie der reinen Ideen Unsere Maschinen kann man nicht berühren sie sind immateriell Trotzdem sind sie Maschinen Wir nennen sie Programme oder Systeme Um ein Programm auszuführen, braucht man eine physikalische Maschine: einen und Periferie: Hardware Programme und der damit verbundene intellektuelle Wert: Software Software überall 39 40 Banken: Verwalten Millionen von Konti Handel: Entscheidet über Kauf oder Verkauf Transport: Kontrolliert Züge, Flugzeuge... (Moderne Autos enthalten in ihren Systemen Millionen Zeilen von Programm-Code) Reisen: Luftfahrt, Eisenbahn, Hotel-Reservationen Staat: Steuerverwaltung, Verwaltung von Gesetzen... Medizin: Patientenverwaltung Schule Unterhaltung Information etc. sind universelle Machinen. Sie führen das Programm aus, das du ihnen eingibst. Deine Vorstellungskraft ist die einzige Grenze. Die gute Nachricht: Dein wird genau das tun, was dein Programm sagt. Arbeiten mit einem 41 Arbeiten mit einem 42 Ein Programmierer schreibt ein Programm Programm Ein Programmierer einen benutzt um ein Programm Programm Programmierer: Schreibt Programme User: Führt Programme aus das ein User zu schreiben das ein User auf einem ausführt auf einem ausführt 7

Arbeiten mit einem 43 Arbeiten mit einem 44 Ein Programmierer benutzt einen um ein Programm Programm Programmierer benützen um Programme Programme zu schreiben das die User zu schreiben, die die User auf ihren n ausführen auf ihren n ausführen sind universelle Machinen. Sie führen das Programm aus, das du ihnen eingibst. Deine Vorstellungskraft ist die einzige Grenze. Die guten Nachrichten: Dein wird genau das tun, was dein Programm sagt. Er wird es sehr schnell tun. 45 Moore s Law Ungefähre Verdoppelung der Frequenz von Prozessoren, bei vergleichbarem Preis, alle 18 Monate Frequenz von Intel-Prozessoren Pentium IV: 1.3 GHz 1 GHz (1 Hertz = 1 Schwingung pro Sekunde) Pentium: 133 MHz 100 MHz 80486: 50 MHz 80386: 33 MHz 10 MHz zu 1 GHz: in 26 Jahren von 1 zu 2 GHz: 8 Monate 1 MHz 8008: < 1 MHz 46 1970 1980 1990 2000 Verbreitete Vorurteile und Ausreden 47 machen keine Fehler*... 48 sind intelligent Fact: sind weder intelligent noch dumm. Sie führen nur Programme aus, die von Menschen geschrieben werden. Diese Programme reflektieren die Intelligenz ihrer Autoren. Die Grundoperationen eines s sind sehr elementar (z.b. speichere diesen Wert, addiere diese beiden Zahlen ). Der ist abgestürzt Der erlaubt das nicht Der hat deine Datei verloren Der hat deine Datei kaputt gemacht Programme machen auch keine Fehler Programmierer machen Fehler * In Tat und Wahrheit: Hardware kann Fehler haben; dies kommt jedoch viel seltener vor als Programm- Fehler. 8

49 Software schreiben ist schwer 50 sind universelle Maschinen. Sie führen das Programm aus, das du ihnen eingibst. Deine Vorstellungskraft ist die einzige Grenze. Die guten Nachrichten: Dein wird genau das tun, was dein Programm sagt. Er wird es sehr schnell tun. Die schlechten Nachrichten: Dein wird genau das tun, was dein Programm sagt. Er wird es sehr schnell tun. Programme stürzen ab. Programme, die nicht abstürzen, funktionnieren aber auch nicht unbedingt richtig. Schlecht funktionierende Programme haben bereits Todesopfer gefordert (Medizinalbereich). Ariane 5, 1996: $10 Mrd. verloren wegen eines einfachen Programmfehlers. Programmierer sind verantwortlich für das korrekte Funktionieren ihrer Programme. Das Ziel dieses Kurses ist nicht, dir das Programmieren beizubringen, sondern dass du gut zu programmieren lernst. The Blue Screen Of Death 51 Gut programmieren lernen 52 Was machen 53 Generelle Organisation 54 Speichern und lesen Operationen Kommunikation Rest Rest der der Welt Welt Kommunikations- Geräte Prozessoren Rest Rest der der Welt Welt Kommunikations- Geräte Prozessoren auch CPU Tastatur, Maus, Video, Netzwerk-Karte... Speichern und Lesen Memories Operationen Prozessoren Kommunikation Kommunikations-Geräte Memories Memories Memories, Prozessoren und Kommunikations-Geräte sind die Hardware. Kern -Memory, Disks... Persistent oder nicht 9

Information und Daten 55 Information und Datenverarbeitung 56 Daten: Menge von Symbolen, die in einem gehalten werden. Information: Interpretation der Daten für menschliche Zwecke. Daten werden im Speicher gehalten Input-Geräte produzieren Daten von Information Output-Geräte produzieren Information von Daten Information Information Information ist, was du willst, z.b. ein Text oder Musik Daten sind die Art und Weise, wie die Information für den kodiert wird (z.b. MP3 Audio- Format) Daten Input Output Verarbeitung Daten Daten gibt es in allen Grössen, Farben und Formen 57 s überall 58 Banken Flugzeuge, Autos Waschmaschinen Mobiltelefone (70% des Wertes eines Mobiltelefons entsteht durch seine Software) Drucker In Zukunft: Dein T-Shirt 59 Wo ist das Programm? 60 sind universelle Maschinen. Sie führen ein Programm aus, das du ihnen eingibst. Stored-program computer: Das Programm ist im Speicher. Ausführbare Daten. Der kann mit Hilfe von Basis-Programmen (dem Betriebsystem) dein Programm im Speicher finden und es ausführen. (Universelle Maschine) + Programm = Spezialisierte Maschine Ein Programm kann in verschiedenen Formen im Speicher erscheinen: Quelltext: Für Menschen lesbare Form (Programmier- Sprache). Ziel-Form, Maschinen-Code, Objekt-Form: Vom ausführbare Form. Compiler verwandeln Quelltext in Maschinen-Code. 10

Software Engineering 61 Grösse von Bertriebssystemen (Quellcode) 62 Software die Korrekt ist Tut was sie soll! Erweiterbar ist Einfachzuändern! Lesbar ist kann von anderen Programmierern verstanden werden! Wiederverwendbar ist Man muss nicht das Rad neu erfinden! Robust ist Reagiert angemessen auf Fehler! 40 30 20 Unix V7: 10,000 10 2 Quellcode-Zeilen (in Mio.) Windows NT: 4 M Windows 3.1: 3 M 1990 Windows 98: 18 M Windows 95: 15 M Solaris 7: 12 M Linux: 10,000 1992 Windows XP: > 45 M Windows 2000: 40 M 1995 1998 2000 Red Hat 7.1 30 M Red Hat 6.2 17 M In anderen Gebieten 63 Software schreiben ist schwer 64 (source: Siemens) Programme stürzen ab, etc. Software schreiben macht Spass 65 Für nächste Woche 66 Du entwirfst und baust deine eigenen Maschinen. Kapitel 1 von Touch of Class lesen Du kannst kreativ sein und deine Vorstellungskraft einsetzen. Programme retten Leben und machen die Welt besser. Empfehlung: Mit der Lektüre von Kapitel 2 und den Folien für die nächste Vorlesung beginnen (kommen am Mittwoch auf die Kursseite) Das gute Gefühl, wenn eines deiner Programme läuft und funktioniert. 11

67 Ende Vorlesung 1 12