Einstieg in die App-Entwicklung für Android-Smartphones

Größe: px
Ab Seite anzeigen:

Download "Einstieg in die App-Entwicklung für Android-Smartphones"

Transkript

1 Einstieg in die App-Entwicklung für Android-Smartphones Was versteht man unter Apps und wo werden sie vertrieben? Der Begriff App leitet sich von Applikation ab. Er steht für Software auf einem mobilen Gerät wie beispielsweise einem Smartphone oder Tablet-PC. Insbesondere Apps auf Smartphones nutzen häufig die zusätzlichen Möglichkeiten aus, die derartige Geräte bieten. Dazu gehören ein berührungssensitiver Bildschirm zur Erkennung von Gesten (berühren, aufziehen, wischen usw.), was gleichzeitig die fehlende Maus ersetzt, eine Kamera für die Aufnahme von Bildern und das Einscannen von Bar-/QR-Codes, die Bestimmung der geografischen Position und Orientierung im geomagnetischen Feld sowie Sensoren für physikalische Größen wie beispielsweise die Beschleunigung, Temperatur, Helligkeit, Feuchtigkeit und den Luftdruck sowie nicht zuletzt die Funktionalität von Telefon und Kurznachricht (SMS) in Verbindung mit einem Adressbuch. Einige Beispiele für Kategorien von Apps sind Wörterbücher, Büroanwendungen, Lernen, Nachrichten, Navigation, Shopping, Gesundheit, LifeStyle, Soziale Netzwerke, Wetter, Unterhaltung und Spiele. Ein weiteres Anwendungsfeld stellen die so genannten ortsbasierten Dienste dar. Sie beinhalten beispielsweise die Anzeige von Gaststätten, Tankstellen oder Freunden in der jeweils aktuellen Umgebung oder die Routenbestimmung zu einem vorgegebenen Ziel. Es steht prinzipiell jeder/m frei Apps zu erstellen und zu vertreiben. Im Fall von selbst programmierten Apps für Android (s. u.) kann man diese entweder auf der eigenen Website, über Plattformen wie oder über den App Store Google Play anbieten. Bei Google ist in diesem Zusammenhang eine Registrierungsgebühr von 25 Dollar fällig. Die dort eingestellten Apps werden daraufhin überprüft, ob sie Schadcode enthalten. Android-Plattform und Entwicklungsbasis für Android-Apps Der Name Android stammt ursprünglich von einer Firma namens Android, die Software für Smartphones entwickelte und 2005 von Google aufgekauft wurde. In einem nächsten Schritt gründete Google zusammen mit anderen Firmen die Open Handset Alliance. Im Gegensatz zu anderen Entwicklungen im Bereich mobiler Geräte (z. B. bei Apple, Microsoft) setzt diese auf die Idee von Quelloffenheit ( Open Source ). Darunter ist zu verstehen, dass Quellcodes frei verfügbar sind und jede/r sich an der Weiterentwicklung beteiligen kann, sowohl bzgl. der Hard- als auch bzgl. der Software. Die große Verbreitung des Android-Betriebssystems liegt in dieser freien Verfügbarkeit des Android-Quellcodes begründet. Zur Software gehören in diesem Fall einerseits das Betriebssystem Android und andererseits die darauf aufsetzenden Apps. Wie die Abbildung links zeigt, ist Android auf einem Linux- Kern aufgebaut, der u. a. die Treiber für die Hardware enthält. Beteiligt sind außerdem spezielle Bibliotheken (z. B. SQLite für Datenbanken, SSL für verschlüsselte, sichere Kommunikation, Open GL und SGL für Grafik), das Anwendungsframework mit Managern für beispielsweise Activities (siehe unten) und Windows sowie insbesondere die Laufzeitumgebung DVM für Apps (siehe unten). Android Apps basieren einerseits auf der Programmiersprache Java und dem Android SDK (Software Development Kit) als Schnittstelle zum Betriebssystem Android. Andererseits volkshochschule stuttgart 1

2 dient die Beschreibungssprache XML (extended Markup Language) dazu die Gestaltung und weitere Elemente zu definieren. Als Entwicklungsumgebung steht in erster Linie die quelloffene Umgebung Eclipse mit dem ADT-Plugin (Android Development Tools) zur Verfügung 1. Damit lassen sich Android Apps unter den Betriebssystemen Windows, Linux und Mac entwickeln und entweder direkt in einem Android Smartphone oder in einem Emulator testen. Das Gegenstück zur Laufzeitumgebung JVM (Java Virtual Machine, siehe unten im Überblick über Java) bildet bei Android die DVM (Dalvik Virtual Machine). Zu beachten ist, dass jede App in der Regel als eigener, von den anderen abgeschotteter Benutzer behandelt wird. Zugriffswünsche auf Daten anderer Apps sind daher explizit zu deklarieren. Damit können Benutzer vor der Anschaffung einer App entscheiden, ob sie die entsprechenden Zugriffe zulassen möchten oder lieber auf die App verzichten. Installation der Entwicklungsumgebung für Android-Apps 1. Zunächst ist mit Hilfe der Webseite zu prüfen, ob Java auf dem zur Entwicklung eingesetzten Rechner bereits installiert ist oder ob dies über ein Herunterladen sowie die zugehörige Installation der aktuellen jdk-version (Java Development Kit) von nachzuholen ist. Bitte beachten: Die Laufzeitumgebung JRE Java Runtime Environment allein reicht nicht aus! 2. Das nach Creative Commons Attribute 2.5 lizensierte, kostenfrei verfügbare Android-SDK lässt sich unter developer.android.com/sdk herunter laden. Dabei gibt es zwei Möglichkeiten: a. Android ADT Bundle bestehend aus Android-SDK und der Entwicklungsumgebung Eclipse. b. Falls sich auf dem verwendeten Rechner bereits eine Entwicklungsumgebung wie z. B. Eclipse befindet, ist nur das Android-SDK herunter zu laden und zu installieren. Für Windows steht dabei eine Exe-Datei zur Verfügung, die für ein bequemes Installieren des Android- SDK Managers sorgt. Im nächsten Schritt installiert man in Eclipse das ADT-Plugin über Help Install New Software Add und Eintrag des Links https://dlssl.google.com/android/e clipse (siehe Abbildung rechts). Nach einem Neustart von Eclipse stehen sowohl das Android Development Kit zur Entwicklung von Android Apps als auch das Debugsystem Dalvik Debug Monitor Server (DDMS, siehe unten) zur Verfügung. Erkennbar ist dies an den speziellen Elementen in der Eclipse-Werkzeugleiste: zum Öffnen des Android SDK-Managers, zum Öffnen des Android Virtual Device Managers, zum Überprüfen von Projekten bzw. zum Erstellen einer neuen Android XML-Datei. Falls dies nicht automatisch geschieht, ist in Eclipse unter Windows Preferences Android das Verzeichnis einzutragen, in dem sich die Android SDK befindet. 1 Die Alternative Android Studio befindet sich noch im Status Early Access Preview. volkshochschule stuttgart 2

