Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Agenda für heute, 21. Juni 2006 Interaktion mit InformatikmittelnInteraktion mit Informatikmitteln Grundlagen der Programmierung Hilfsmittel für die Programmierung.

Ähnliche Präsentationen


Präsentation zum Thema: "Agenda für heute, 21. Juni 2006 Interaktion mit InformatikmittelnInteraktion mit Informatikmitteln Grundlagen der Programmierung Hilfsmittel für die Programmierung."—  Präsentation transkript:

1 Agenda für heute, 21. Juni 2006 Interaktion mit InformatikmittelnInteraktion mit Informatikmitteln Grundlagen der Programmierung Hilfsmittel für die Programmierung Webprogrammierung

2 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Interaktion mit Informatikmitteln DialogbetriebEchtzeitbetriebStapelbetrieb 2/35

3 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Interaktion mit Informatikmitteln Dialogbetrieb 3/35 Interaktive Eingabe von Instruktionen und Daten Ausgabe von Daten in Echtzeit Steuerung eines Programms während seiner Ausführung möglich

4 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Interaktion mit Informatikmitteln Echtzeitbetrieb 4/35 Kurze Reaktionszeiten Hohe Zuverlässigkeit Messen, Regeln, Ablauf- steuerungen

5 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Interaktion mit Informatikmitteln Stapelbetrieb 5/35 Vollständig spezifizierter Auftrag wird ausgeführt Keine Möglichkeit, auf den Programmablauf einzuwirken Rechenintensive Arbeiten, Routineaufgaben (z.B. autom. Backup) Batch-Dateien (.BAT), Makros

6 Interaktion mit Informatikmitteln Grundlagen der ProgrammierungGrundlagen der Programmierung Hilfsmittel für die Programmierung Webprogrammierung

7 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, 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 6/35

8 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Instruktionen sind durch die Programmierumgebung vorgegeben Anwendungen: Befehle der Anwendung + ev. Anweisungen einer Programmiersprache Betriebssystem:Anweisungen einer Kommandosprache Webseite:Anweisungen einer Skriptsprache Aber was führt der Prozessor schlussendlich aus? 7/35

9 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Hierarchische Gliederung von Programmierumgebungen Anwendungsspezifisch Programmiersprache Assemblierer Maschinensprache Prozessor Befehlssatz INCR2; MOVR2,R0; CALCULATE ADDR1,R2; F(3) while not finished do begin if temp >= 32 then Sub Makro1 () Range("B6").Select 8/35

10 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Zwei Arten der Programmausführung (vereinfacht) 1) Programm wird kompiliert (übersetzt) 2) Programm wird interpretiert Maschinen- code Compiler Quellcode Interpreter Quellcode Maschinen- code Prozessor Compiler Prozessor (Wird das Programm verändert, muss es neu kompiliert werden) 9/35

11 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, 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 10/35

12 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Debugger (Entstörer) 11/34 Sucht formale Fehler Prüft während der Ausführung Kann ein- oder ausgeschaltet werden 11/35

13 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Programmiersprachen: Historische Entwicklung (Bsp.) 1999DELPHI 2005 JINI 1998 Active Oberon JAVA 1995FORTRAN 95 DELPHI Object-Pascal VBA Oberon 1986 Eiffel 1985Turbo-PascalC FORTRAN 77 PASCALMODULA-2SMALLTALK 80 CBASIC 12/35

14 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Spezialfall Objektorientierung 13/35 Click auf Fakultät löst Nachricht aus: "wende Methode M1 an" Bildschirm Programmcode

15 Interaktion mit Informatikmitteln Grundlagen der Programmierung Hilfsmittel für die ProgrammierungHilfsmittel für die Programmierung Webprogrammierung

16 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, 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) 14/35

17 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, 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) 15/35

18 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Flussdiagramme Drei elementare Konstruktionselemente für Algorithmen: Sequenz, Fallunterscheidung und Wiederholung Diese Elemente lassen sich durch geeignetes Aneinanderreihen der folgenden zwei Symbole grafisch darstellen: OperationFallunterscheidung 16/35 Eingabe/Ausgabe

19 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Flussdiagramme: Sequenz read(F) T = F - 32 C = T x 5 / 9 write(C) Am Beispiel der Temperaturumrechnung: 17/35

20 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Flussdiagramme: Fallunterscheidung read(F) T = F - 32 C = T x 5 / 9 write(C) Temperaturen nur umrechnen, falls sie über dem Gefrierpunkt sind, sonst Warnung 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 18/35

