49
Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: Interaktion mit Informatikmitteln: Betriebsarten Betriebsarten • Datenformate • Programmierung Hilfsmittel für die Programmierung • Webprogrammierung

Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Embed Size (px)

Citation preview

Page 1: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Agenda für heute, 13. Mai 2009

• Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten• Datenformate• Programmierung• Hilfsmittel für die Programmierung • Webprogrammierung

Page 2: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Interaktion mit Informatikmitteln

Drei Betriebsarten: • Dialog• Echtzeit • Stapel

2/44

Unzählige Datenformate:• ".a" (Archiv bei UNIX) bis • ".zvd" (Voice-Datei)

Zwei Interaktionstypen:• mit Anwendern• mit Daten

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 3: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Betriebsarten im Vergleich

Dialogbetrieb

3/44

• Interaktive Eingabe von Instruktionen und Daten

• Sofortige Ausgabe von Daten (< 0.1 sec.)

• Steuerung eines Programms während seiner Ausführung möglich

Programme

Page 4: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Betriebsarten im Vergleich

Echtzeitbetrieb

4/44

• Kurze Reaktionszeiten (μsek.)

• Hohe Zuverlässigkeit (Redundanz)

• Messen, Regeln, Ablaufsteuerungen

Programme

Page 5: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Betriebsarten im VergleichStapelbetrieb

5/44

• Vollständig spezifizierter Auftrag wird selbständig ausgeführt

• Keine Möglichkeit, auf den Programmablauf einzuwirken

• Rechenintensive Arbeiten, Routineaufgaben (z.B. autom. Backup)

• Makros, Batch-Dateien (.BAT)

Programmierung

Page 6: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

• Interaktion mit Informatikmitteln: Betriebsarten

• DatenformateDatenformate• Programmierung• Hilfsmittel für die Programmierung • Webprogrammierung

Page 7: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Standardisierung ermöglicht Datenaustausch

6/44

Traditionelle Standards für

• Zahlen (Prozessor, arithmetische Operationen)

• Zeichen (Alphabet, Zeichensätze, Programmsteuerung)

• Graphik (Bildverarbeitung, Ausgabemedien)

Neuere Standards beschreiben

• Darstellung der Daten (Dokumente, Bilder)

• Bedeutung der Daten (Beschreibung des Dateiinhalts)

Page 8: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Ganze Zahlen

7/44

Ganze Zahlen aus dem Wertebereich 0..255

Ganze Zahlen aus dem Wertebereich -128..127

WertVorzeichen

Dezimal- binäre Darstellung wert mit Vorzeichen

-127 1 111 1111 -4 1 000 0100 -1 1 000 0001 -0 1 000 0000 0 0 000 0000 1 0 000 0001 127 0 111 1111

Dezimal- binäre Darstellung wert ohne Vorzeichen

0 0000 00001 0000 00014 0000 0100

127 0111 1111 128 1000 0000 254 1111 1110 255 1111 1111

Wert

Page 9: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Datenformate: Ganze Zahlen

Ganze Zahlen aus dem Wertebereich 0..255

Dezimal- binäre Darstellung wert Zweierkomplement

-128 1000 0000 -1 1111 1111 -4 1111 1100

0 0000 0000 1 0000 0001

4 0000 0100 127 0111 1111

Wert

8/44

Positive Zahlen haben eine führende 0

Nur eine Darstellung für 0

Umrechnung negativer Zahlen:sämtliche Stellen werden negiertzum Ergebnis wird 1 addiert

Bsp. -4: 1111 1100negiert: 0000 0011plus 1 1Resultat: 0000 0100

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 10: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Datenformate: Gleitkommazahlen

0 11000101 00000100001011101011101

9/44

+ -5 4'331'357

Mantisse 2Exponent = 135'354.90625

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 11: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Wie kann ein Komma gleiten?

Mantisse = 0.125 Exponent = –2

Beispiel

Der Wert 0.00125 wird wie folgt umgewandelt:

0.00125 = 0.00125 x 100

= 0.0125 x 10-1

= 0.125 x 10-2

Grund: Erlaubt die Darstellung sehr kleiner Zahlen auch wenn für die Mantisse wenig Bits zur Verfügung stehen (kleine Präzision).

10/44

Page 12: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Zeichen

Zeichen werden durch Zahlen codiert.

ASCII

128 Zeichen (American Standards Association)

Charsets

Unicode Consortium: Universal Character Set

ISO 10644 (216 Zeichen)

ISO 8859 (256 Zeichen)

11/44

Page 13: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Grafik

Rastergrafik(aufgereihte Bildpunkte)

Vektorgrafik(Linienzüge, Kurven)

Skalierbar ohne Qualitätseinbusse

Qualitätsverlust bei Skalierung

12/44