3 3. Über den Android SDK Manager sind für diejenigen Betriebssystemversionen, auf denen die zu entwickelnden Apps getestet werden sollen, die jeweils benötigten Komponenten zu installieren (siehe Abbildung rechts). Auch die direkt von Google zur Verfügung gestellten USB- Treiber für mobile Geräte lassen sich auf diesem Weg installieren. Allerdings nehmen alle derartigen Installationen eine relativ lange Zeit in Anspruch. 4. Um anstelle oder zusätzlich zu realen Geräten mit einem Emulator testen zu können ist im Android Virtual Device Manager mindestens ein entsprechendes virtuelles Gerät anzulegen (siehe Abbildung rechts). Auf diese Weise lässt sich ein beliebig großes Spektrum unterschiedlicher Geräte abdecken. Kurzer Überblick über Java 2 Wie in anderen gängigen Programmiersprachen stehen für Variable in Java eine Reihe von elementaren Datentypen zur Verfügung: byte, short, int und long für ganzzahlige Variable, float und double für Fließkommazahlen-Variable, char für Zeichen und boolean für logische Variable. Mit Variablen dieser Typen sind die jeweils dazu passenden Zuweisungen und Operationen möglich (z. B. Addition für Zahlenvariable, Negation für logische Variable). Für Zusammenfassungen mehrerer Variablen vom gleichen Typ unter einem Namen mit einem durchgängigen Index gibt es das Konstrukt des Arrays, z. B. int [] monatstage = {31, 28, 31, 30,, 30, 31}; für die Tage je Monat, auf die mit monatstage[i] mit i zwischen 0 und 11 zugegriffen werden kann. Die Steuerung des Kontrollflusses erfolgt mit ein-/zweiseitigen Verzweigungen mit den Schlüsselwörtern if( ){ } else { }, mit mehrseitigen Verzweigungen switch( ){case 1: ; case 2: ;} oder mit Hilfe von Schleifen: for( ){ }, while( ){ }, do{ }while( ); Da es sich bei Java um eine objektorientierte Programmiersprache handelt, wird mit Objekten gearbeitet. Bei einem Objekt handelt es sich um eine Instanz einer Klasse (class), die durch new erstellt wird, z. B. Person hugo = new Person(); Klassen verfügen über Attribute und Methoden. Attribute sind gekapselt, d. h. in der Regel nicht von außen manipulierbar. Sie erhalten daher die Sichtbarkeit private. Ein kontrollierter Zugang zu 2 docs.oracle.com/javase/7/docs/api/ volkshochschule stuttgart 3

