Übung Softwareentwicklung 1, WS0910 Gemeinsame Einführung



Ähnliche Dokumente
Einführung zu den Übungen aus Softwareentwicklung 1

Einführung zu den Übungen aus Softwareentwicklung 1

Übung Softwareentwicklung 1, WS1112 Gemeinsame Einführung

Einführung in JAVA. Viele Höhen und Tiefen Java war schon einmal nahezu tot. Heute extrem weit verbreitet vom Supercomputer bis hin zum Handy.

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder

Grundlagen der Programmierung UE

Grundlagen der Programmierung UE

Kapitel 02. Java was, wann, warum, wieso. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz

Grundlagen der Informatik für Ingenieure I

Einführung in das Programmieren

Institut für Programmierung und Reaktive Systeme. Java 1. Markus Reschke

Vorkurs Informatik WiSe 16/17

Software Entwicklung I Übungen ( )

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Java Einführung Programmcode

Java für C++ Programmierer

Erste Schritte zum lauffähigen Java-Programm

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Linux (min. Kernel 2.4) min. Java 1.5 MPJ (

JAVA. Ein kurzer Überblick. Thomas Karp

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Vorkurs Informatik WiSe 17/18

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi

1. Java Grundbegriffe

Java-Einführungskurs Informatik II (D-ITET) Vincent Becker,

Java-Einführungskurs Informatik II (D-ITET) Vincent Becker,

Informatik II - Übung 01

Teil 3 - Java. Grundlagen Klassen, Attribute Methoden

Erste Schritte zum lauffähigen Java Programm

Programmierkurs. Manfred Jackel

1.3.1 Java-Compiler installieren

Übung U02 (WS 2005/06) U02

Grundlagen der Informatik Übungen 1.Termin

Java-Einführungskurs Informatik II für D-ITET FS 2014, ETH Zürich

Programmieren I. Administratives / Java Installation. Thomas Vetter, Brian Amberg, Andreas Forster. 21. September 2010 UNIVERSITÄT BASEL

Empfehlenswerte Literatur

Einstieg in Java und OOP

Übung zur Vorlesung Strukturiertes Programmieren WS 2014/15. Übungsblatt 1: JAVA - Erste Schritte Abgabe: Besprechung:

Grundlagen der Programmierung UE. Dr. Herbert Prähofer (Gruppe 1 2, & 3) DI Markus Weninger(Gruppe 4)

Java - Einführung in die Programmiersprache. Leibniz Universität IT Services Anja Aue

Java-Einführungskurs Informatik II für D-ITET, FS 2013, ETH Zürich. Simon Mayer

Android DER SCHNELLE UND EINFACHE EINSTIEG IN DIE PROGRAMMIERUNG UND ENTWICKLUNGSUMGEBUNG. EXTRA: E-Book inside. dirk LOUIS peter MÜLLER. 2.

Informatik II - Übung 01

CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java

CADEMIA: Einrichtung Ihres Computers unter Mac OS X

Installationsanweisungen

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Java Programmierung auf der Konsole / unter Eclipse

Vorlesung Informatik II

Vorkurs Informatik WiSe 15/16

CADEMIA: Einrichtung Ihres Computers unter Windows

Javakurs für Anfänger

Praktische Informatik 1

CS1005 Objektorientierte Programmierung

Beuth Hochschule JDK und TextPad WS14/15, S. 1

Kapitel 1: Einführung

Modellierung und Programmierung 1

Installationsanleitung NX 10

Objektorientierte Programmierung OOP Programmieren mit Java

Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung

JAVA als erste Programmiersprache Semesterkurs

Die Scala Entwicklungsumgebung. L. Piepmeyer: Funktionale Programmierung - Die Scala Entwicklungsumgebung

Programmierkurs Java. Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck

Installationsanleitung

Javakurs für Anfänger

Java für Anfänger Teil 1: Intro. Programmierkurs Manfred Jackel

Hello World in Java. Der Weg zum ersten Java-Programm

Java. CoMa-Übung II TU Berlin. CoMa-Übung II (TU Berlin) Java / 28

Java-Einführungskurs Informatik II für D-ITET FS 2016, ETH Zürich

Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung

Anleitung zum Applet Richtungsfeld einer Differentialgleichung

Eine Einführung - FH Krefeld WS NetBeans IDE

1 Einführung. public static void main(string[] args) { // Gibt "Hello World" aus System.out.println("Hello World");

Handbuch. OpenJDK als alternative Java-Umgebung

Prozedurale Programmierung (PPG)

Problemorientierte Programmiersprachen Nachteile von Programmen in Maschinensprache sehr aufwendig bei komplexeren Aufgabenstellungen fehleranfällig

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Softwareentwicklung 1

Prof. Dr. Heinrich Müller. Informatik VII Universität Dortmund. Organisatorisches zum Vorkurs Informatik

Java Übung. Einführung. 12. April Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung. Vorbereitendes.

Einführung in die Programmierung mit Java

Abschnitt 1: Einführung

Informatik II (D-ITET) Übungsstunde 1,

Javakurs für Anfänger

Name Klasse Datum. Q u e l l - P r o g r a m m i n S p r a c h e A. C o m p i l e r f ü r S p r a c h e A u n d P r o z e s s o r Y

Eclipse 3.0 (Windows)

Informatik II Übung 1 Gruppe 7. Leyna Sadamori

Hydroinformatik 1 Integrated development environments IDEs

Java-Einführungskurs Informatik II für D-ITET FS 2017, ETH Zürich

Java im Informatikunterricht der gymnasialen Oberstufe

Heiko Bobzin Poet Software GmbH

Liste Programmieren Java Überblick

Praktikum: Einstieg: Arbeitsplatz, JCreator

Vom Web ins IoT: Schnelleinstieg in Tooling und Entwicklung

Java-Einführungskurs Informatik II für D-ITET FS 2015, ETH Zürich

Transkript:

Übung Softwareentwicklung 1, WS0910 Gemeinsame Einführung Informatik, Informationselektronik, Wirtschaftsinformatik, Lehramt Informatik, Chemie, etc. Dipl.-Ing. Institute for Pervasive Computing Johannes Kepler University Linz riener@pervasive.jku.at

Softwareentwicklung 1: Übungsbetrieb Allgemeines Informationen zu VO+UE (Termine, Räume, Inhalte, Prüfungen, etc.) - http://www.pervasive.jku.at - Danach Teaching Softwareentwicklung 1 Start des regulären Übungsbetriebes (6+3 Gruppen) am Mi, 14. Oktober, Übungszeiten/-räume für Informatik: Softwareentwicklung1 UE // WS0809 // Einführung // Folie 2

JAVA: Eine Einführung Inhalt Java Laufzeitumgebung Java Entwicklungswerkzeuge Installation des JDK Das erste Java-Programm Entwicklungsumgebungen Mein erstes Java-Programm Softwareentwicklung1 UE // WS0809 // Einführung // Folie 3

JAVA: SE/EE/ME/JRE/JDK Was heißt das? JAVA Editionen und Download Editions Java SE (Standard Edition): Typisch benötigter Funktionsumfang Java EE (Enterprise Edition): Zusätzliche Funktionalität für Serveranwendungen Java ME (Micro Edition): Eingeschränkte Funktionalität; für Mobile Geräte gedacht und weitere... SE Downloads: http://java.sun.com/javase/downloads JRE (Java Runtime Environment): Nur die Laufzeitumgebung (in JDK enthalten) JDK (Java Development Kit): JRE + Entwicklungswerkzeuge (Compiler javac, javadoc, jar, jarsigner und Werkzeuge für Applets) - aktuelle Version: JDK 6 Update 16 (~74MB, Windows, 32bit) - auch im Bereich "Begleitmaterial" zu Softwareentwicklung1 Java SE Documentation: Dokumentation (insbesondere API) Softwareentwicklung1 UE // WS0809 // Einführung // Folie 4

JAVA: Die JAVA Laufzeitumgebung Java Runtime Environment (JRE) = JVM + API Java Virtual Machine (JVM) java Teil von JRE; für die Ausführung von Java-Bytecode verantwortlich System-/Plattformunabhängigkeit Gestartetes Programm wird in eigener VM ausgeführt Schnittstelle zwischen Maschine (Hardware) und Betriebssystem (Software) - Für die meisten Plattformen verfügbar (Linux, Mac, Palm OS, Solaris, Windows, Google Android, usw.) Die JVM selbst ist in C/C++ geschrieben Die Bestandteile der JVM sind - Klassenlader (classloader, resolver) - Speicherverwaltung (garbage collector) - Ausführungseinheit (excution engine) Softwareentwicklung1 UE // WS0809 // Einführung // Folie 5

JAVA: Die JAVA Laufzeitumgebung Java Runtime Environment (JRE) = JVM + API Java Virtual Machine (JVM) java Interpreter - Interpretiertes Ausführen eines Java-Programms - langsam Just-In-Time (JIT) Compiler - Übersetzt das Java-Programm (den Bytecode) während des Programmablaufs Just-In-Time (gerade rechtzeitig) in den jeweiligen Maschinencode der realen Plattform - Kompiliertes Java-Programm läuft native auf der Plattform - wesentlich schneller (ähnlich C/C++ Programm), allerdings hoher Speicherbedarf Dynamische Optimierung JVM-Implementierung in Hardware Softwareentwicklung1 UE // WS0809 // Einführung // Folie 6

JAVA: Die JAVA Laufzeitumgebung Java Runtime Environment (JRE) = JVM + API Java Core API java.*.class Bibliotheken ( System Libraries ) die die Standardklassen (mit ihren Methoden) der Programmiersprache JAVA bereitstellen Nützliche Algorithmen und Funktionen - Stringmanipulation, mathematische Algorithmen, Ein-/Ausgabe, Dateioperationen, Netzwerkfunktionalitäten, etc. - Bsp.java.lang.Float, java.io.file, java.net.socket, java.util.hashtable, etc. Softwareentwicklung1 UE // WS0809 // Einführung // Folie 7

JAVA: Die JAVA Laufzeitumgebung Java Runtime Environment (JRE) Die virtuelle Maschine (JVM) und die API müssen aufeinander abgestimmt sein und werden deshalb zur JRE zusammengefasst. Die JRE kann als virtueller Computer betrachtet werden, welcher in einer virtuellen Maschine einige Prozessoren und eine API, als oberste Bibliotheksschicht, zur Verfügung stellt. Das Java Runtime Environment (JRE) enthält keine Entwicklungswerkzeuge (Compiler, Debugger, etc.). Für die Programmierung mit Java wird das Java Development Kit (JDK) oder eine andere Programmierumgebung, welche ebenfalls Java-Bytecode erzeugt, benötigt. Softwareentwicklung1 UE // WS0809 // Einführung // Folie 8

JAVA: Die JAVA Laufzeitumgebung JAVA API (Application Programming Interface) Ein- und Ausgabe von Daten über Tastatur, Bildschirm, Dateisystem, etc. Klassen für Netzwerkapplikationen (URL- Handling, Datagrams, Socket- Connections, etc.) Softwareentwicklung1 UE // WS0809 // Einführung // Folie 9

JAVA: JAVA Entwicklungswerkzeuge Java Development Kit (JDK) Java Compiler javac Übersetzt den Quellcode in Java Byte-Code Java Debugger jdb Tool zur Fehlersuche Java Disassembler javap Erzeugt aus Byte-Code lesbare JVM-Instruktionen Java Doc javadoc Dokumentation Java Packaging jar Erzeugt gepackte Pakete Softwareentwicklung1 UE // WS0809 // Einführung // Folie 10

JAVA: JAVA Development Kit Wo bekommt man das JDK? Direkt von Sun http://java.sun.com/javase/downloads/index.jsp Von der Homepage des Institutes für Pervasive Computing http://www.pervasive.jku.at Danach Teaching Softwareentwicklung 1 Begleitmaterial Die aktuelle Version ist ca. 75MB groß JDK JRE? Das JDK enthält auch das JRE Das Java Runtime Environment (JRE) wird zur Ausführung von Java-Programmen benötigt, das JDK zum Kompilieren, Debuggen, etc. Softwareentwicklung1 UE // WS0809 // Einführung // Folie 11

JAVA: JAVA Development Kit Wie installiert man das JDK (unter Windows XP)? Installationsanleitung von SUN Online verfügbar, http://java.sun.com/javase/downloads/index.jsp Kurze Übersicht Download Installation im gewünschten Verzeichnis Pfad zu den JDK-Programmen registrieren Softwareentwicklung1 UE // WS0809 // Einführung // Folie 12

JAVA: JAVA Development Kit Wie installiert man das JDK (unter Windows XP)? Pfad registrieren (1) Systemsteuerung (2) System öffnen (3) Register Erweitert öffnen (4) Umgebungsvariablen öffnen Softwareentwicklung1 UE // WS0809 // Einführung // Folie 13

JAVA: JAVA Development Kit Wie installiert man das JDK (unter Windows XP)? Pfad registrieren (5) Pfad bearbeiten Softwareentwicklung1 UE // WS0809 // Einführung // Folie 14

JAVA: JAVA Development Kit Wie installiert man das JDK (unter Windows XP)? Pfad registrieren (6) Pfad eintragen Das "bin"-verzeichnis der JDK-Installation angeben Softwareentwicklung1 UE // WS0809 // Einführung // Folie 15

JAVA: JAVA Development Kit Installation überprüfen Kommandozeile öffnen und die folgenden (fett geschriebenen) Befehle eingeben C:\>java version Ausgabe (abhängig von der installierten Version): java version "1.6.0_16" Java(TM) SE Runtime Environment (build 1.6.0_16-b01) Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode, sharing) C:\>javac version Ausgabe (abhängig von der installierten Version): javac 1.6.0_16 Softwareentwicklung1 UE // WS0809 // Einführung // Folie 16

JAVA: Online-Literatur WWW-Referenzen zu JAVA Java Home http://java.sun.com Sprachspezifikation http://java.sun.com/docs/books/jls/third_edition/ html/j3toc.html API Dokumentation Vollständige Dokumentation aller Pakete, Klassen, Methoden, Konstanten, etc. http://java.sun.com/javase/6/docs/api/index.html Softwareentwicklung1 UE // WS0809 // Einführung // Folie 17

JAVA: Das erste JAVA-Programm Hello World 1 Programm schreiben Beliebiger Editor oder Entwicklungsumgebung Wordpad/ Notepad 2 Programm übersetzen javac HelloWorld.java oder Entwicklungsumgebung 3 Programm starten java HelloWorld (ohne.class) oder Entwicklungsumgebung Softwareentwicklung1 UE // WS0809 // Einführung // Folie 18

JAVA: Das erste JAVA-Programm Hello World 1 Programm schreiben Texteditor Wordpad oder Editor auf CMD-line Softwareentwicklung1 UE // WS0809 // Einführung // Folie 19

JAVA: Das erste JAVA-Programm Hello World 2 Programm übersetzen Kommandozeile, Programm javac Softwareentwicklung1 UE // WS0809 // Einführung // Folie 20

JAVA: Das erste JAVA-Programm Hello World 3 Programm starten Kommandozeile, Programm java Softwareentwicklung1 UE // WS0809 // Einführung // Folie 21

JAVA: Zur Programmierung Entwicklungsumgebung Softwareentwicklung1 (Erlernen der Programmiersprache) Eine schlankes Entwicklungswerkzeug (Editor) ist ausreichend bzw. empfohlen Konzentration auf das Wesentliche (nämlich das Erlernen der Programmiersprache!) Umfangreiche Entwicklungsumgebungen (Eclipse, JBuilder, etc.) erschweren die Fehlersuche und erfordern zunächst einmal Zeit zum Erlernen der Bedienung, Suchen der Funktionen, Konfiguration, etc. Bei größeren Projekten, späteren LVAs (bzw. auch im Laufe des Semesters) kann man auf eine umfangreichere Entwicklungsumgebung umsteigen. Softwareentwicklung1 UE // WS0809 // Einführung // Folie 22

JAVA: Entwicklungsumgebungen Eine kleine Auswahl Notepad, Wordpad, CMD-line Editor Windows sehr rudimentär, nur für sehr kleine Aufgabenstellungen geeignet kein Syntax-Highlighting, etc. TextPad Windows, Download unter http://www.textpad.com/download/index.html schlanke Entwicklungsumgebung kommerziell (Euro 18,10; kostenlose Testversion verfügbar) UltraEdit Windows, Download unter http://www.ultraedit.at schlanke Entwicklungsumgebung Kommerziell (ab Euro 59,94) Softwareentwicklung1 UE // WS0809 // Einführung // Folie 23

JAVA: Entwicklungsumgebungen Eine kleine Auswahl (2) JEdit in Java geschrieben Download unter http://www.jedit.org/ schlanke Entwicklungsumgebung Unterstützt viele Plattformen (Windows, Mac, Unix Debian/Slack) Open Source (kostenlos) Eclipse unter verschiedensten Plattformen verfügbar (Windows, Linux, Solaris, AIX, HP-UX, Mac OS X) Download unter http://www.eclipse.org/ Sehr mächtig und umfangreich Open Source dh. kostenlos sehr gut geeignet für größere Projekte geeignet viele Erweiterungen (Versionierung, UMF-Modellierung, etc.) Softwareentwicklung1 UE // WS0809 // Einführung // Folie 24

JAVA: Erleichterung bei der Ein/Ausgabe Das Paket I/O (IO.java) Was? Tool zur leichteren Ein- und Ausgabe Ersatz für System.in.* (Standard Inputstream) sowie System.out.* (Standard Outputstream) Warum? In Java ist die E/A sehr mächtig dadurch auch nicht so leicht zu verstehen. Einfachere Handhabung und Erlernung mit diesem Paket Woher? Institutswebseite www.pervasive.jku.at Danach Teaching Softwareentwicklung 1 Begleitmaterial Zip-Archiv basicio.zip Softwareentwicklung1 UE // WS0809 // Einführung // Folie 25

JAVA: Erleichterung bei der Ein/Ausgabe Das Paket I/O (IO.java) Wie? Dokumentation ist im zip-file enthalten Am einfachsten: IO.java in das gleiche Verzeichnis wie die eigenen Quelldateien der Übungen kopieren IO.java wird dann automatisch mitkompiliert Alternative: CLASSPATH setzen, nur 1x zentral ablegen Hinweis FÜR DIE ÜBUNGEN IST ES EMPFEHLENSWERT DAS PAKET IO ANSTATT DER INTERNEN JAVA-BEFEHLE (java.io) ZU VERWENDEN! Beispiele - airtemp = IO.readInt(); anstatt System.in.read(); - IO.Out( Text ); anstatt System.out.print( Text ); Softwareentwicklung1 UE // WS0809 // Einführung // Folie 26

JAVA: Mein erstes Programm Übung 0 Wo? Institutswebseite www.pervasive.jku.at Danach Teaching Softwareentwicklung 1 Begleitmaterial Wozu? Dient zum Kennenlernen des JDK's und zum Überprüfen der Funktion der JDK-Installation Ist nicht abzugeben, wird auch nicht bewertet Softwareentwicklung1 UE // WS0809 // Einführung // Folie 27

Softwareentwicklung 1: Vorlesung+Übung Members Forum Mitreden! Registrieren & Mitreden! Softwareentwicklung1 UE // WS0809 // Einführung // Folie 28