Page 14: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Prinzip der Rasterdaten

rot

rot

blau

gelb

türkis

. . .

0

1

2

3

Farbe des Bild-punktes (Pixel):

0

1

23

rot grün blau

255 0 0

255 0 0

0 0 255

255 255 0

44 172 212

. . . . . . . . .

rgb-Werte,die als Bilddaten gespeichert werden:

13/44

4 4

16'711'680

16'711'680

255

16'776'960

2'927'828

. . .

0

1

2

3

Kombinierter rgb-Wert:

4

00101100 10101100 11010100

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 15: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Prinzip der Vektorgrafik

Beispiel (PostScript Standard)Die Instruktionsfolge:

newpath50 50 moveto50 70 lineto40 60 moveto60 60 lineto50 60 10 0 360 arcstrokeshowpage

Listen mit Befehlen und Koordinaten geben einem Grafikprogramm an, was wo wie zu zeichnen ist.

Zeichnet einen Kreis mit Radius 10 um ein Fadenkreuz am Punkt 50, 60:

50

60

00

14/44

Page 16: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Grafik

BMP-Dateien (Windows Bitmap) speichern für jeden Bildpunkt die intensität der Farben rot, grün und blau. In der Regel wird für jede Farbe 1 Byte (8 Bit) verwendet

Speicherintensiv weil unkomprimiert.

15/44

GIF-Dateien (Graphics Interchange Format, US Online-Dienst Compuserve) arbeitet mit "Paletten" von bis zu 256 Farben.

Verlustlose Komprimierung erspart Speicher.

JPEG-Dateien (Joint Photographic Experts Group, ISO 10980) wurde als Standard für die Komprimierung fotografischer Bilder eingeführt. Führt je nach Komprimierungsgrad zu mehr oder weniger Qualitätsverlust. Verbreitet bei Digitalkameras und Bildern auf dem Web.

Page 17: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Dokumente

Rich Text Format (RTF, Microsoft).• Inhalt plus Beschreibung, wie dieser dargestellt werden soll.

• Ein öffentliches Dateiformat für Dokumente, das die meisten Textverarbeitungsprogramme lesen können.

• Die Datei ist reiner Text, ähnlich wie HTML.

16/44

RTF-Datei:

{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\par Dies ist ein {\b bold} Text.\par }

Darstellung:

Dies ist ein Text.

Page 18: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Dokumente

Portable Document Format (PDF, Adobe, versch. ISO-Normen).

• Vektorbasierte Seitenbeschreibungssprache. Plattformunabhängige, originalgetreue Darstellung von Dokumenten.

• Seitengrösse nur durch Verarbeitungsprogramm beschränkt.

• Enthält Schutzmechanismen.

• Dateigrösse hängt u.a. davon ab, ob Schriften eingebettet sind.

• Ideal zum Publizieren von Inhalten.

• Bildkompressionsverfahren.

17/44

Page 19: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Auszeichnungssprachen (markup languages)

Hypertext Markup Language (HTML, W3C).

• Die vorherrschende, textbasierte, Auszeichnungssprache für Webseiten.

• Verwendet zur Strukturierung von Inhalten wie Texte, Bilder und Hyperlinks in Dokumenten.

• Enthält zusätzliche Angaben z. B. über die im Text verwendete Sprache, die Autorin oder den Inhalt des Textes.

• Die Auszeichnungssprache wurde vom World Wide Web Consortium weiterentwickelt und soll durch XHTML ersetzt werden.

18/44

Page 20: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Auszeichnungssprachen (markup languages)

Extensible Markup Language (XML, W3C).• Textbasierte (im einfachsten Fall ASCII) Auszeichnungs-

sprache zur Darstellung von hierarchisch strukturierten Daten.

• XML-Dokument können in andere Dokumente transformiert werden, beispielsweise nach XHTML, um das Dokument in einem Webbrowser anzuzeigen.

• XML wird auch für den Austausch von Daten zwischen unterschiedlichen IT-Systemen eingesetzt.

• Um die Struktur von XML-Sprachen zu beschreiben, bedient man sich so genannter Schemasprachen wie DTD (Document Type Definition) oder XML Schema.

19/44

Page 21: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Datenformate: Auszeichnungssprachen (markup languages)

20/44

DTD für Visulab-Daten<!ELEMENT VisulabData (data)><!ELEMENT data (variables, records)><!ELEMENT variables (realvariable)+>

<!ATTRLIST variablescount CDATA #REQUIRED>

XML-Datei für Visulab-Daten<?xml version="1.0" encoding="iso-8859-1"?><VisulabData> <data>

<variables count="4"> <realvariable name="sepal-leng" hide="1"/> <realvariable name="sepal-widt" hide="0"/> <realvariable name="petal-leng" hide="0"/>