4 Attributen ist damit nur über entsprechende Methoden möglich, die die Sichtbarkeit public haben. Häufig gibt es spezielle Methoden zum Setzen und Auslesen von Attributen (Setter/Getter). Methoden bestehen in der Regel aus der Sichtbarkeit, dem Datentyp der Rückgabe oder void, dem Methodennamen, der Liste der Aufrufparameter und einer Implementierung, z. B. public void setname( ){ }. Darüber hinaus können das Setzen von Anfangswerten und weitere zu Beginn zu erledigende Aufgaben in einem so genannten Konstruktor durchgeführt werden. Von diesen Konstruktoren sind mehrere möglich, die sich in der Liste der Aufrufparameter unterscheiden, was als überladen bezeichnet wird. Neben den zu einer bestimmten Instanz gehörenden Attributen und Methoden kann es auch instanzenunabhängige geben, die so genannten Klassenattribute und methoden. Diese werden durch das Schlüsselwort static gekennzeichnet. Ein Beispiel für ein Klassenattribut ist die Anzahl von Instanziierungen der Klasse Person im Gegensatz zu einem Instanzenattribut wie dem Namen einer speziellen Person. Wenn sich Klassen teilweise gleichen, ist es sinnvoll Vererbung zu verwenden. Dazu richtet man eine geeignete Oberklasse ein, z. B. Person als Oberklasse von Geschaeftspartner und Freund. Die Unterklassen erben alle Attribute und Methoden der Oberklasse und können sie beliebig sowohl erweitern als auch verändern Das Schlüsselwort für Vererbung heißt extends, z. B. public class Freund extends Person { }. In Java ist Mehrfachvererbung nicht erlaubt, d. h. jede Klasse hat maximal eine Oberklasse. Allerdings sind Vererbungshierarchien möglich, z. B. können Geschaeftspartner und Freund jeweils wieder Unterklassen haben. Eine spezielle Rolle nimmt die abstrakte Klasse (abstract) ein, die außer Attributen und Methoden auch über so genannte abstrakte Methoden verfügen kann, die nur aus einem Methodenkopf ohne Implementierung bestehen. Abstrakte Klassen können nicht instanziiert werden. Eine Klasse, die von einer abstrakten Klasse erbt, muss deren abstrakte Methoden implementieren. Ähnlich verhält es sich mit den so genannten Interfaces, die nur aus Methodenköpfen bestehen. Eine Klasse, die ein Interface verwenden möchte, erbt nicht davon. Stattdessen wird das Schlüsselwort implements verwendet, z. B. Person implements Comparable { }. Auch in diesem Fall ist die Implementierung der vorgegebenen Methoden verpflichtend. Im Gegensatz zur Vererbung mit nur einer einzigen Oberklasse ist ein Implementieren mehrerer Interfaces möglich. Ein wichtiges Beispiel für Interfaces stellen die so genannten Ereignis-Listener dar. Beispielsweise ist im Zusammenhang mit grafischen Benutzungsoberflächen, wie sie auch in Smartphones verwendet werden, der Zeitpunkt der Eingabe eines Benutzers nicht im Voraus bekannt. Daher gibt es Listener, die sich für das Ereignis Benutzer hat etwas eingegeben registrieren. Dadurch wird der entsprechende Listener immer dann angestoßen, wenn das Ereignis tatsächlich eingetreten ist. Durch Implementieren der Listener-Methoden kann man folglich in der eigenen Klasse festlegen, wie auf das Ereignis reagiert werden soll, z. B. durch Einlesen eines Wertes. Für eine nebenläufige Programmierung stehen die Klasse Thread sowie das Interface Runnable zur Verfügung. Klassen, die von Thread erben oder Runnable implementieren, werden quasi gleichzeitig ausgeführt. Java-Applikationen lassen sich u. a. mit der Entwicklungsplattform Eclipse entwickeln. Dazu ist zunächst ein Java-Projekt mit einem oder mehreren Paketen (packages) für eine bessere Strukturierung anzulegen. Innerhalb der Pakete erstellt man die für die Funktionalität benötigten Java-Klassen. Für den späteren Ablauf wird dieser Java-Quellcode in den so genannten Bytecode übersetzt (kompiliert). Dieser wird nicht direkt in einem Rechner ausgeführt, sondern in einer speziellen Laufzeitumgebung, der Java Virtual Machine (JVM). Entwicklung einer Android-App in Eclipse Auch die zu einer bestimmten Android-App gehörenden Dateien werden zu einem Project zusammengefasst. Beim Erstellen eines neuen Projekts über New Android Application legt Eclipse die auf jeden Fall erforderlichen Verzeichnisse und Dateien automatisch an. Dazu volkshochschule stuttgart 4

5 gehören die Java-Quellcode-Datei MainActivity.java im Verzeichnis src Package Name sowie verschiedene XML-Dateien, u. a. in den Verzeichnissen von res. Die Klasse MainActivity erbt von der Android-Klasse Activity. Sie ist das zentrale Beispiel für eine Activity und für den Ablauf einer App unbedingt notwendig. In einem Projekt können mehrere Activities beteiligt sein. Jede von ihnen enthält die Programmlogik zu einer bestimmten Fensteransicht. Activities können sich gegenseitig aufrufen mit Hilfe der Methode startactivity und einem Aufrufparameter der Klasse Intent, die als Nachricht zwischen Activities und auch zwischen separaten Apps dient. Das Zusammenspiel ihrer einzelnen Activities ergibt die Gesamtfunktionalität einer App. Für jede Activity gilt, dass sie gestartet, pausiert, fortgesetzt und gestoppt werden kann. Eine Activity unterliegt also einem Lebenszyklus. Auch Services dienen der Ausführung von bestimmten Aufgaben. Im Gegensatz zu Activities werden sie für Hintergrundaufgaben wie z. B. das Abspielen von Audio-Dateien eingesetzt. Android-Klassen sind ausführlich in developer.android.com/reference/packages.html beschrieben. Zu den beteiligten XML-Dateien gehört zum einen die Datei activity_main.xml im Verzeichnis res layout, die Informationen zu allen im so genannten View einer Activity verwendeten Dialogelementen wie z. B. TextView für ausgegebenen Text, EditText für ein Texteingabefeld und Button zum Antippen enthält. An einen Button kann im Sinn der oben skizzierten Ereignisbehandlung eine Methode zur Reaktion angebunden werden. Weitere Interaktionselemente wie z. B. Checkboxen und Radio Buttons sind verfügbar. Die Datei activity_main.xml lässt sich entweder mit dem grafischen Editor (Registerkarte GraphicalLayout) oder direkt als Text bearbeiten (Registerkarte activity_main.xml), wozu einfache XML-Kenntnisse ausreichen. Zu den beteiligten Informationen kann auch der Verweis auf einen in der XML-Datei res values - Strings.xml definierten String gehören. Dieses Verfahren dient dazu z. B. im Fall von Mehrsprachigkeit an zentraler Stelle ändern zu können. Darüber hinaus können Gestaltungsaspekte in einem Verzeichnis Styles zentral geregelt werden (vgl. Designvorgaben für Android 3 ), wenn nicht ein Theme verwendet wird. Eine weitere Datei mit zentraler Bedeutung ist AndroidManifest.xml. Sie enthält u. a. Informationen zu denjenigen Android-Versionen, auf denen eine App lauffähig ist, zu allen Activities dieser App sowie zu Berechtigungen und der für die Veröffentlichung erforderlichen Signierung. 3 developer.android.com/design/index.html, Links auf volkshochschule stuttgart 5

