150 likes | 406 Views
Prof. Dr. Fritz Jobst. 2. Was ist Programmieren?. Eine Anweisung ist ein Befehl an die CPU Addiere, subtrahiere, transportiere von a nach b, Ein Programm ist eine Folge von AnweisungenBeim Programmieren werden diese Anweisungen zusammengestelltFr die Anweisungen gelten Regeln: Programmierspr
E N D
1. PG1: Programmieren in Java Prof. Dr. Fritz Jobst & Hubert Feyrer
FH Regensburg
FB Informatik/Mathematik
2. Prof. Dr. Fritz Jobst 2 Was ist Programmieren? Eine Anweisung ist ein Befehl an die CPU
Addiere, subtrahiere, transportiere von a nach b,
Ein Programm ist eine Folge von Anweisungen
Beim Programmieren werden diese Anweisungen zusammengestellt
Fr die Anweisungen gelten Regeln: Programmiersprache
heutige Computer verarbeiten mehr als 1.000.000.000 Anweisungen pro sec.
Also: Wie organisiert man solche Ablufe?
3. Prof. Dr. Fritz Jobst 3 Beispiel aus dem Alltag if (hunger)
{
goto khlschrank;
open door;
eat leberkas;
}
return 0;
Unter einem Algorithmus versteht man allgemein eine genau definierte Handlungsvorschrift zur Lsung eines Problems oder einer bestimmten Art von Problemen.
Die einzelnen Schritte fhren zur Lsung des Hunger-Problems!
4. Prof. Dr. Fritz Jobst 4 Algorithmen Woher stammt das Wort Algorithmus?
Abu Ja'far Muhammad ibn Musa Al-Khwarizmi
http://www-history.mcs.st-andrews.ac.uk/history/ Mathematicians/Al-Khwarizmi.html
Abu Abdallah Muhammad ibn Musa al-Chwarizmi
http://de.wikipedia.org/wiki/ Muhammad_ibn_Musa_al-Chwarizmi
Bagdad ca. 780 - ca. 850
Kalif: Harun al Rashid
Hauptwerk: Hisab al-jabr w'al-muqabala
? Algebra
Lsen von quadrat. Gleichungen
5. Prof. Dr. Fritz Jobst 5 Algorithmen, Anweisungen, Programm Eine CPU kann nur elementare Anweisungen:
Addiere a auf b, Subtrahiere a von b
Transportiere den Inhalt des Speichers bei a nach b
Vergleiche a mit b
Fahre bei Anweisung x fort, falls Bedingung erfllt
Durch Aneinanderreihung elementarer Befehle erhlt man leistungsfhige Teilsysteme:
Z.B. Anweisungen zur Lsung einer Gleichung nach einem bestimmten Verfahren (Algorithmus)
Dies bezeichnet man auch als Programm.
Die Anweisungen mssen in einer bestimmten Sprache vorliegen, der Programmiersprache
6. Prof. Dr. Fritz Jobst 6 Vom Menschen zur Maschine Maschinennahe Programmiersprachen
Befehle der CPU werden in symbolischer Form im P-Code fr Java in etwa so geschrieben:
Move Stack, Speicher bei Adresse 1 // a
Move Stack, Speicher bei Adresse 2 // b
Add // Addiere beide Operanden
Move Ergebnis, Speicher bei Adresse 3 // c
Problemorientierte Programmiersprachen
c = a + b;
Es gibt viele Programmiersprachen.
Sie lassen sich in verschiedene Typen einteilen.
7. Prof. Dr. Fritz Jobst 7 Programmiersprachen Assemblersprachen
Pentium, Sparc, ...
Funktionale Sprachen
Haskell
Logische Sprachen
Prolog
Prozedurale Sprachen
C, Pascal, FORTRAN, COBOL, ...
Objektorientierte Sprachen
Smalltalk, C++, Java
8. Prof. Dr. Fritz Jobst 8 Geschichte der Programmiersprachen 1956 FORTRAN, COBOL
1960 Algol 60
1970 C (Kernighan/Ritchie, Bell Labs) Pascal (N. Wirth, ETH Zrich)
1980 Modula 2
1985 C++
1990 Oberon
1996 Java: Jan. 1996 JDK 1.0
Diese Darstellung ist stark vereinfacht!
10. Prof. Dr. Fritz Jobst 10 Was ist Java? "The Java Language: A White Paper" beschreibt Java als eine Programmiersprache:
einfach
objektorientiert
robust
sicher
parallelisierbar
plattformunabhngig (leicht portierbar)
modular
vollwertig
11. Prof. Dr. Fritz Jobst 11 Ein erstes Java-Programm public class Hello {
public static void main (String[] args) {
System.out.println ("Hello World");
}
}
Das Programm (= Folge von Anweisungen) zeigt auf der Konsole (Ausgabefenster) den folgenden Text an:
Hello World
12. Prof. Dr. Fritz Jobst 12 Geschichte von Java Entwickelt von
http://java.sun.com
1990 Consumer Electronics: Mikrowelle, digitale Kalender, Video-on-demand
erfordert billige, robuste, einfache, kleine Produkte
Evaluation C++ (nicht einfach und sicher genug)
Bill Joy, James Gosling: geeignete, neue Sprache Oak
1993 WWW Erfolg: neue Chancen fr Java als plattform- unabhngige (Web-)Sprache Ich war in Boston Zeuge der historischen Begegnung von Sun und Microsoft. Bill Gates hatte am Vorabend Java zu Sun Bedingungen lizensiert und im Panel saen sich Suns Java Entwickler (James Gosling, Bill Joy) und Microsofts Active X Desigener (Thomas Reardon) gegenber.Ich war in Boston Zeuge der historischen Begegnung von Sun und Microsoft. Bill Gates hatte am Vorabend Java zu Sun Bedingungen lizensiert und im Panel saen sich Suns Java Entwickler (James Gosling, Bill Joy) und Microsofts Active X Desigener (Thomas Reardon) gegenber.
13. Prof. Dr. Fritz Jobst 13 Geschichte von Java 1995 Verbreitung von Java
Alpha-Version und HotJava, JDK Beta,
1996 Januar Erstes Java Development Kit JDK 1.0 (erste offizielle Version)
1996 Mrz Java Vorlesung an der FH (Jobst)
1997 Java Development Kit JDK 1.1
2003 Software Development Kit SDK 1.4.2
2004 Software Development Kit SDK 1.5 Java5
2007 Software Development Kit SDK 1.6 Java6
Java 2 Platform, Standard Edition (J2SE)
14. Prof. Dr. Fritz Jobst 14 Einsatzgebiete von Java Auf den Rechnern der Anwender (Client)
Programme mit grafischen Oberflchen
Unabhngig von den Rechnern (Plattform)
Auf den Rechnern der Anbieter (Server)
Homebanking
Hotelbuchungen
Dies ist fr den Anwender oft nicht feststellbar, denn diese Java-Programme laufen auf den Rechnern der Dienste-Anbieter
Viele groe Client/Server-Anwendungen benutzen Java im Server-Anteil
16. Prof. Dr. Fritz Jobst 16 Wie wird ein Java-Programm aktiviert? Als Anwendung: java datei parameter
Aus einem Kommando-Eingabe-Fenster heraus
Windows: cmd
UNIX/Linux: shell
Z.B.: java Hello ? Das vorige Beipiel
Als Applet in einem Browser (dort anmelden!)
Als Servlet in einem Server (dort anmelden!)
Als xyzlet irgendwo (dort anmelden!)
Also:
Entweder als eigene Anwendung oder
als Teil eines Systems