1. Einführung Grundlagen der Programmierung 1 (Java)
|
|
- Jacob Lichtenberg
- vor 8 Jahren
- Abrufe
Transkript
1 1. Einführung Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 27. September 2005
2 Agenda Agenda Übersicht und Organisation Vom Problem zum Programm Algorithmen Programmiersprachen Java Literatur , Seite 2
3 Übersicht und Organisation Gemeinsames Kennenlernen Was ist Ihr persönlicher und beruflicher Hintergrund? Welche Computererfahrungen haben Sie? Welche Programmiersprachen kennen Sie? Haben Sie schon in Java programmiert? , Seite 3
4 Übersicht und Organisation Organisation Vorlesung: Wöchentlich dienstags, 18:00 21:00, D14/004 Praktikum: Zweiwöchentlich mittwochs, 18.00h h, D15/102. Start am Ausgabe der Übungszettel in der Vorlesung Unterstützung bei der Lösung der Aufgaben in der Übung durch Ansgar Berhorn und Bernhard Humm Bearbeitung der Übungsaufgaben in 2er-Arbeitsgruppen zusätzliches Üben ist zwingend notwendig! Keine Vorlesungen / Praktika während der Schulferien in Hessen: Herbstferien: Weihnachtsferien: Osterferien: Ende der Lehrveranstaltungen: , Seite 4
5 Übersicht und Organisation Organisation Leistungsüberprüfung: Klausur am Semesterende (Termin: letzter Vorlesungstermin) Benotete Praktikumsaufgaben am Semesterende , Seite 5
6 Übersicht und Organisation Ein Zitat zu Beginn Vor der Wahl, ein theoretischer Physiker oder ein Programmierer zu werden, entschied ich mich für die intellektuell anspruchsvollere Aufgabe Edsger W. Dijkstra ( ) auf der sd&m-konferenz in Bonn, , Seite 6
7 Übersicht und Organisation Was ich gerne vermitteln möchte Grundlagen der Programmierung (Java) Konzepte Java Werkzeuge Systementwurf Programmiersprachen Objekt-Orientierung Algorithmen und Daten- Strukturen Berechenbarkeit, Korrektheit Syntax Semantik Muster Guter Programmierstil JDK 1.5 Eclipse JUnit Checkstyle Jalopy Subversion Praktikum, Diskussionen, Ausblicke zum Weiterdenken , Seite 7
8 Überblick über die Vorlesung Grundlagen der Programmierung 1 (Java) Übersicht und Organisation 1. Einführung 2. Einfache Programme 3. Kontrollstrukturen 4. Objekt-Orientierung I 5. Algorithmen und Datenstrukturen I 6. Interfaces 7. Rekursion 8. Pakete 10. Software-Qualität 11. Algorithmen und Datenstrukturen II 12. Objektorientierung II 13. Komponenten 14. Design 15. Die Java Klassenbibliothek I 16. Die Java Klassenbibliothek II 17. Software-Kategorien 9. Fehler und Ausnahmen , Seite 8
9 Ausblick auf die Vorlesung Grundlagen der Programmierung 2 (Java) Übersicht und Organisation GUI-Programmierung (nativ und Web) Kommunikation Multithreading DB-Zugriff File I/0 Enterprise Java Reflection , Seite 9
10 Agenda Agenda Übersicht und Organisation Vom Problem zum Programm Algorithmen Programmiersprachen Java Literatur , Seite 10
11 Vom Problem zum Programm Vom Problem zum Programm Problem komplex mehrdeutig Analyse Mensch Maschine Design Compilation Programmierung Laufzeitumgebung Deployment Ausführung Spezifikation Design / Algorithmus Programm Maschinenprogramm semi-formal nicht vollständig semi-formal nicht vollständig präzise meist normiert unabhängig vom Prozessor primitiv abhängig vom Prozessor auf konkretem Prozessor , Seite 11
12 Vom Problem zum Programm Programmieren ist ein Problem so exakt beschreiben, dass es ein Computer lösen kann kreative Tätigkeit Ingenieurtätigkeit Nur wenige Leute können gut programmieren , Seite 12
13 Agenda Agenda Übersicht und Organisation Vom Problem zum Programm Algorithmen Programmiersprachen Java Literatur , Seite 13
14 Algorithmus: schrittweises, präzises Verfahren zur Lösung eines Problems Algorithmen Name Parameter Variable Summiere Zahlen von 1 bis n ( n, sum) 1. sum 0 2. zahl 1 3. Wiederhole, solange zahl n 3.1 sum sum + zahl 3.2 zahl zahl + 1 Folge von Schritten Programm = Beschreibung eines Algorithmus in einer Programmiersprache , Seite 14
15 Algorithmen Mach den Schreibtischtest! ad Summiere Zahlen v on 1 bis n in: n sum <- 0 n Sum zahl zahl < zahl <= n? false out: sum true sum <- sum + zahl zahl <- zahl , Seite 15
16 Algorithmen Für jedes Problem existieren mehrere Algorithmen Summiere Zahlen von 1 bis n ( n, sum) 1. sum n * (n+1) / 2 Welcher Algorithmus ist besser? Welcher ist leichter verständlich? Wie verhält sich die Laufzeit der beiden Algorithmen? , Seite 16
17 Algorithmen Variablen Sind benannte Behälter für Werte sum 3 n 4 können ihren Wert ändern sum sum Haben einen Datentyp = Menge erlaubter Werte Typ entspricht Form: Datentyp Zahl Zeichen In eine Zahlenvariable passen nur Zahlen 1 a In eine Zeichenvariable passen nur Zeichen Werte 2 3 b c , Seite 17
18 Algorithmen Anweisungen: Wertzuweisung, Anweisungsfolge Wertzuweisung: 1. Werte den Ausdruck aus 2. Weise das Ergebnis der Variablen zu sum sum + 1 Variable Ausduck ad Sw ap Anweisungsfolge (Sequenz) in: x, y führe Anweisungen sequenziell aus h <- x x <- y y <- h out: y, x , Seite 18
19 Algorithmen Auswahl (auch Verzweigung, Abfrage, Selektion) Auswertung der Bedingung ad Auswahl Ergebnis: Wahrheitswert (true, false) in: x, y Abhängig vom Ergebnis: Ausführung weiterer Anweisungen [true] x < y [false] min <- x min <- y out: min , Seite 19
20 Algorithmen Wiederholung (auch Schleife, Iteration) Anweisungen in der Schleife werden so lange ausgeführt, wie Bedingung wahr While-Schleife Andere Schleifentypen: Repeat-Schleife For-Schleife ad Exponentialfunktion x <- n y <- 1 x > 0 in: n [false] [true] out: y y <- 2 * y x <- x , Seite 20
21 Algorithmen Warum funktioniert der Algorithmus? ad Exponentialfunktion Schleifeninvariante: y * 2 x = 2 n in: n Schreibtischtest: x <- n y <- 1 x 2 x y x = 0 y = 2**n x > 0 [true] [false] out: y y <- 2 * y y * 2**x = 2**n x <- x , Seite 21
22 Algorithmen Beispiel: Euklid scher Algorithmus Warum funktioniert der Algorithmus? (ggt teilt x) & (ggt teilt y) ggt teilt (x - y) ggt teilt (x q*y) ggt teilt rest GGT(x, y) = GGT(y, rest) ad Euklid'scher Algorithmus in: x, y rest <- x mod y x y rest rest!= 0 [false] ggt <- y [true] x <- y out: ggt y <- rest rest <- x mod y , Seite 22
23 ad Exponentialfunktion Algorithmen in: n Algorithmenschreibweisen x <- n y <- 1 Grafische Notationen: UML Aktivitätsdiagramme (schon bekannt; ähnlich Ablaufdiagramme / Flussdiagramme) Struktogramme (Nassi- Shneiderman-Diagramme) Textuelle Notationen: Pseudocode Programmiersprachen x > 0 [true] y <- 2 * y x <- x - 1 [false] x = 0 y = 2**n out: y y * 2**x = 2**n Summiere Zahlen von 1 bis n ( n, sum) 1. sum 0 2. zahl 1 3. Wiederhole, solange zahl n 3.1 sum sum + zahl 3.2 zahl zahl , Seite 23
24 Agenda Agenda Übersicht und Organisation Vom Problem zum Programm Algorithmen Programmiersprachen Java Literatur , Seite 24
25 Programmiersprachen Beschreibung von Programmiersprachen Syntax Regeln, nach denen Sätze gebaut werden dürfen z.b.: Zuweisung = Variable "<-" Ausdruck. Semantik Bedeutung der Sätze z.b.: werte Ausdruck aus und weise ihn der Variablen Grammatik Menge von Syntaxregeln z.b. Grammatik der ganzen Zahlen Ziffer = "0" "1" "2" "3" "4" "5" "6" "7" "8" "9". Zahl = Ziffer {Ziffer}. Ziffer Zahl Ziffer , Seite 25
26 Programmiersprachen EBNF (Erweiterte Backus-Naur-Form) Metazeichen Bedeutung = trennt Regelseiten. schließt Regel ab trennt Alternativen ( ) klammert Alternativen [ ] wahlweises Vorkommen { } 0..n-maliges Vorkommen Beispiel x y (x y) z [x] y {x} y beschreibt x, y xz, yz xy, y y, xy, xxy, xxxy,... z.b. Grammatik der Gleitkommazahlen Zahl = Ziffer {Ziffer}. Gleitkommazahl = Zahl "." Zahl ["E" ["+" "-"] Zahl]. Grammatik der If-Anweisung IfAnweisung = "if" "(" Ausdruck ")" Anweisung ["else" Anweisung] , Seite 26
27 Programmiersprachen Familien von Programmiersprachen ALGOL, AWK, BASIC, C, COBOL, FORTRAN, Pascal, PL/1, REXX, Cyclone 1 je Prozessortyp 6 5 Prozedurale Sprachen Assemblerund Maschinensprachen Programmiersprachen 2 Funktionale Sprachen 3 LISP, Logo, ML, Scheme, Haskell, OPAL, Miranda visuelle Programmierumgebungen (z.b. VisualBasic, Delphi), Datenbanksprachen (zum Beispiel SQL, dbase, Clipper) Sonstige Sprachen und Umgebungen 4 Logische und regelbsierte Sprachen Objektorientierte Sprachen Smalltalk, Eiffel, C++, Objective-C, Java, C#, Oberon, Python, Ruby Prolog OPS5, XSLT , Seite 27
28 Agenda Agenda Übersicht und Organisation Vom Problem zum Programm Algorithmen Programmiersprachen Java Literatur , Seite 28
29 Java 2000 Java im Kontext anderer Programmiersprachen Java C++ OO Turbo- PASCAL OBERON MODULA Ada Eiffel SMALLTALK80 COMMON LISP PROLOG C INTER LISP APL BCPL PL360 PL/1 COBOL PASCAL Basic ALGOL68 SIMULA LISP Fortran ALGOL 1950 Assemblersprachen Maschinensprachen , Seite 29
30 Java Java Historie 1991 im Green-Projekt (Sun Microsystems) als Sprache Oak entwickelt. Ziel: einfache, objekt-orientierte, plattformunabhängige Sprache zur Programmierung von Micro-Computern in Geräten der Konsumelektronik 1995 von Sun Microsystems ersmals als Sprache Java vorgestellt 1995 Netscape lizenziert mit dem Navigator 2.0 erstmals Java-Technologie von Sun - Java-Applets können über das Netz von einem zentralen Server geladen werden Freigabe des Java Developer Kit 1.0 JDK 1.0 und JDK 1.1, das ab April 1997 offiziell als Java One auf dem Markt ist 1998 JDK 1.2 enthält als Erweiterung insbesondere die Java Foundation Classes mit dem Swing Toolset zur Gestaltung graphischer Oberflächen (GUI). Ab der Version 1.2 werden die JDK-Versionen 1.x als Java 2 SDK bezeichnet (SDK=Software Development Kit) JDK 1.3, 1.4: Fehlerkorrekturen/Performance-Verbesserungen gegenüber Vorgängerversionen 2004 JDK 1.5 (Java 5): Umfangreiche Programmiersprachen-Erweiterungen, zum Beispiel Generics, Boxing / Unboxing , Seite 30
31 Java Compiler versus Interpreter main() { } C-Programm Xxxxx.c... E APL-Anweisungen übersetzt C-Compiler prozessorabhängiger... Maschinen- Code Xxxxx.exe a.out... führt aus CPU übersetzt einzelne APL-Anweisungen während der Laufzeit in Maschinencode, der von der CPU ausgeführt wird APL-Interpreter = = , Seite 31
32 Java Das Konzept der Virtual Machine in Java class Appl Java-Programm Xxxxx.java Bytecode Xxxxx.class übersetzt <Opcodes> iadd... entspricht Java-Compiler Aufruf: javac Xxxxx.java Java Virtual Machine implementiert führt aus Java-Interpreter Aufruf: java Xxxxx =6 Bei der Java Virtual Machine handelt es sich nicht um einen tatsächlich existierenden Prozessor, sondern nur um die Spezifikation eines solchen. Daher wird bei Java ein Programm gebraucht, das einen real existierenden Rechner in eine Java-Maschine verwandelt. Hierbei handelt es sich um den Java-Interpreter , Seite 32
33 Java Ein einfaches Java-Programm Der Programmtext muss in einer Datei namens Sample.java stehen class Sample { public static void main (String[] arg) { System.out.println("Virus detected!"); } } , Seite 33
34 Java JDK & Co. Übersetzen C:\> cd MySamples wechselt ins Verzeichnis mit der Quelldatei C:\MySamples> javac Sample.java erzeugt Datei Sample.class Ausführen C:\MySamples> java Sample ruft main-methode der Klasse Sample auf Virus detected! , Seite 34
35 Agenda Agenda Übersicht und Organisation Vom Problem zum Programm Algorithmen Programmiersprachen Java Literatur , Seite 35
36 Literatur Literatur Arnold K., Gosling J.: The Java Programming Language. Addison-Wesley, Krüger, Guido. Handbuch der Java-Programmierung. Addison-Wesley,2002, 3. Auflage oder kostenlos im Download als HTML-Version (Nachfolger von "Go To Java 2" und "Go To Java 2, 2. Auflage ) Mössenböck, H.: Sprechen Sie Java? Eine Einführung in das systematische Programmieren. 3. Auflage, dpunkt.verlag, 2005 Echtle K., Goedicke M.: Lehrbuch der Programmierung mit Java. dpunkt.verlag, Flanagan, David. Java in a Nutshell. Nutshell Handbooks. O'Reilly & Associates, Sebastopol, CA (Deutsche Ausgabe für ) Flanagan, David. Java Foundation Classes in a Nutshell. Nutshell Handbooks. O'Reilly & Associates, Sebastopol, CA WWW: - Java-Seiten von Sun "The Java Tutorial - A practical Guide for Programmers", Sammlung von Java-Ressourcen - Online Java-Zeitschrift , Seite 36
1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi
1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in
Mehr1. Einführung Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt
1. Einführung Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 1 Ein Zitat zu Beginn Vor der Wahl, ein theoretischer Physiker oder ein Programmierer
Mehr2. Java Schnellkurs Advanced Programming Techniques. Wintersemester 2009/10 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik
2. Java Schnellkurs Advanced Programming Techniques Wintersemester 2009/10 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Advanced
MehrInformatik I Tutorium WS 07/08
Informatik I Tutorium WS 07/08 Vorlesung: Prof. Dr. F. Bellosa Übungsleitung: Dipl.-Inform. A. Merkel Tutorium: 12 Tutor: Jens Kehne Tutorium 3: Dienstag 13. November 2007 Übersicht Tutorium Übersicht
MehrVorkurs Informatik WiSe 15/16
Java 1 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2015 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello! 12.10.2015 Dr. Werner Struckmann / Stephan
Mehr1. Einführung Advanced Programming Techniques. Wintersemester 2009/10 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik
1. Einführung Advanced Programming Techniques Wintersemester 2009/10 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Advanced
MehrProgrammieren in Haskell Einführung
Programmieren in Haskell Einführung Peter Steffen Universität Bielefeld Technische Fakultät 16.10.2009 1 Programmieren in Haskell Veranstalter Dr. Peter Steffen Raum: M3-124 Tel.: 0521/106-2906 Email:
MehrKontrollstrukturen - Universität Köln
Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,
MehrVorlesung Informatik II
Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm
Mehr7. Pakete Grundlagen der Programmierung 1 (Java)
7. Pakete Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 29. November 2005 Einordnung im Kontext der Vorlesung 1.
Mehr10. Programmierungs-Phase: Objektorientierung Software Engineering
10. Programmierungs-Phase: Objektorientierung Software Engineering Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 15. Dezember 2005 Einordnung in den Kontext
MehrDie Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter
Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,
MehrEinführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005
Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm
MehrGrundlagen der Programmierung UE
Grundlagen der Programmierung UE Research and teaching network GdP UE H. Prähofer, R. Wolfinger 1 Vortragende Dr. Herbert Praehofer (G1 u. G2) Mag. Reinhard Wolfinger (G3 u. G4) Institute for System Software
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrII.1.1. Erste Schritte - 1 -
! 1. Grundelemente der Programmierung! 2. Objekte, Klassen und Methoden! 3. Rekursion und dynamische Datenstrukturen! 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1
Mehr7. Programmierungs- Phase Software Engineering (FB EIT) Wintersemester 2007 / 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik
7. Programmierungs- Phase Software Engineering (FB EIT) Wintersemester 2007 / 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik:
MehrJava-Programmierung mit NetBeans
Java-Programmierung mit NetBeans Steuerstrukturen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg - WS 2012/13 Steuerstrukturen Steuerstrukturen Verzweigungen Alternativen abweisende nichtabweisende
Mehr5. Tutorium zu Programmieren
5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting
MehrGrundlagen der Programmierung UE
Grundlagen der Programmierung UE Research and teaching network GdP UE H. Prähofer, M Löberbauer 1 Vortragende Dipl.-Ing. Markus Löberbauer (G1) Dr. Herbert Praehofer (G2 u. G3) Institute for System Software
MehrHello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.
Hello World Javakurs 2014, 1. Vorlesung Sebastian Schuck basierend auf der Vorlage von Arne Kappen wiki.freitagsrunde.org 3. März 2014 This work is licensed under the Creative Commons Attribution-ShareAlike
MehrInstitut für Telematik Universität zu Lübeck. Programmieren. Kapitel 0: Organisatorisches. Wintersemester 2008/2009. Prof. Dr.
Institut für Telematik Universität zu Lübeck Programmieren Kapitel 0: Organisatorisches Wintersemester 2008/2009 Prof. Dr. Christian Werner 1-2 Überblick Ziele Inhaltsüberblick Ablauf der Veranstaltung
MehrJAVA als erste Programmiersprache Semesterkurs
JAVA als erste Programmiersprache Semesterkurs 0 - Einstieg WS 2012 / 2013 Prof. Dr. Bodo Kraft Prof. Dr. Bodo Kraft FH Aachen University of Applied Sciences Fachbereich Medizintechnik und Technomathematik
MehrProgrammierung 2. Übersetzer: Code-Erzeugung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.
1 Programmierung 2 Übersetzer: Code-Erzeugung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 Bytecodes Der Java Übersetzer erzeugt keine Maschinensprache
MehrModellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 21. Oktober 2015 Automat versus Computer Ein Automat ist eine Maschine,
MehrJava Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung
Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Ludwig-Maximilians-Universität München Institut für Informatik Programmierung und Softwaretechnik (PST) Prof. Wirsing 6. Mai 2009 1 Der Name Java
Mehr1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.
Java 1 Einführung Grundlegende Übungsaufgaben Arbeitsauftrag 1.1 1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien. Beispiel: Bedienung eines Getränkeautomaten
MehrIII.1 Prinzipien der funktionalen Programmierung - 1 -
1. Prinzipien der funktionalen Programmierung 2. Deklarationen 3. Ausdrücke 4. Muster (Patterns) 5. Typen und Datenstrukturen 6. Funktionale Programmiertechniken III.1 Prinzipien der funktionalen Programmierung
MehrComputeranwendung und Programmierung (CuP)
Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag
MehrPraktikum: Einstieg: Arbeitsplatz, JCreator
Modul OPR Praktikum: Einstieg: Arbeitsplatz, JCreator Aufgabe 1 Richten Sie Ihren OPR-Arbeitsplatz ein: Java-Tool JCreator (nur lauffähig machen!) ->Erklärungen kommen später! Wie funktioniert Java? Der
MehrGraphic Coding. Klausur. 9. Februar 2007. Kurs A
Graphic Coding Klausur 9. Februar 2007 Kurs A Name: Matrikelnummer: Hinweise - Es sind keine Hilfsmaterialien erlaubt. (Keine Bücher, Taschenrechner, Handys) - Sie haben zwei Stunden Zeit. - Insgesamt
MehrAllgemeines. Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C. #include <stdio.h>
Allgemeines Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C #include main() { printf( hello world\n ); } Peter Sobe 1 Die Großfamilie der C-Sprachen
MehrEinführung in Javadoc
Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:
Mehr1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.
1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik
MehrEin Blick voraus. des Autors von C++: Bjarne Stroustrup. 04.06.2005 Conrad Kobsch
Ein Blick voraus des Autors von C++: Bjarne Stroustrup 04.06.2005 Conrad Kobsch Inhalt Einleitung Rückblick Nur eine Übergangslösung? Was würde C++ effektiver machen? Quelle 2 Einleitung Wo steht C++,
MehrJava Schulung. Objektorientierte Programmierung in Java. Prof. Dr. Nikolaus Wulff
Java Schulung Objektorientierte Programmierung in Java Prof. Dr. Nikolaus Wulff Was ist Java? Java ist eine einfache, objektorientierte, verteilte, interpretierte, robuste, sichere, architekturneutrale,
MehrBerner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1
Kapitel 1 Einstieg in Java Dr. Elham Firouzi 06.09.10 1 1 : Einstieg in Java Einleitung Ein erstes Beispiel Berner Fachhochschule Entwicklung von Java-Programmen Applikationen Applets Vor und Nachteile
MehrJ.5 Die Java Virtual Machine
Java Virtual Machine Die Java Virtual Machine 22 Prof. Dr. Rainer Manthey Informatik II Java-Compiler und Java Virtual Machine Quellcode-Datei class C... javac D.java Java-Compiler - Dateien class class
MehrInhaltsverzeichnis. Was ist Informatik? 5. Programmierung 13. Einleitung. 1 Informatik 7 1.1 Was ist Informatik? 7 1.2 Teilgebiete der Informatik 8
Einleitung Was ist Informatik? 5 1 Informatik 7 1.1 Was ist Informatik? 7 1.2 Teilgebiete der Informatik 8 Programmierung 13 2 Vom Problem über den Algorithmus zum Programm 15 2.1 Vorgehensweise bei der
MehrProgrammieren I. Überblick. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Überblick KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Übersicht Programmieren Programmieren I (1. Semester)
Mehr620.900 Propädeutikum zur Programmierung
620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Lösung der Aufgabe (1/1) Lösung Aufgabe
MehrInhalt. 1. Einführung in die Informatik. 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele.
1. Einführung in die Informatik Inhalt 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele Peter Sobe 1 Darstellung von Algorithmen Aus den Einführungsbeispielen und
MehrErwin Grüner 09.02.2006
FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife
MehrDatentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache
Agenda für heute, 4. März, 2010 Zusammengesetzte if-then-else-anweisungen Datentypen Pascal ist eine streng typisierte Programmiersprache Für jeden Speicherplatz muss ein Datentyp t (Datenformat) t) definiert
MehrJava 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7
Java 7 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Dezember 2011 JAV7 5 Java 7 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
Mehrn 1. Der Begriff Informatik n 2. Syntax und Semantik von Programmiersprachen - 1 -
n 1. Der Begriff Informatik n 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik n "Informatik" = Kunstwort aus Information
MehrWorkshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ
IBBB 2010 Workshop 6 Einführung in die objektorientierte Programmierung Dozenten: J. Penon, J. Frank, A. Schindler Teil: Java mit BlueJ Dozent: A. Schindler Einf. i. d. OOP - Java u. BlueJ / A. Schindler
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen
Grundlagen der Programmierung Prof. H. Mössenböck 3. Verzweigungen If-Anweisung n > 0? j n if (n > 0) x = x / n; ohne else-zweig x x / n j max x x > y? n max y if (x > y) max = x; else max = y; mit else-zweig
MehrÜbungsblatt 3: Algorithmen in Java & Grammatiken
Humboldt-Universität zu Berlin Grundlagen der Programmierung (Vorlesung von Prof. Bothe) Institut für Informatik WS 15/16 Übungsblatt 3: Algorithmen in Java & Grammatiken Abgabe: bis 9:00 Uhr am 30.11.2015
Mehr2D22 Prinzipien der Softwareentwicklung. Prinzipien der Softwareentwicklung S. Strahringer 1
2D22 1 Inhalte der Lehrveranstaltung Einführung in die Programmierung mit PHP Literatur: Theis, Thomas (2010): Einstieg in PHP 5.3 und MySQL 5.4. [für Programmieranfänger geeignet]. 6., aktualisierte Aufl.
MehrEinführung in die Programmierung mit Java
Einführung in die Programmierung mit Martin Wirsing 2 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm... Warum als Programmiersprache verwenden? Ein einfaches -Programm erstellen, übersetzen
MehrProgrammieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen
Mehr1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -
1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik
Mehr1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -
1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik
MehrIT-Basics 2. DI Gerhard Fließ
IT-Basics 2 DI Gerhard Fließ Wer bin ich? DI Gerhard Fließ Telematik Studium an der TU Graz Softwareentwickler XiTrust www.xitrust.com www.tugraz.at Worum geht es? Objektorientierte Programmierung Konzepte
Mehr4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen
4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen Highlights: objektorientierte Sprache Plattformunabhängigkeit bei Hardware und Betriebssystem optimale Einbindung im Internet und Intranet
MehrJava Einführung Programmcode
Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:
MehrEinführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005
Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung
Grundlagen der Programmierung Prof. H. Mössenböck 14. Schrittweise Verfeinerung Entwurfsmethode für Algorithmen Wie kommt man von der Aufgabenstellung zum Programm? Beispiel geg.: Text aus Wörtern ges.:
MehrInformatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler. Joliot-Curie-Gymnasium GR 2010 Nico Steinbach
Informatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler Joliot-Curie-Gymnasium GR 2010 Nico Steinbach 0. Organisatorisches Warum habt Ihr euch für den Kurs eingeschrieben?
MehrAlgorithmik II. SS 2003 Prof. Dr. H. Stoyan Lehrstuhl für Informatik 8 ( Künstliche Intelligenz) Email: stoyan@informatik.uni-erlangen.
Algorithmik II SS 2003 Prof. Dr. H. Stoyan Lehrstuhl für Informatik 8 ( Künstliche Intelligenz) Email: stoyan@informatik.uni-erlangen.de Homepage der Vorlesung Vorbemerkungen I http://www8.informatik.uni-erlangen.de/immd8
Mehr2 Grundlagen der Programmierung
2 Grundlagen der Programmierung In diesem Kapitel bereiten wir die Grundlagen für ein systematisches Programmieren. Wichtigstes Ziel ist dabei die Herausarbeitung der fundamentalen Konzepte von Programmiersprache.
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
MehrKlausur in Programmieren
Studiengang Sensorik/Sensorsystemtechnik Note / normierte Punkte Klausur in Programmieren Sommer 2009, 16. Juli 2009 Dauer: 1,5h Hilfsmittel: Keine (Wörterbücher sind auf Nachfrage erlaubt) Name: Matrikelnr.:
MehrProgrammieren I. Administratives / Java Installation. Thomas Vetter, Brian Amberg, Andreas Forster. 21. September 2010 UNIVERSITÄT BASEL
Programmieren Administratives / Java nstallation Thomas Vetter, Brian Amberg, Andreas Forster UNVERSTÄT BASEL 21. September 2010 Teil Administratives Allgemein Personen Dozent: Prof. Thomas Vetter Assistenten:
MehrObjektorientierte Softwareentwicklung SoSe 15
Objektorientierte Softwareentwicklung SoSe 15 Heinz Faßbender Raum E148 Tel. 0241/6009 51913 Email: fassbender@fh-aachen.de www.fassbender.fh-aachen.de FH AACHEN UNIVERSITY OF APPLIED SCIENCES FACHBEREICH
MehrPraktikum Ingenieurinformatik. Termin 2. Verzweigungen (if-else), printf und scanf, while-schleife
Praktikum Ingenieurinformatik Termin 2 Verzweigungen (if-else), printf und scanf, while-schleife 1 1. Import/Export von Eclipse-Projekten 2. Verzweigungen (if-else-anweisung) 3. printf und scanf 4. Übungsaufgaben
MehrSoftware Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015
Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur
Mehr2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE
2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht
MehrProgrammieren I. Überblick. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Überblick KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Übersicht Programmieren Programmieren I (1. Semester)
MehrDer Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.
Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.
MehrFachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6
Gudrun Fischer Sascha Kriewel programmierung@is.informatik.uni-duisburg.de Anmeldung zur Klausur! Übungsblatt Nr. 6 Um an der Klausur teilzunehmen, müssen sich Studierende der angewandten Informatik in
MehrI.1 Die Parrot Assemblersprache
I.1 Die Parrot Assemblersprache Die virtuelle CPU Parrot ermöglicht die Verarbeitung der Parrot Assemblersprache (PASM). Zum Einstieg soll ein erstes Beispiel die Ausführung einer PASM-Datei zeigen. Legen
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE22-NutzungVonKlassen (Stand 28.09.2012) Aufgabe 1: Entwickeln Sie in Eclipse auf der Basis der vorgestellten Java-GUI-Klassen ein Java- Programm, das
MehrProgrammierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4.
Agenda für heute, 4. Mai, 2006 Programmierparadigmen Imperative Programmiersprachen In Prozeduren zusammengefasste, sequentiell ausgeführte Anweisungen Die Prozeduren werden ausgeführt, wenn sie als Teil
MehrEinführung in die Programmierung (EPR)
Goethe-Center for Scientific Computing (G-CSC) Goethe-Universität Frankfurt am Main Einführung in die Programmierung (EPR) (Übung, Wintersemester 2014/2015) Dr. S. Reiter, M. Rupp, Dr. A. Vogel, Dr. K.
MehrVersion 0.3. Installation von MinGW und Eclipse CDT
Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.
MehrPraktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt
MehrListe Programmieren - Java
Liste Programmieren - Java Fachhochschule Wiesbaden, FB Informatik Studiengang Allgemeine Informatik Vorlesung im WS 2004/2005 Kapitel 1-9 1 Ziele Ausbau der bisherigen Fertigkeiten und Techniken des objektorientierten
MehrFunktionale Programmierung. Funktionale Programmierung: Vorlesungsüberblick. Eigenschaften rein funktionaler Programmierung
Funktionale Programmierung 1 Funktionale Programmierung: Vorlesungsüberblick 1. Funktionale Programmierung Prinzipien funktionaler Programmierung Funktionale Programmierung in prozeduralen Sprachen Rekursive
MehrDiana Lange. Generative Gestaltung Operatoren
Diana Lange Generative Gestaltung Operatoren Begriffserklärung Verknüpfungsvorschrift im Rahmen logischer Kalküle. Quelle: google Operatoren sind Zeichen, die mit einer bestimmten Bedeutung versehen sind.
MehrVBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
MehrEinführung in Eclipse und Java
Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik
MehrVorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick
Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent
MehrKapitel 2. Methoden zur Beschreibung von Syntax
1 Kapitel 2 Methoden zur Beschreibung von Syntax Grammatik, die sogar Könige zu kontrollieren weiß... aus Molière, Les Femmes Savantes (1672), 2. Akt 2 Ziele Zwei Standards zur Definition der Syntax von
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrFunktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20120622 Überblick Wichtige Eigenschaften Einführungsbeispiele Listenerzeugung und Beispiel
MehrEinführung in die Programmierung
Einführung in die Programmierung PD Dr. Peer Kröger, Dr. Andreas Züfle, Daniel Kaltenthaler, Klaus Schmid Ludwig-Maximilians-Universität München, Institut für Informatik, LFE Datenbanksysteme Wintersemester
MehrInformatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-
Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik
MehrFunktionale Programmierung (in Clojure)
Funktionale Programmierung (in Clojure) Einführung Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Wintersemester 2014/15 Übersicht Paradigmen von Programmiersprachen Paradigmen von Programmiersprachen
MehrProf. Dr.-Ing. Dietrich Schröder GIS und Programmiersprachen: Wohin geht die Reise?
Prof. Dr.-Ing. Dietrich Schröder GIS und Programmiersprachen: Wohin geht die Reise? 1954 1960 1965 1970 1975 1980 1985 1990 1995 01 02 03 04 40 Jahre Programmierenausbildung im Studiengang VG Programmiersprachen
MehrProgrammieren was ist das genau?
Programmieren was ist das genau? Programmieren heisst Computerprogramme herstellen (von griechisch programma für Vorschrift). Ein Computerprogramm ist Teil der Software eines Computers. Als Software bezeichnet
MehrCADEMIA: Einrichtung Ihres Computers unter Mac OS X
CADEMIA: Einrichtung Ihres Computers unter Mac OS X Stand: 28.01.2016 Java-Plattform: Auf Ihrem Computer muss die Java-Plattform, Standard-Edition der Version 7 (Java SE 7) oder höher installiert sein.
MehrE-PRIME TUTORIUM Die Programmiersprache BASIC
E-PRIME TUTORIUM Die Programmiersprache BASIC BASIC Beginner s All-purpose Symbolic Instruction Code symbolische Allzweck-Programmiersprache für Anfänger Design-Ziel klar: Eine einfache, für Anfänger geeignete
Mehr1. Grundkonzepte der logischen Programmierung 2. Syntax von Prolog 3. Rechnen in Prolog. IV.1 Grundkonzepte der logischen Programmierung - 1 -
1. Grundkonzepte der logischen Programmierung 2. Syntax von Prolog 3. Rechnen in Prolog IV.1 Grundkonzepte der logischen Programmierung - 1 - Übersicht Imperative Sprachen Deklarative Sprachen Folge von
MehrKontrollstrukturen, Strukturierte Programmierung
, Strukturierte Programmierung Steuer- und Kontrollfluss Strukturierte Programmierung Arten von Strukturblöcken Sequenz Alternative Iteration C-Spezifisches Seite 1 Elementare Algorithmen SelectionSort
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte
MehrÜbungen zu Übersetzerbau 2
Übungen zu Übersetzerbau 2 (Ausgewählte Kapitel aus dem Übersetzerbau) Michael Klemm Lehrstuhl für Programmiersysteme Universität Erlangen-Nürnberg 1 Agenda Inhalt der Übungen Web-Forum Scheinvergabe/Hauptdiplomprüfung
Mehr