6 Zum Start einer App in der Entwicklungsumgebung dient Run. Zu Beginn lässt sich zunächst die Konfiguration festlegen. In der Registerkarte Android betrifft dies die Auswahl der MainActivity, bei Target am besten eine automatische Wahl zwischen angeschlossenen realen oder virtuellen Geräten und bei Common die Entscheidung zwischen Run und Debug. Im Fall eines virtuellen Geräts wird der Emulator gestartet, was einige Zeit in Anspruch nimmt und mit der Möglichkeit endet, über das Ziehen eines Schlosssymbols nach rechts zu entsperren. Beim Test in einem realen Smartphone wird wie bei Java ein Bytecode erzeugt und in Form der apk- Datei auf dem Gerät installiert. In beiden Fällen erfolgt die Ausführung durch die Laufzeitumgebung Dalvik, das Pendant zur Java Virtual Machine für Android-Betriebssysteme. Muss die Konfiguration nicht (mehr) festgelegt werden, kann direkt Run As Android Application angeklickt werden, wie in der Abbildung rechts gezeigt. Weitere, über die hier kurz skizzierte Programmierung hinaus gehende Möglichkeiten bieten u. a. die Definition von Menüs, der Einsatz von Datenbanken, Animationen und Zeichenflächen, von Kameraaufnahmen oder der Klasse AlarmManager für zeitbezogene Benachrichtigungen. Veröffentlichen Für die Veröffentlichung in einem App Store wie Google Play ist das entsprechende Projekt in Eclipse mit Hilfe von Datei Export als signierte Datei vom Typ apk auszugeben. Für das Signieren wird ein privates Zertifikat benötigt, das lokal in einem KeyStore abzuspeichern ist. Dies ist erforderlich um eventuelle Aktualisierungen an einer App durchführen zu können. Ansonsten müsste die App komplett neu eingestellt werden. Die Signatur wird mit Hilfe eines Passworts gebildet, das auch zu sichern ist. Außerdem sind weitere Informationen wie die Gültigkeitsdauer und Daten über den Verfasser der App einzugeben. Die anschließend von Eclipse erzeugte apk-datei kann in dieser Form in einen Store hochgeladen werden. Zusammenfassung und Ausblick Mit Hilfe von Eclipse mit dem Android SDK lassen sich beliebig komplexe Android Apps entwickeln und im Emulator für unterschiedliche Betriebssystemversionen und Geräte testen. Durch eine USB-Verbindung ist, bei verfügbarem Treiber, auch der Test auf einem realen Gerät möglich. Anschließend kann man die selbst entwickelte App entweder bei Google Play gegen die entsprechende Gebühr oder auf einer freien Plattform veröffentlichen. Linkliste volkshochschule stuttgart 6

Einstieg in die App-Entwicklung für Android-Smartphones

Einstieg in die App-Entwicklung für Android-Smartphones Einstieg in die App-Entwicklung für Android-Smartphones Was versteht man unter Apps und wo werden sie vertrieben? Der Begriff App leitet sich von Applikation ab. Er steht für Software auf einem mobilen

Mehr

SEMINARVORTRAG ANDROID ENTWICKLUNG ETIENNE KÖRNER EMBEDDED SYSTEMS SS2013 - HSRM

SEMINARVORTRAG ANDROID ENTWICKLUNG ETIENNE KÖRNER EMBEDDED SYSTEMS SS2013 - HSRM SEMINARVORTRAG ANDROID ENTWICKLUNG ETIENNE KÖRNER EMBEDDED SYSTEMS SS2013 - HSRM ÜBERSICHT Android Android Dalvik Virtuelle Maschine Android und Desktop Applikationen Android Entwicklung Tools R Activity

Mehr

App Entwicklung für Android F O R T G E S C H R I T T E N E P R O G R A M M I E R U N G I N J A V A

App Entwicklung für Android F O R T G E S C H R I T T E N E P R O G R A M M I E R U N G I N J A V A App Entwicklung für Android F O R T G E S C H R I T T E N E P R O G R A M M I E R U N G I N J A V A D O Z E N T : R E F E R E N T : P R O F. D R. K L I N K E R R I C O L O S C H W I T Z Aufbau der Präsentation

Mehr

APPS FÜR ANDROID ENTWICKELN

APPS FÜR ANDROID ENTWICKELN jan TITTEL jochen BAUMANN ELL N H C S IEG T S N I E APPS FÜR ANDROID ENTWICKELN AM BEISPIEL EINER REALEN APP Inhalt 1 Einführung.............................................. 1 1.1 Die Android-Plattform.................................................

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

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

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

Apps-Entwicklung mit Eclipse

