Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Agenda für heute, 13. Mai 2009 Interaktion mit Informatikmitteln: BetriebsartenInteraktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung."—  Präsentation transkript:

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

2 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

3 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

4 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

5 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Betriebsarten im Vergleich Stapelbetrieb 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

6 Interaktion mit Informatikmitteln: Betriebsarten DatenformateDatenformate Programmierung Hilfsmittel für die Programmierung Webprogrammierung

7 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)

8 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Datenformate: Ganze Zahlen 7/44 Ganze Zahlen aus dem Wertebereich Ganze Zahlen aus dem Wertebereich Wert Vorzeichen Dezimal-binäre Darstellung wertmit Vorzeichen Dezimal-binäre Darstellung wert ohne Vorzeichen Wert

9 Datenformate: Ganze Zahlen Ganze Zahlen aus dem Wertebereich Dezimal-binäre Darstellung wert Zweierkomplement Wert 8/44 Positive Zahlen haben eine führende 0 Nur eine Darstellung für 0 Umrechnung negativer Zahlen: sämtliche Stellen werden negiert zum Ergebnis wird 1 addiert Bsp. -4: negiert: plus 1 1 Resultat: Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

10 Datenformate: Gleitkommazahlen / '331'357 Mantisse 2 Exponent = 135' Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

11 Wie kann ein Komma gleiten? Mantisse = 0.125Exponent = –2 Beispiel Der Wert wird wie folgt umgewandelt: = x 10 0 = x = x Grund: Erlaubt die Darstellung sehr kleiner Zahlen auch wenn für die Mantisse wenig Bits zur Verfügung stehen (kleine Präzision). 10/44

12 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 (2 16 Zeichen) ISO 8859 (256 Zeichen) 11/44

13 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

14 Prinzip der Rasterdaten rot blau gelb türkis Farbe des Bild- punktes (Pixel): rotgrünblau rgb-Werte,die als Bilddaten gespeichert werden: 13/ '711' '776'960 2'927' Kombinierter rgb-Wert: Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

15 Prinzip der Vektorgrafik Beispiel (PostScript Standard) Die Instruktionsfolge: newpath moveto lineto moveto lineto arc stroke showpage 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: /44

16 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.

17 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.

18 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

19 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

20 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

21 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Datenformate: Auszeichnungssprachen (markup languages) 20/44 DTD für Visulab-Daten XML-Datei für Visulab-Daten

22 Interaktion mit Informatikmitteln: Betriebsarten Datenformate ProgrammierungProgrammierung Hilfsmittel für die Programmierung Webprogrammierung

23 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 Sequenz Verzweigung Wiederholung Variable Datei Objekt 21/44 Algorithmen + Datenstrukturen = Programme

24 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

25 Die Problemstellung diktiert die Datenstrukturen 23/44 Berechnungen:Variablen Fixe Listen:Felder (Arrays) Dynamische Listen: verkettete Variablen (Records) Permanente Daten:Dateien (Files) AFLPTX xyz A2F3P4T 1234 AFLPTX L output Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

26 Zwei Arten der Programmausführung (vereinfacht) 1) Programm wird kompiliert (übersetzt) 2) Programm wird interpretiert Prozessor- Instruktionen Compiler Quellcode Interpreter Quellcode 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

27 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

28 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

29 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)

30 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

31 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

32 Interaktion mit Informatikmitteln: Betriebsarten Datenformate Programmierung Hilfsmittel für die ProgrammierungHilfsmittel für die Programmierung Webprogrammierung

33 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Hilfsmittel für den Programmentwurf Pseudocode Natürlichsprachliche, knappe Beschreibung unter Einbezug der Notation einer Programmier- sprache Flussdiagramme Gerichtete Liniendiagramme zur Illustration von Abläufen (Programmablaufplan) Struktogramme Darstellung von Aktionen durch Blöcke, die aneinander gereiht oder ineinander geschachtelt werden (Nassi-Shneiderman- Diagramm) 30/44

34 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

35 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: OperationFallunterscheidung 32/44 Eingabe/Ausgabe

36 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 >= 32 then begin subtrahiere 32 multipliziere mit 5/9 write(C) end else gebe warnung aus 33/44 Angenommen, wir rechnen die Temperaturen nur um, falls sie über dem Gefrierpunkt sind, andernfalls geben wir eine Warnung aus.

37 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Flussdiagramme: Wiederholung F = 0 Stopp F < 101 Berechne C write(F,C) erhöhe F wahr falsch Pseudocode: F = 0 solange F < 101 begin 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.

38 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Struktogramme: Sequenz, Fallunterscheidung Sequenz Anweisung 1 Anweisung Anweisung n Fallunterscheidung Anweisung 1Anweisung 2 janein Bedingung b 35/44

39 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Struktogramme: Wiederholung Schleife 0 bis n mal Solange Bedingung b tueAnweisungen Schleife genau n mal Für i = Anfangswert bis Endwert tueAnweisungen 36/44

40 Struktogramme: Beispiele Für F = 0 bis 100, Schrittw. 1 F = F -32 tueC = 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 = a 2 - 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

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

42 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 Client zur Interpretation senden Interaktion zwischen Web und Nutzer auf Mausklicks beschränkt "Plakatcharakter" der Kommunikation 38/44 Internet

43 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

44 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich Clientseitige dynamische Webauftritte ClientServer 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 Client zur Interpretation senden 4. Bearbeitung 40/44

45 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

46 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 Datenelement Trennzeichen Hinweis: Kein Schutz gegen Missbrauch!! 42/44

47 Programmieren kann in allen Bereichen des Informatik- Arbeitsplatzes eingesetzt werden! Datenverwaltung InformationserzeugungDatenverarbeitung Kommunikation 43/44 Informatik für Biol. & Pharm. Wissenschaften © Departement Informatik, ETH Zürich

48 Programmiervorlesungen für die Naturwissenschaften (FS) Anwendungsnahes Programmieren (Java) Programmieren und Problemlösen (Delphi) 44/44

49 Danke für Ihre Aufmerksamkeit


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

Ähnliche Präsentationen


Google-Anzeigen