21 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Flussdiagramme: Wiederholung F = 0 Stopp Für jedes ganze Grad Fahrenheit zwischen 0 und 100 die entsprechende Temperatur in Celcius angeben 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 19/35

22 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Beispielaus dem Labor Automatische Titration 20/35

23 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Struktogramme: Sequenz, Fallunterscheidung Sequenz Anweisung 1 Anweisung Anweisung n Fallunterscheidung Anweisung 1Anweisung 2 janein Bedingung b 21/35

24 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Struktogramme: Wiederholung Schleife 0 bis n mal Solange Bedingung b tueAnweisungen Schleife genau n mal Schleife 1 bis n mal WiederholeAnweisungen bis Bedingung b Für i = Anfangswert bis Endwert tueAnweisungen In Struktogrammen sind unbedingte Sprünge (goto) nicht möglich 22/35

25 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Struktogramme: Beispiele Für F = 0 bis 100, Schrittw. 1 F = F -32 tueC = F 5/9 Ausgabe C Umrechnungstabelle, für Grad Fahrenheit zwischen 0 und 100 Lösung einer quadratischen Gleichung 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 23/35

26 Interaktion mit Informatikmitteln Grundlagen der Programmierung Hilfsmittel für die Programmierung WebprogrammierungWebprogrammierung

27 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, 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 24/35 Internet

28 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, 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, zur Steuerung des Erscheinungsbildes im Browser Z.B. in Abhängigkeit von Mausaktionen oder von Zeitgebern (Animationen) 25/35

29 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Clientseitige dynamische Webauftritte ClientServer 1. Anforderung 3. Antwort Dynamische Effekte für komfortable Benutzerschnittstellen (z.B. Erscheinen von neuen Fenstern mit Zusatz-informationen) 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 sorgfältig einsetzen! 4. Bearbeitung 26/35

30 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Serverseitige dynamische Webauftritte ClientServer 1. Anforderung 3. Antwort 2. Bearbeitung Programmaufruf (*.pl) CGI (Common Gateway Interface) Am meisten verbreitete Technik um Programme in Webservern aufzurufen Für die Programmierung selbst werden sog. Script- sprachen verwendet 27/35

31 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Was sind Scriptsprachen? ScriptingD as Zusammenfassen von Programmaufrufen zu einem "Drehbuch" (script), das nach belieben auf- gerufen werden kann ScriptspracheEr weiterung des Scripting um Programmier- sprachliche Elemente (Übergabe von Resultaten an Folgeprogramm, Überspringen von Programmen, Wiederholungen) 28/35

32 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Clientseitige Dynamik: Beispiel Grundlage des Webs sind HTML-Dokumente (HyperText Markup Language) HTML-Dokumente sind Textdateien, deren Inhalt durch einen Browser interpretiert wird und die mittels Hypertext- Techniken andere Dokumente einbinden können Markups sind Anweisungen in einem HTML-Dokument, die angeben, wie Texte und grafische Elemente zu präsentieren sind 29/35

33 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Markups Ein HTML-Dokument besteht aus einer Folge von Markups, die durch einen Browser der Reihe nach abgearbeitet werden Beispiel Diese Markups codieren eine 400 x 300 Pixel grosseTabelle, die sichtbar gemacht wird (Border=1) 30/35

34 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Markups Markups sind z.B.:... (Table Row) oder... (Table Data) Die Symbole:,, werden als Tags oder Marken bezeichnet, wobei eine Startmarke und eine Endmarke ist Tags werden mit Attributen ergänzt, welche die Details der Darstellung angeben: 31/35

35 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Formulare: Interaktive Webseiten Durch Drücken des "Bestellen!"-Knopfes (Submit-Knopf) wird das Formular zum Ziel gesandt (gegeben durch den URL der Webseite des Formulars) 32/35

36 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, 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!! 33/35

37 Programmieren kann in allen Bereichen des Informatik- Arbeitsplatzes eingesetzt werden! Datenverwaltung InformationserzeugungungDatenverarbeitung Kommunikation 34/35

38 Informatik für Biol. & Pharm. Wissenschaften © Institut für Computational Science, ETH Zürich Programmiervorlesungen für die Naturwissenschaften (SS) Anwendungsnahes Programmieren (Java) Programmieren und Problemlösen (Delphi) 35/35

39 Danke für Ihre Aufmerksamkeit


Herunterladen ppt "Agenda für heute, 21. Juni 2006 Interaktion mit InformatikmittelnInteraktion mit Informatikmitteln Grundlagen der Programmierung Hilfsmittel für die Programmierung."

Ähnliche Präsentationen


Google-Anzeigen