Apps-Entwicklung mit Eclipse JDroid mit Eclipse Seite 1 Apps-Entwicklung mit Eclipse Version 1.1, 30. April 2013 Vorbereitungen: 1. JDK installieren JDK SE neuste Version (64 oder 32 Bit) herunterladen und installieren (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

Inhaltsverzeichnis. Apps für Android entwickeln

Inhaltsverzeichnis. Apps für Android entwickeln Inhaltsverzeichnis zu Apps für Android entwickeln von Jan Tittel und Jochen Baumann ISBN (Buch): 978-3-446-43191-1 ISBN (E-Book): 978-3-446-43315-1 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43191-1

Mehr

JDroidLib mit Eclipse (Mac/Linux/Windows)

JDroidLib mit Eclipse (Mac/Linux/Windows) JDroidLib mit Eclipse (Mac/Linux/Windows) Version 1.3, 25. März 2013 (Unter Windows besser die ADT-Bundle Version installieren, siehe entsprechende Anleitung) Vorbereitungen: 1. JDK SE neuste Version installieren,

Mehr

Apps-Entwicklung mit Netbeans

Apps-Entwicklung mit Netbeans JDroid mit Netbeans Seite 1 Apps-Entwicklung mit Netbeans Version 2.2, 30. April 2013 Vorbereitungen: 1. JDK SE neuste Version installieren, (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

Java für C++ Programmierer

Java für C++ Programmierer Java für C++ Programmierer Alexander Bernauer bernauer@inf.ethz.ch Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?

Mehr

Einführung in Eclipse und Java

Einfü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

Mehr

1. Software-Plattform Android Android. Was ist Android? Bibliotheken, Laufzeitumgebung, Application Framework

1. Software-Plattform Android Android. Was ist Android? Bibliotheken, Laufzeitumgebung, Application Framework 1. Software-Plattform Android Android Was ist Android? Plattform und Betriebssystem für mobile Geräte (Smartphones, Mobiltelefone, Netbooks), Open-Source Linux-Kernel 2.6 Managed Code, Angepasste Java

Mehr

Hochschule Niederrhein Grundlagen der Prof. Dr. Nitsche Fachbereich 03 Java Programmierung Bachelor Informatik SS 2015 Übung 1. Grundlagen von Java

Hochschule Niederrhein Grundlagen der Prof. Dr. Nitsche Fachbereich 03 Java Programmierung Bachelor Informatik SS 2015 Übung 1. Grundlagen von Java Grundlagen von Java Aufgabe 1: Typen und Zuweisungen in Java Welche der folgenden Java-Anweisungen sind fehlerhaft? Handelt es sich um einen Compiler- oder einen Laufzeitfehler? Anmerkung: Folgefehler

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen

Mehr

App-Entwicklung für Android

App-Entwicklung für Android App-Entwicklung für Android Einleitung - Systemarchitektur Hochschule Darmstadt WS15/16 1 Inhalt Historie Systemarchitektur Sandbox 2 Motivation Kontra Pro Limitierte Größe Begrenzte Ressourcen Kein Standardgerät

Mehr

Erste Erfahrungen mit Android

Erste Erfahrungen mit Android Java User Group München, 22. 9. 2008 Erste Erfahrungen mit Android 1 Was ist Android? Die erste vollständige, offene und freie Plattform für mobile Telefone Entwickelt von der Open Handset Alliance (Telecoms,

Mehr

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

Die 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,

Mehr

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

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

Apps Programmierung von Android-Smartphones

Apps Programmierung von Android-Smartphones Apps Programmierung von Android-Smartphones 2/14 Geplantes Tagesprogramm Vormittag: Überblick / Erwartungen Warum Android? Grundlagen ggf. gemeinsame Installation ggf. Vergleich Delphi - java ein einfaches

Mehr

Einfü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 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

Mehr

Einführung in Android. 9. Dezember 2014

Einführung in Android. 9. Dezember 2014 Einführung in Android 9. Dezember 2014 Was ist Android? Software für mobile Geräte: Betriebssystem Middleware Kernanwendungen Android SDK: Tools und APIs zur Entwicklung von Anwendungen auf der Android-Plattform

Mehr

Seminar Multimediale Werkzeuge Sommersemester 2011

Seminar Multimediale Werkzeuge Sommersemester 2011 Seminar Multimediale Werkzeuge Sommersemester 2011 Dipl.-Ing. Marco Niehaus marco.niehaus@tu-ilmenau.de 09.06.2011 Page 1 Android Development - Installation Java SDK wird benötigt (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

1. Software-Plattform Android Android. Was ist Android? Managed Code, Angepasste Java Virtual Machine

1. Software-Plattform Android Android. Was ist Android? Managed Code, Angepasste Java Virtual Machine 1. Software-Plattform Android Android Was ist Android? Plattform und Betriebssystem für mobile Geräte (Smartphones, Mobiltelefone, Netbooks), Open-Source Linux-Kernel ab 2.6, aktuell 3.8 Managed Code,

Mehr

Android GUI Entwicklung

Android GUI Entwicklung Android GUI Entwicklung Aktuelle Technologien verteilter Java Anwendungen Referent: Stefan Haupt Hello World! Agenda Einführung & Motivation Android Applikationen UI-Komponenten Events Ressourcen Kommunikation

Mehr

Auf einen Blick. Elementare Anwendungsbausteine. Telefonfunktionen nutzen. Dateien und Datenbanken. Organizer und Multimedia

Auf einen Blick. Elementare Anwendungsbausteine. Telefonfunktionen nutzen. Dateien und Datenbanken. Organizer und Multimedia Auf einen Blick Auf einen Blick TEIL I Grundlagen 1 Android eine offene, mobile Plattform... 21 2 Hallo Android!... 43 3 Von der Idee zur Veröffentlichung... 73 TEIL II Elementare Anwendungsbausteine 4

Mehr

Java Einführung Programmcode

Java 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:

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Grundlagen der Informatik Übungen 1.Termin

Grundlagen der Informatik Übungen 1.Termin Grundlagen der Informatik Übungen 1.Termin Dr. Ing Natalia Currle-Linde Institut für Höchstleistungsrechnen 1 Kurzvorstellung Dr.-Ing. Natalia Currle-Linde linde@hlrs.de Institut für Höchstleistungsrechnen

Mehr

Android Apps. Mentoring SS 16. Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016

Android Apps. Mentoring SS 16. Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016 Android Apps Mentoring SS 16 Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016 Wichtige Dateien MainActivity.java activity_main.xml AndroidManifest.xml Die Dateien MainActivity.java,

Mehr

Apps Programmierung von Android-Smartphones

Apps Programmierung von Android-Smartphones Apps Programmierung von Android-Smartphones 2/34 Android-Apps Gliederung: Warum? / Warum Android? Grundlagen Beispiel (sehr kurz) weitere Möglichkeiten Einsatz im Unterricht Diskussion / Fragen 3/34 Smartphone-Programmierung

Mehr

Mobile App Development. - Einführung -

Mobile App Development. - Einführung - Mobile App Development - Einführung - Inhalt Organisatorisches Vorlesungsinhalt Mobile Geräte Android Architektur App Aufbau Praktikum Organisatorisches 4 SWS, 5 ECTS 2 Vorlesung / 2 Praktikum ca. 10 Wochen

Mehr

7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure

7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure 7. Objektorientierte Softwareentwicklung/3 Informatik II für Verkehrsingenieure Überblick FOLGENDE BEGRIFFE/PRINZIPIEN SOLLTEN BEKANNT SEIN Objekte Klasse Attribute Fähigkeiten ZIEL DER HEUTIGEN LEHRVERANSTALTUNG

Mehr

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Organisatorisches Anmelden im Web: ZIV Lehre Anmelden Anwesenheitsliste Anwesenheitsschein bei 75% Anwesenheit Allgemeine

Mehr

Programmierung für Android. Gliederung 1) Der Markt für mobile Geräte. 2) Android aus Anwendersicht. 3) Android aus Entwicklersicht.

Programmierung für Android. Gliederung 1) Der Markt für mobile Geräte. 2) Android aus Anwendersicht. 3) Android aus Entwicklersicht. Programmierung für Android Gliederung ) Der Markt für mobile Geräte 2) Android aus Anwendersicht 3) Android aus Entwicklersicht 4) Programmierung Teil Der Markt für mobile Geräte 2 Smartphone-Nutzer 3