Page 22: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

• Interaktion mit Informatikmitteln: Betriebsarten• Datenformate

• ProgrammierungProgrammierung• Hilfsmittel für die Programmierung • Webprogrammierung

Page 23: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Was ist ein Programm?

Eine Folge von Instruktionen, mit denen ein Computer(programm)

den Inhalt von Speicherzellen verändert

Datenstrukturen

Algorithmus

SequenzVerzweigungWiederholung

Variable . . .. . . Datei . . .

. . . Objekt

21/44

Algorithmen + Datenstrukturen = Programme

Page 24: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Die Programmierumgebung stellt Instruktionen zur Verfügung

22/44

Anwendungs- Befehle der Anwendung + ev. Anweisungen programme: einer Programmiersprache

Programmier- Anweisungen einer Programmiersprache

umgebung: + ev. vorprogrammierte Elemente

Betriebssystem: Anweisungen einer Kommandosprache

Webseite: Anweisungen einer Skriptsprache

Page 25: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Die Problemstellung diktiert die Datenstrukturen

23/44

Berechnungen: Variablen

Fixe Listen: Felder (Arrays)

Dynamische Listen: verkettete Variablen (Records)

Permanente Daten: Dateien (Files)

A F L P T X

6 + 13 19

x y z

1 2 3 4 5 6

A 2 F 3 P 4 T

1 2 3 4

A F L P T X

1 2 3 4 5 6L

output

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 26: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Zwei Arten der Programmausführung (vereinfacht)

1) Programm wird kompiliert (übersetzt)

2) Programm wird interpretiert

Prozessor-Instruktionen

CompilerQuellcode

InterpreterQuellcode Prozessor-

Instruktionen

Prozessor

Compiler

Prozessor

Müssen nicht auf dem ausführenden Computer sein

24/44

Muss auf dem ausführenden Computer sein

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 27: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Nobody's perfect: Fehlerquellen

• Falsche Programmlogik: diese Fehler müssen wir selber finden

• Nichtbeachten der Regeln der Programmiersprache: Hier kann uns ein "Debugger" helfen

• Falsche Daten: Verantwortung der Programmiererin,

Programmiersprache kann helfen (Datentypen)

25/44

Page 28: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Debugger (Entstörer)

11/34

• Sucht formale Fehler

• Prüft während der Ausführung

• Kann ein- oder ausgeschaltet werden

26/44

Page 29: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Die wichtigsten Programmierparadigmen

27/44

(Paradigma: Denkmuster)

Imperative Programmierung

Befehls- oder Anweisungsorientiert (z.B. Pascal, C)

Objektorientierte Programmierung

Objekte mit Eigenschaften und Operationen (z.B. Java, Eiffel)

Deklarative Programmierung

Fakten & logische Aussagen (z.B. LISP, Prolog)

Page 30: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Imperative Programmierung

28/44

Ein Befehl in der Eingabeaufforderung löst eine Folge von Anweisungen aus

Bildschirm Programmcode

Pascal-AnweisungsfolgeBefehlszeile

Page 31: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Objektorientierte Programmierung

29/44

Konkretes oder imaginäres Objekt

• hat Eigenschaften

• kann Aktionen auslösen

Page 32: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

• Interaktion mit Informatikmitteln: Betriebsarten• Datenformate• Programmierung

• Hilfsmittel für die Programmierung Hilfsmittel für die Programmierung • Webprogrammierung

Page 33: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Hilfsmittel für den Programmentwurf

Pseudocode Natürlichsprachliche, knappe Beschreibungunter Einbezug der Notation einer Programmier-

sprache

Flussdiagramme Gerichtete Liniendiagramme zur Illustrationvon Abläufen (Programmablaufplan)

Struktogramme Darstellung von Aktionen durch Blöcke, die aneinander gereiht oder ineinander

geschachtelt werden (Nassi-Shneiderman- Diagramm)

30/44

Page 34: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Pseudocode

Beispiel: Temperaturwerte sollen von Grad Fahrenheit in

Grad Celsius umgerechnet werden

read(F)

subtrahiere 32

multipliziere mit 5/9

write(C)

31/44

Page 35: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Flussdiagramme

Drei elementare Konstruktionselemente für Algorithmen:

Sequenz, Fallunterscheidung und Wiederholung

Diese Elemente lassen sich durch geeignetes Aneinanderreihen der folgenden drei Symbole grafisch darstellen:

Operation Fallunterscheidung

32/44

Eingabe/Ausgabe

Page 36: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Flussdiagramme: Fallunterscheidung

read(F)

T = F - 32

C = T x 5 / 9

write(C)

F 32

Warnung

wahrfalsch

Pseudocode:

read(F)if F >= 32then begin subtrahiere 32 multipliziere mit 5/9 write(C) endelse gebe warnung aus