Mehr

Thomas Künneth. Android 3. Apps entwickeln mit dem Android SDK. Galileo Press

Thomas Künneth. Android 3. Apps entwickeln mit dem Android SDK. Galileo Press Thomas Künneth Android 3 Apps entwickeln mit dem Android SDK Galileo Press Vorwort 13 TEIL I Grundlagen 1.1 Entstehung 19 1.1.1 Die Open Handset Alliance, 20 1.1.2 Android Ine 20 1.1.3 Evolution einer

Mehr

Einführung in die Android App-Entwicklung. Patrick Treyer und Jannis Pinter

Einführung in die Android App-Entwicklung. Patrick Treyer und Jannis Pinter Einführung in die Android App-Entwicklung Patrick Treyer und Jannis Pinter Agenda Was ist Android? Android Versionen Layout, Strings und das Android Manifest Activities, Intents und Services Entwicklungsumgebung

Mehr

Über den Autor 7. Teil I Los geht s mit Java für die Android-Entwicklung 25. Kapitel 1 Alles über Java und Android 27

Über den Autor 7. Teil I Los geht s mit Java für die Android-Entwicklung 25. Kapitel 1 Alles über Java und Android 27 Inhaltsverzeichnis Über den Autor 7 Einführung 19 Wie Sie dieses Buch verwenden 19 In diesem Buch verwendete Konventionen 19 Was Sie nicht lesen müssen 20 Törichte Voraussetzungen 20 Wie dieses Buch aufgebaut

Mehr

Vorkurs Informatik WiSe 15/16

Vorkurs 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

Mehr

Android Apps entwickeln

Android Apps entwickeln Android Apps entwickeln Kompakt-Intensiv-Training Mit Apps können Sie den Nutzwert Ihres Android-Smartphones und -Tablets ständig erweitern. Wie Sie schnell mittels Java ihre eigenen Android Apps programmieren

Mehr

Eclipse 3.0 (Windows)

Eclipse 3.0 (Windows) Eclipse Seite 1 Eclipse 3.0 (Windows) 1. Eclipse installieren Eclipse kann man von der Webseite http://www.eclipse.org/downloads/index.php herunterladen. Eclipse ist für Windows, Mac und Linux erhältlich.

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen

Mehr

Inhaltsverzeichnis. 2.2 Grundlagen der UML... 41. 2.3 Zusammenfassung... 53

Inhaltsverzeichnis. 2.2 Grundlagen der UML... 41. 2.3 Zusammenfassung... 53 Vorwort......................................................... 13 1 Vorbereitungen.................................................. 17 1.1 JDK-Installation unter Windows................................

Mehr

Java für Computerlinguisten

Java für Computerlinguisten Java für Computerlinguisten 2. Objektorientierte Programmierung Christian Scheible Institut für Maschinelle Sprachverarbeitung 28. Juli 2009 Christian Scheible Java für Computerlinguisten 28. Juli 2009

Mehr

Bewusster Umgang mit Smartphones

Bewusster Umgang mit Smartphones Bewusster Umgang mit Smartphones Komponenten Hardware OS-Prozessor, Baseband-Prozessor Sensoren Kamera, Mikrofon, GPS, Gyroskop, Kompass,... Netzwerk: WLAN-Adapter, NFC, Bluetooth,... Software Betriebssystem

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Vererbung & Schnittstellen in C#

Vererbung & Schnittstellen in C# Vererbung & Schnittstellen in C# Inhaltsübersicht - Vorüberlegung - Vererbung - Schnittstellenklassen - Zusammenfassung 1 Vorüberlegung Wozu benötigt man Vererbung überhaubt? 1.Um Zeit zu sparen! Verwendung

Mehr

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

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

Übungen zur Android Entwicklung

Übungen zur Android Entwicklung Übungen zur Android Entwicklung Aufgabe 1 Hello World Entwickeln Sie eine Hello World Android Applikation und laden diese auf den Emulator. Leiten Sie hierfür die Klasse android.app.activity ab und entwerfen

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

Walkabout: Location Based Services mit Android und dem Google Phone

Walkabout: Location Based Services mit Android und dem Google Phone Walkabout: Location Based Services mit Android und dem Google Phone Teilbereich 1: Die Android Plattform für mobile Geräte (Software) Von: Sebastian Schul Inhalt Einleitung Was ist Android Exkurs: Wie

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

GetName(), GetName(), GetGeschlecht() und AelterWerden().

GetName(), GetName(), GetGeschlecht() und AelterWerden(). 11. Vererbung Vererbung ist eine der mächtigsten Funktionalitäten der objektorientierten Programmiersprachen. Man versteht unter Vererbung die Tatsache, dass eine Klasse alle Methoden und Variablen einer

Mehr

Informatik Sommercamp 2012

Informatik Sommercamp 2012 Informatik Sommercamp 2012 App Entwicklung mit dem Android SDK Dominik W., Stefan S., Jan L. Fakultät für Informatik und Mathematik Universität Passau 23.07.2012 Gliederung 1 2 3 4 Warum? an Schule und

Mehr

Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org

Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org Fachhochschule Münster Labor für Software Engineering luzar@fh-muenster.de www.naviki.org 1 Naviki die Idee www.naviki.org 2 Wie funktioniert

Mehr

Java Programmierung auf der Konsole / unter Eclipse

Java Programmierung auf der Konsole / unter Eclipse Fakultät Informatik, HFU Brückenkurs Programmieren 1 Java Programmierung auf der Konsole / unter Eclipse Allgemeine Begriffe Programmiersprache: künstliche Sprache zur Notation von Programmen Programm:

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

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

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

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

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

Objektorientierte Programmierung in Java

Objektorientierte Programmierung in Java Objektorientierte Programmierung in Java 1. Auflage Objektorientierte Programmierung in Java schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag C.H. Beck im Internet:

Mehr

Mobile App Development. - Einführung -

Mobile App Development. - Einführung - Mobile App Development - Einführung - Inhalt Organisatorisches Vorlesungsinhalt Mobile Geräte Android Architektur App Aufbau Praktikum Organisatorisches 4 SWS, 5 ECTS 2 Vorlesung / 2 Praktikum 10 Wochen

Mehr

Datenhaltung für Android. Model First

Datenhaltung für Android. Model First Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung

Mehr

Java Wireless Toolkit (JWT) Bei der Programmierung von Anwendungsprogrammen für mobile Endgeräte eignet sich die Verwendung des Java Wireless Toolkit.

Java Wireless Toolkit (JWT) Bei der Programmierung von Anwendungsprogrammen für mobile Endgeräte eignet sich die Verwendung des Java Wireless Toolkit. 1 Seminar zum Programmierprojekt Arbeitsbereich Technische Informatik Ausgabe: 30. April 2008 Anleitung B3 Einführung in die Entwicklungsumgebungen Allgemeines In dieser Aufgabe lernen wir die Entwicklungsumgebungen

Mehr

C# im Vergleich zu Java

C# im Vergleich zu Java C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung

Mehr

Klassenbeziehungen & Vererbung

Klassenbeziehungen & Vererbung Klassenbeziehungen & Vererbung VL Objektorientierte Programmierung Raimund Kirner teilweise nach Folien von Franz Puntigam, TU Wien Überblick Arten von Klassenbeziehungen Untertypen versus Vererbung in

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

Mehr

Matthias Furtmüller, Stefan Haselböck. Android

Matthias Furtmüller, Stefan Haselböck. Android Matthias Furtmüller, Stefan Haselböck Android Grundlagen, Entwicklungsumgebung, wichtige Konzepte und Bibliotheken, Unit Testing unter Android, Simulator, Deployment Inhaltsverzeichnis 1 Entwicklungsumgebung,

Mehr

1. Java Grundbegriffe

1. Java Grundbegriffe 1. Java Grundbegriffe Geschichte von Java Programmieren mit Java Interpretieren vs. Kompilieren Java Byte-Code Jave Virtual Machine Arbeitsmaterialien Allgemeine Informatik 2 SS09 Folie 1.1 Java, eine

Mehr

Delegatesund Ereignisse

Delegatesund Ereignisse Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

Handbuch für die Erweiterbarkeit

Handbuch für die Erweiterbarkeit Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6

Mehr

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Inhalt Toast-Meldungen Permissions Sensoren GPS (Global Positioning System) Kamera Anzeigen von Koordinaten auf einer

Mehr

Arno Becker Marcus Pant. Android. Grundlagen und Programmierung. I dpunkt.verlag

Arno Becker Marcus Pant. Android. Grundlagen und Programmierung. I dpunkt.verlag Arno Becker Marcus Pant Android Grundlagen und Programmierung I dpunkt.verlag IX 1 Ein erstes Beispiel 3 1.1 Projekt anlegen 3 1.2 Die erste Activity 4 1.3 Layout definieren 5 1.4 Activities aufrufen 8

Mehr

1 Polymorphie (Vielgestaltigkeit)

1 Polymorphie (Vielgestaltigkeit) 1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen

Mehr

Datenbankanwendungsprogrammierung Crashkurs Java

Datenbankanwendungsprogrammierung Crashkurs Java Datenbankanwendungsprogrammierung Crashkurs Java Denny Priebe Datenbankanwendungsprogrammierung p. Unterschiede zu C, C++ typedefs, Präprozessor Strukturen, Unions globale Funktionen Mehrfachvererbung

Mehr

Alexander Niemann. Das Einsteigerseminar Objektorientierte Programmierung in Java. bhv

Alexander Niemann. Das Einsteigerseminar Objektorientierte Programmierung in Java. bhv Alexander Niemann Das Einsteigerseminar Objektorientierte Programmierung in Java G bhv Inhaltsverzeichnis Vorwort 11 Einleitung 13 Lernen - Üben 13 Über dieses Buch 14 Ш11ШШШШ '. ш Ш Java 19 Die Geschichte