33/44

Angenommen, wir rechnen die Temperaturen nur um, falls sie über dem Gefrierpunkt sind, andernfalls geben wir eine Warnung aus.

Page 37: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Flussdiagramme: Wiederholung

F = 0

Stopp

F < 101Berechne Cwrite(F,C)erhöhe F

wahrfalsch

Pseudocode:

F = 0solange F < 101begin subtrahiere 32 multipliziere mit 5/9 write(F,C) F = F + 1 end

34/44

Nun möchten wir eine Umrechnungstabelle erstellen, die für jedes ganze Grad Fahrenheit zwischen 0 und 100 die entsprechende Temperatur in Celcius angibt.

Page 38: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Struktogramme: Sequenz, Fallunterscheidung

Sequenz

Anweisung 1

Anweisung 2

....

Anweisung n

Fallunterscheidung

Anweisung 1 Anweisung 2

ja neinBedingung b

35/44

Page 39: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Struktogramme: Wiederholung

Schleife 0 bis n mal

Solange Bedingung b

tue Anweisungen

Schleife genau n mal

Für i = Anfangswert bis Endwert

tue Anweisungen

36/44

Page 40: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Struktogramme: Beispiele

Für F = 0 bis 100, Schrittw. 1

F = F -32

tue C = F • 5/9

Ausgabe C

37/44

Umrechnungstabelle, die für jedes ganze Grad Fahrenheit zwischen 0 und 100 die entsprechende Temperatur in Celcius angibt. Eingabe: p, q

a = p : 2

d = a2 - q

ja d < 0 nein

Ausgabe: "nicht lösbar"

h = √ d

X1 = a + h

X2 = a - h

X1, X2

Lösung einer quadratischen Gleichung. Mitteilung falls nicht lösbar (Diskriminante < 0).

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 41: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

• Interaktion mit Informatikmitteln: Betriebsarten• Datenformate• Programmierung• Hilfsmittel für die Programmierung

• WebprogrammierungWebprogrammierung

Page 42: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Statische Webauftritte

Kommunikationsschema für Webseiten

Client Server

1. Anforderung

3. Antwort

2. Bearbeitung

HTML-Seite an Clientzur Interpretation senden

Interaktion zwischen Web und Nutzer auf Mausklicks beschränkt

"Plakatcharakter" der Kommunikation

38/44

Internet

Page 43: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Dynamische Webauftritte

• Serverseitig

Server beantwortet Anfragen qualifiziert

Webdokumente werden durch Programme des Servers für den Client bedarfsgerecht aufbereitet

Jede Anfrage erhält eine individuelle Antwort

• Clientseitig

Client erhält HTML-Dokumente, die Programme enthalten, welche das Erscheinungsbild im Browser steuern

Z.B. in Abhängigkeit von Mausaktionen oder von Zeitgebern (Animationen)

39/44

Page 44: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Clientseitige dynamische Webauftritte

Client Server

1. Anforderung

3. Antwort

Dynamische Effekte für komfortable Benutzerschnittstellen

Bereichs- und Gültigkeitsüberprüfung von Zahlen und Texten in Formularen

Hervorheben von Dokumentteilen bei Erhalt des Mausfokus

2. Bearbeitung

HTML-Seite an Clientzur Interpretation senden

4. Bearbeitung

40/44

Page 45: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Beispiel für interaktive Webseiten: Formulare

Durch Drücken des "Bestellen!"-Knopfes (Submit-Knopf) wird das Formular zum Ziel gesandt (gegeben durch den URL der Webseite des Formulars)

41/44

Page 46: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Formulare

"Abschicken" eines Formulars• Das Method-Attribut bestimmt, in welcher Form dies geschieht

• Bei GET werden die Daten als "Query-String" an die Action-URL geheftet

• Die Daten schliessen sich dem Fragezeichen der URL an:

Ziel-URL/formular.html?Anzahl=6&Item=Birnen

Der Query-String wird vom Webserver an dort ablaufende Programme weitergegeben (z.B. über CGI), kann aber auch HTML-Dokumenten auf der Client-Seite verfügbar gemacht werden

DatenelementTrennzeichen

Hinweis: Kein Schutz gegen Missbrauch!!

42/44

Page 47: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Programmieren kann in allen Bereichen des Informatik-

Arbeitsplatzes eingesetzt werden!

Datenverwaltung

InformationserzeugungDatenverarbeitung

Kommunikation

43/44Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Page 48: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

Programmiervorlesungen für die Naturwissenschaften (FS)

• 251-0840-00 Anwendungsnahes Programmieren (Java)

• 251-0842-00 Programmieren und Problemlösen (Delphi)

44/44

Page 49: Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung

Danke für Ihre Aufmerksamkeit