Mehr

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

Mehr

2. Hintergrundverarbeitung in Android: Services und Notifications

2. Hintergrundverarbeitung in Android: Services und Notifications 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht: In Mobis 1: Threads; hier genauerer Blick auf Services

Mehr

Projekt AGB-10 Fremdprojektanalyse

Projekt AGB-10 Fremdprojektanalyse Projekt AGB-10 Fremdprojektanalyse 17. Mai 2010 1 Inhaltsverzeichnis 1 Allgemeines 3 2 Produktübersicht 3 3 Grundsätzliche Struktur und Entwurfsprinzipien für das Gesamtsystem 3 3.1 Die Prefuse Library...............................

Mehr

Grundkonstrukte der Objektorientierung in Java, C# und C++

Grundkonstrukte der Objektorientierung in Java, C# und C++ Grundkonstrukte der Objektorientierung in Java, C# und C++ 2 Viele Patterns basieren auf einer Kombination einiger zentraler Modellierungskonstrukte, namentlich auf Schnittstellen- und Implementierungsvererbung

Mehr

Java: Eine Übersicht. Dennis Giffhorn. Lehrstuhl für Programmierparadigmen Universität Karlsruhe

Java: Eine Übersicht. Dennis Giffhorn. Lehrstuhl für Programmierparadigmen Universität Karlsruhe Java: Eine Übersicht Dennis Giffhorn Lehrstuhl für Programmierparadigmen Universität Karlsruhe Allgemeines Objektorientiert Syntaxfamilie von C/C++ Statisch getypt Entwickelt von Sun Microsystems class

Mehr

Java-Vorkurs 2015. Wintersemester 15/16

Java-Vorkurs 2015. Wintersemester 15/16 Java-Vorkurs 2015 Wintersemester 15/16 Herzlich Willkommen! package de.unistuttgart.47.01.javavorkurs; public class WelcomeErstis { public static void main(string[] args){ System.out.println( Herzlich

Mehr

Thomas Gewering Benjamin Koch Dominik Lüke

Thomas Gewering Benjamin Koch Dominik Lüke HEINZ NIXDORF INSTITUT Universität Paderborn Technische Informatik für Ingenieure WS 2010/2011 Übungsblatt Nr. 1 11. Oktober 2010 Übungsgruppenleiter: Matthias Fischer Mouns Almarrani Rafał Dorociak Michael

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

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

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel. Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

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

Java - Einführung in die Programmiersprache. Leibniz Universität IT Services Anja Aue Java - Einführung in die Programmiersprache Leibniz Universität Anja Aue Handbücher am RRZN Programmierung. Java: Grundlagen und Einführung Java: Fortgeschrittene Techniken und APIs Java und XML Java -

Mehr

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003 Test zu Grundlagen der Programmierung Leitung: Michael Hahsler 1. November 00 Name Martrikelnummer Unterschrift Bitte kreuzen Sie das Studium an, für das Sie diese Prüfung ablegen: O Bakkalaureat Wirtschaftsinformatik

Mehr

Plattformen mobiler Endgeräte Windows Phone, ios, Android

Plattformen mobiler Endgeräte Windows Phone, ios, Android Plattformen mobiler Endgeräte Windows Phone, ios, Android 13.12.2012 Inhaltsverzeichnis 1. Einführung 2. Ecosystem Smartphone OS 3. Mobile Software Platform 4. Android App Entwicklung 5. Zusammenfassung

Mehr

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4.

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4. SEW Übung EMFText 1 Aufgabe Erstellen Sie eine textuelle Domänenspezifische Sprache Domain-specific Language (DSL) mit dem Werkzeug EMFText. Die Sprache soll dazu dienen Formulare (Fragen, Antworttypen

Mehr

4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen

4 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

Mehr

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

Java für Anfänger Teil 1: Intro. Programmierkurs 11.-15.10.2010 Manfred Jackel Java für Anfänger Teil 1: Intro Programmierkurs 11.-15.10.2010 Manfred Jackel 1 1. Handwerkszeug Eclipse Workbench mit Java-Compiler Java Runtime Environment Notwendige Software Java Runtime Environment

Mehr

Praktikum Betriebssysteme 1. Aufgabe (1)

Praktikum Betriebssysteme 1. Aufgabe (1) FG TECHNISCHE INFORMATIK U BS 041 01 TH 09 Praktikum Betriebssysteme 1. Aufgabe (1) Es wird ein unter LINUX lauffähiges C++-Programm ptab, mit dem Informationen über die Partitionierung von Festplatten

Mehr

Einführung zu den Übungen aus Softwareentwicklung 1

Einführung zu den Übungen aus Softwareentwicklung 1 Einführung zu den Übungen aus Softwareentwicklung 1 Dipl.-Ing. Andreas Riener Universität Linz, Institut für Pervasive Computing Altenberger Straße 69, A-4040 Linz riener@pervasive.jku.at SWE 1 // Organisatorisches

Mehr

Technische Dokumentation

Technische Dokumentation Technische Dokumentation der Ontologie Wärmedämmung des Projekts EcoNavi Erstellt für: Bremer Umweltberatung Hamburg, Juli 2005-1 - Inhaltsverzeichnis Einleitung... 2 Aufbau einer Ontologie... 3 Ontologieeditor

Mehr

Szenario 3: Service mit erweiterter Schnittstelle

Szenario 3: Service mit erweiterter Schnittstelle 2. Hintergrundverarbeitung in Android: Services und Notifications Szenarien für lokale Services Szenario 3: Service mit erweiterter Schnittstelle Ein Service bietet zusätzliche Methoden an, über die sich

Mehr