Programmiererfahrungen mit Android
|
|
|
- Käte Meike Hoch
- vor 8 Jahren
- Abrufe
Transkript
1 Programmiererfahrungen mit Android Arthur Thiessen & Senad Licina Wissenschaftliches Rechnen Fachbereich Informaitk, Uni Hamburg / 41 Tetroid 1 Spielgeschichte Spielkonzept 2 Stein Spielbrett Spieldynamik und Grafik Übergabe von Daten zwischen Activities 3 4 Übersicht 2 / 41
2 Spielgeschichte Tales of a Lengendary Videogame Spielgeschichte Spielkonzept Juni Alexei Leonidowitsch Paschitnow erfindet Pentomino dient als Vorlage Lizenzproblematik Nintendo Gameboy 3 / 41 Spielkonzept for beginners Spielgeschichte Spielkonzept 4 Blöcke = 1 Stein Steine fallen von Oben volle Zeilen werden gelöscht Punktesystem Levelsystem Game Over! 4 / 41
3 Steine Stein Spielbrett Spieldynamik und Grafik Übergabe von Daten zwischen Activities Datentyp Array of Array of int! Operationen Positionsveränderung Rotation { { 0, 0, 0, 0, 0, { 0, 1, 1, 0, 0, { 0, 0, 1, 1, 0, { 0, 0, 0, 0, 0, { 0, 0, 0, 0, 0 5 / 41 Spielbrett Stein Spielbrett Spieldynamik und Grafik Übergabe von Daten zwischen Activities Datentyp Array of Array of int! Operationen Stein ins Brett legen Zeilen Löschen Kollisionsabfrage Game Over! { {1,1,1,1,1,1,1,1,1,1,1,1 6 / 41
4 Spieldynamik und Grafik Stein Spielbrett Spieldynamik und Grafik Übergabe von Daten zwischen Activities Thread & Schleife vs. Timer runonuithread(); Views anpassen (TextView)findViewById(R.id.MyTextView); gewünschte funktionen aurfufen fertig! GridLayout & ImageView Elemente lassen sich immer seperat auswählen Fehlschlag! :( FrameLayout & RectViews RectView extrends View beinhaltet ein ShapeDrawable performance 7 / 41 Stein Spielbrett Spieldynamik und Grafik Übergabe von Daten zwischen Activities Übergabe von Daten zwischen Activities Daten werden über das Intent an eine andere Activity übergeben mit der,,putextra -Methode werden Daten in dem Intent gelagert mit der,,getextras -Methoden werden Daten vom Intent ausgelesen in Intents können nur Bestimmte Datentypen übergeben werden java.io.serializable vs. android.os.parcelable 8 / 41
5 Stein Spielbrett Spieldynamik und Grafik Übergabe von Daten zwischen Activities Übergabe von Daten zwischen Activities,,alte Activity Intent meinintent = new Intent(this, NeueActivity.class); meinintent.putextra("meinstring", "have you tried to turn it OFF and ON again?"); meinintent.putextra("meininteger", 42); startactivity(meinintent);,,neue Activity Bundle meinbundle = getintent().getextras(); String meinstring = (String)bundle.get("meinString"); int meininteger = (int)bundle.get("meininteger"); 9 / 41 Zwei Spieler sollen gegeneinander spielen können jeder von seinem Gerät aus Sichtbar auf dem Display das eigene Spielfeld das Spielfeld vom Gegner nächster Stein Punktzahl 10 / 41
6 Server Möglichst geringe Bedeutung (zwecks P2P) Übernimmt die Rolle des Vermittlers von Spielern Client Möglichst Peer2Peer Bluetooth/Internet Hohe Performance Bedienbarkeit (Tasten/) Minimaler Traffic 11 / 41 Überblick 12 / 41
7 Tetroid Server reaktiver Akteur Einfacher TCP Socket Listener Empfängt Nachrichten vom Client Login Logout UserList Request Versendet Antworten an Client 13 / 41 Tetroid Client aktiver Aktuer Spielmechanik P2P Kommunikation Sensorsteuerung 14 / 41
8 Tetroid Client Bluetooth: Pro Contra kostenlos überall verfügbar weit verbreitet gute Dokumentation erst ab Android 2.0 somit nur auf modernsten Handys testbar inoffizielle Bibliotheken nicht zu gebrauchen kleine Reichweite Internet: Pro Contra große Reichweite gewohnte Socket Programmierung wird ohnehin für Kommunikation mit Server verwendet Kostenfaktor Empfang 15 / 41 Bluetooth Seit API Level 5 (Android 2.0) stehen uns 8 Klassen zur Verfügung: BluetoothAdapter: repräsentiert das lokale BT Gerät BluetoothDevice: repräsentiert ein externes BT-Gerät BluetoothServerSocket: hört auf eingehende Verbindungen BluetoothSocket: initiiert eine Verbindung BluetoothClass: grundsätzliche Charakteristika von BT-Geräten 16 / 41
9 Bluetooth Um Bluetooth nutzen zu können, muss man die Berechtigungen in der Android-Manifest XML anpassen: permission.bluetooth <manifest...> <uses-permission android:name=\android.permission.bluetooth\ /> </manifest> Möchte man einen DeviceScan durchführen, so braucht man ADMIN: permission.bluetooth ADMIN <manifest...> <uses-permission android:name=\android.permission.bluetooth_admin\ /> </manifest> 17 / 41 Bluetooth Beispiel Programm zum Suchen & Anzeigen von BT-Geräten BluetoothAdapter mbluetoothadapter = BluetoothAdapter.getDefaultAdapter(); if (!mbluetoothadapter.isenabled()) { Intent enablebtintent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startactivityforresult(enablebtintent, REQUEST_ENABLE_BT); private final BroadcastReceiver mreceiver = new BroadcastReceiver() { public void onreceive(context context, Intent intent) { String action = intent.getaction(); if (BluetoothDevice.ACTION_FOUND.equals(action)) { BluetoothDevice device = intent.getparcelableextra( BluetoothDevice.EXTRA_DEVICE); marrayadapter.add(device.getname() + "\n" + device.getaddress()); ; IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND); registerreceiver(mreceiver, filter); 18 / 41
10 Bluetooth ein Vorteile Wider Erwartungen (theoretisch) sehr leicht zu handhaben Top Dokumentation & Guides Nachteile Emulator unterstützt (noch) kein Bluetooth Leider sind die genannten Funktionalitäten erst ab Android 2.0 so verfügbar. Möchte man dennoch Bluetooth vor Version 2.0 nutzen, so muss man ggf. die inoffizielle Bluetooth API verwenden ( 19 / 41 Übersicht Übersicht Es gibt 2 Klassen, mit deren Hilfe man auf die Android bezug nehmen kann: SensorManager ist ein SystemService und verwaltet sämtliche dem Android bekannte SensorEventListener sollte von einer Klasse implementiert werden, die bestimmte ereignisse verarbeiten soll 20 / 41
11 Übersicht Übersicht Tetroid bietet eine Sensorunterstützung zur Spielsteuerung an. Es handelt sich um Beschleunigungssensoren entlang der X, Y und der Z Achse. 21 / 41 Codebeispiel Übersicht Codebeispiel Public class TetroidSensor implements SensorEventListener{ Public TetroidSensor(Activity a){ SensorManager sm = (SensorManager)a.getSystemService( Activity.SENSOR_SERVICE); sm.registerlistener(sm.getsensorlist(sensor.type_accelerometer)); Public synchronized onsensorchanged(sensorevent // verarbeite event // wichtig! Verzögerung einbauen! event){ 22 / 41
12 Übersicht Vorteile funktioniert gut und präzise mit wenig Code erreicht man schnelle Ergebnisse Nachteile wenig Dokumentation erfordert grundlegendes Verständnis von Listenern und Events 23 / 41 HH-Plan 5 an das App 6 Zugriff auf Services Verwendete Klassen Lokalisierung 7 Was sind Implementierung 8 Einsatz Anfrage Antwort 24 / 41
13 an das App Fahrplanauskunft für die öffentlichen Verkehrsmittel Hamburgs über das Android Warum nicht einfach mit geofox? weniger Aufwand für den Benutzer weniger Traffic (spart ggf. Kosten) kürzere Wartezeit als über den Browser Android stellt eine gute Plattform dar 25 / 41 an das App an das App Fahrplanauskunft Bring me Home GPS-Koodinaten auswertung 26 / 41
14 Zugriff auf Services Zugriff auf Services Verwendete Klassen Lokalisierung um Zugriff auf bestimmte Services zu erhalten (z.b. Internet, GPS), braucht man ersteinmal eine Berechtigung dazu dem Benutzer werden die Berechtigungen bei der Installation von Apps angezeigt Berechtigungen werden im Android Manifest festgelegt Internet-Permission <uses-permission android:name="android.permission.internet"/> 27 / 41 Verwendete Klassen Zugriff auf Services Verwendete Klassen Lokalisierung android.location.location repräsentiert eine geographische Position es werden u.a. Breiten- & Längengrad, Uhrzeit, Geschwindigkeit und Genauigkeit gespeichert android.location.locationmanager ist ein Systemservice, auf den man zugreifen kann bietet eine Vielzahl von Methoden android.location.locationlistener wird beim LocationManager angemeldet ruft onlocationchanged auf, wenn sich die Geoposition verändert android.location.geocoder eine Klasse, die zum,,geocoding benutzt wird als geocoding bezeichnet man den Prozess eine Adresse in eine geographische Position umzuwandeln. reverse geocoding 28 / 41
15 android.location.location Zugriff auf Services Verwendete Klassen Lokalisierung Initialisierung context = >Aktuelle Activity< lm = (LocationManager)context.getSystemService(Context.LOCATION_SERVICE); latitude = lm.getlastknownlocation(locationmanager.gps_provider).getlatitude(); longitude = lm.getlastknownlocation(locationmanager.gps_provider).getlongitude(); lm.requestlocationupdates(locationmanager.gps_provider,5000,0,>locationlistener<); LocationListener public void onlocationchanged(location location) { latitude = location.getlatitude(); longitude = location.getlongitude(); Location AddressList Address Straße gc = new Geocoder(_context); addresslist = gc.getfromlocation(latitude, longitude, >maxresults<); String addressneartolocation = addresslist.get(0).getaddressline(0); 29 / 41 Was sind Implementierung bieten eine Art GUI, welche auf die Activity,,gelegt werden kann können aufgerufen werden, ohne die aktuelle Activity zu beenden eigenen sich z.b. um: Fehlermeldungen/Warnungen/Nachrichten auszugeben Ladebalken anzuzeigen Anfragen an den Benutzer zu stellen Auswahlmöglichkeiten auszugeben alles was du programmieren kannst! 30 / 41
16 Wie erzeugt werden Was sind Implementierung Aufruf aus der Activity static final int MEIN_DIALOG_ID = 0; protected Dialog oncreatedialog(int id) { Dialog dialog; switch(id) { case MEIN_DIALOG_ID: dialog = new Dialog(getApplicationContext()); dialog.setcontentview(r.layout.meindialoglayout); dialog.settitle("mein Dialog"); // passe die Anzeige auf meinem Dialog an break; default: dialog = null; return dialog; public void zeigemeinendialog() { showdialog(mein_dialog_id); 31 / 41 Wie erzeugt werden Was sind Implementierung Erzeugung eines PickTime int minutes = _datetime.getminutes(); int hours = _datetime.gethours(); result = new TimePickerDialog(>context<, >OnTimeSetListener<, hours, minutes, true); OnTimeSetListener public void ontimeset(timepicker view, int hourofday, int minute) { >context<.sethours(hourofday); >context<.setminutes(minute); >context<.updatetime(); 32 / 41
17 Einsatz Einsatz Anfrage Antwort Überall dort, wo der direkte Zugriff auf Datenbanken wenig sinnvoll ist Eliminiert Kompatibilitätsprobleme Sicherheitsaspekte So kann der (partielle) Zugriff auf eine Datenbank ermöglicht werden, ohne dass dem Anwenderprogramm der direkte Zugang gestattet werden muss. Über die -Schnittstelle kann die Menge der ausführbaren Methoden reglementiert und definiert werden. 33 / 41 Struktur Einsatz Anfrage Antwort 34 / 41
18 Anfrage Einsatz Anfrage Antwort -Anfrage <?xml version="1.0"?> <soap:envelope xmlns:soap=" soap:encodingstyle=" <soap:body> <m:getprice xmlns:m=" <m:item>apples</m:item> </m:getprice> </soap:body> </soap:envelope> 35 / 41 Antwort Einsatz Anfrage Antwort -Antwort <?xml version="1.0"?> <soap:envelope xmlns:soap=" soap:encodingstyle=" <soap:body> <m:getpriceresponse xmlns:m=" <m:price>1.90</m:price> </m:getpriceresponse> </soap:body> </soap:envelope> 36 / 41
19 Einsatz Anfrage Antwort Vorteile Universelles Nachrichtenformat Sicherheit Kontrolle über Daten Einfache Handhabung Nachteile Viel Overhead durch XML Zusätzlicher Programmieraufwand durch XML Parser 37 / 41 eine subjektive Meinung Abschließendes Subjektive Meinung zur Entwicklungsumgebung von Android Zusammenfasuung Fragen Quellenangabe 38 / 41
20 Zusammenfassung Abschließendes Subjektive Meinung zur Entwicklungsumgebung von Android Zusammenfasuung Fragen Quellenangabe Was wir gelernt haben: eine Technische Realisierungsmöglichkeit von kennengelernt wie man die anspricht und was man zu beachten hat wie man auf den GPS-Service zugreift, was man dabei beachten muss und wie man diese Daten verwerten kann was sind und wie / wozu man diese einsetzt Grundlagen über -Services 39 / 41 Fragen? Abschließendes Subjektive Meinung zur Entwicklungsumgebung von Android Zusammenfasuung Fragen Quellenangabe 40 / 41
21 Quellenangabe Abschließendes Subjektive Meinung zur Entwicklungsumgebung von Android Zusammenfasuung Fragen Quellenangabe 41 / 41
Android-Apps weitere Möglichkeiten
Android-Apps weitere Möglichkeiten 2/20 weitere Möglichkeiten Speichern in der Sandbox OnTouchListener Senden und Empfangen von SMS Anbindung von Datenbanken Der Beschleunigungssensor Übung 3/20 Speichern
Ü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
Teil I Augmented Learning - Vortragender: Krischan Udelhoven. Teil II Android - Vortragender: Folker Hoffmann
Teil I Augmented Learning - Vortragender: Krischan Udelhoven Teil II Android - Vortragender: Folker Hoffmann Inhalt 1.Warum Android? 2.Was ist Android? 3.Entwicklung mit Android 18. Januar 2010 Android
Beispiel droidremoteppt
Arthur Zaczek Nov 2014 1 Beispiel droidremoteppt 1.1 Beschreibung Powerpoint soll mit ein Android Handy über Bluetooth gesteuert werden Folien wechseln (Vor/Zurück) Folien am Handy darstellen Am Handy
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 [email protected] www.naviki.org 1 Naviki die Idee www.naviki.org 2 Wie funktioniert
Theorie zu Übung 8 Implementierung in Java
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept
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
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
ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober 2010. FH-Gieÿen-Friedberg Android Praktikum
Analyse der Android Plattform Andre Rein, Johannes Florian Tietje FH-Gieÿen-Friedberg Android Praktikum 28. Oktober 2010 Topics 1 Übersicht Android Plattform Application Framework Activities und Services
Android Processes & Services
Android Processes & Services Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Ziele heute Arbeitsblatt 4 besprechen (inkl. Repetition)
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
1 Einführung 1. 2 Einrichten der Arbeitsumgebung 9. 3 Schnelleinstieg in Xcode und Objective-C 25
1 Einführung 1 1.1 Das Smartphone 2 1.2 An wen richtet sich dieses Buch? 2 1.3 Buchaufbau und verwendete Technologien 3 1.4 Vorstellung des Beispielprojekts 4 2 Einrichten der Arbeitsumgebung 9 2.1 Installation
Android User Interface
Android User Interface Eine Einführung Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Ziele heute Arbeitsblatt 2 besprechen (inkl. Repetition)
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 Intents (Wiederholung I) Ein Intent erklärt die Absicht eine bestimmte Activity auszuführen Explizit durch Angabe einer
Entwickeln für Android OS
Entwickeln für Android OS Am Beispiel der WAPLA Wissenschaftliche Arbeitstechniken und Präsentation Lern Applikation Christian Kain Kevin Kain Wolfgang Kremser Gregor Bankhamer Warum Android? Verbreitung
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,
Accounts und Kontakte in Android
Accounts und Kontakte in Android Die letzten Wochen habe ich daran gearbeitet, die Kontakte der AddressTable von Leonardo und mir ins Android Adressbuch zu bringen. Dazu habe ich die AddressManagement-Applikation
4. Software-Komponenten in Android
4. Software-Kompponenten in Android Lernziele 4. Software-Komponenten in Android Themen/Lernziele Intents: Explizite und implizite Intents Intent-Filter Intent-Resolution Sub-Activities Broadcast Intents
Java - Webapplikationen
Java - Webapplikationen Bestandteile (HTTP,, JSP) Aufbau (Model View Controller) Datenverwaltung (Java Beans, Sessions) Entwicklung (Projektstruktur, Sysdeoplugin für Eclipse) 17. Januar 2006 Jan Hatje
11. Komponenten Grundlagen der Programmierung 1 (Java)
11. Komponenten Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 10. Januar 2006 Einordnung im Kontext der Vorlesung
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 [email protected] Was ist Android Offene Plattform für mobile Geräte Software Kompletter
0. Inhaltsverzeichnis
0. Inhaltsverzeichnis 0. Inhaltsverzeichnis...1 1. Kurze Einführung WebService Architektur...2 1.1 Synchrones Modell:...2 1.2 Asynchrones Modell:...2 1.3 Vorteile:...3 1.4 Voraussetzungen...3 2. Testseite
Themen. Web Service - Clients. Kommunikation zw. Web Services
Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur
iphone app - Arbeitszeitüberwachung
iphone app - Arbeitszeitüberwachung Arbeitszeitüberwachung - iphone App Diese Paxton-App ist im Apple App Store erhältlich. Die App läuft auf allen iphones mit ios 5.1 oder höher und enthält hochauflösende
1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen
1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen II.2.3 Datenabstraktion - 1 - public class Rechteck { Selektoren
Klausur Grundlagen der Programmierung
Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel
Einstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
Mobile App Development. - Alarm -
Mobile App Development - Alarm - Inhalt Alarme AlarmManger Wake locks 2 Alarm Alarm Oft ist es notwendig eine App zu starten, auch wenn der Benutzer nicht mit ihr interagiert Starten von Activities zu
Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005
Praktikum Datenbanksysteme Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Tomcat-Installation $JAVA_HOME (z.b. /home/dbp00/j2sdk1.4.2) $CATALINA_HOME (/home/dbp00/jakarta-tomcat-4) Skripte zum Start/Stop:
Welche Informatik-Kenntnisse bringen Sie mit?
Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt
Konzeption eines Backends für eine Liquid-Bedienoberfläche
Konzeption eines Backends für eine Liquid-Bedienoberfläche Gruppe Backend Hochschule für Technik und Wirtschaft Dresden Fakultät Informatik/Mathematik 25. Januar 2012 1 / 27 Gliederung 1 Einleitung 2 AIR
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,
Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen
Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18
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
Programmieren II. Innere Klassen. Heusch 10, Ratz 5.2.1, Institut für Angewandte Informatik
Programmieren II Innere Klassen Heusch 10, 13.10 Ratz 5.2.1, 9.8 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Innere Klassen Bisher kennen wir nur Klassen, die entweder zusammen
Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo
Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components
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
14.4.2016. Technische Hochschule Georg Agricola WORKSHOP TEIL 3. IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt
14.4.2016 Technische Hochschule Georg Agricola WORKSHOP TEIL 3 IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt Inhaltsverzeichnis 1. Kurzfassung zur Projekterstellung... 2 2. Morse-Tabelle...
RO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
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
Software Engineering Klassendiagramme Einführung
Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt
5.5.8 Öffentliche und private Eigenschaften
5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung
6 Speicherorganisation
Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen Speicherbereich für
AuD-Tafelübung T-B5b
6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit
Mobile Anwendungen Google Cloud Messaging
Mobile Anwendungen Google Cloud Messaging 1. Allgemeines zu Google Cloud Messaging (GCM): - 60% der Top 100 Apps nutzen Google Cloud Messagging - 200.000 Messages pro Sekunde = 17 Milliarden Messages pro
6 Oberflächen und Daten
111 6 Oberflächen und Daten Nachdem wir nun viel über die Gestaltung von Oberflächen und den Zugriff auf Views gelernt haben, möchten wir in diesem Kapitel zeigen, wie man Bildschirmseiten mit Daten aus
Überleben im Funkloch
Überleben im Funkloch Offlinefähige Apps für Android entwickeln Christian Janz (@c_janz ) [email protected] Christian Janz Consultant im Bereich Softwareentwicklung Java/JEE bei Bridging IT
Mock-Objekte. Universität Karlsruhe (TH) Fakultät für Informatik Lehrstuhl für Programmiersysteme. Forschungsuniversität gegründet 1825
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Mock-Objekte Verschiedene Testhelfer Ein Stummel (engl. stub) ist ein nur rudimentär implementierter Teil der Software und dient als Platzhalter
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik GUI-Programmierung mit Swing AWT und Swing Java enthält zwei Pakete zur Programmierung graphischer Oberflächen. java.awt: Das Abstract
ESB - Elektronischer Service Bericht
Desk Software & Consulting GmbH ESB - Elektronischer Service Bericht Dokumentation des elektronischen Serviceberichts Matthias Hoffmann 25.04.2012 DESK Software und Consulting GmbH Im Heerfeld 2-4 35713
Android-Apps ein komplexes Beispiel (Google-Maps und GPS-Daten, Listen, SD-Kartenzugriff, Activities mit Rückgabewerten und Web-Browser/Internet)
Android-Apps ein komplexes Beispiel (Google-Maps und GPS-Daten, Listen, SD-Kartenzugriff, Activities mit Rückgabewerten und Web-Browser/Internet) 2/42 Android Apps: ein komplexes Beispiel Gliederung Vorstellung
Klausur zur Einführung in die objektorientierte Programmierung mit Java
Klausur zur Einführung in die objektorientierte Programmierung mit Java im Studiengang Informationswissenschaft Prof. Dr. Christian Wolff Professur für Medieninformatik Institut für Medien-, Informations-
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
Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6
WS 2011/12 Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011 Prof. Dr. Bernhard Bauer Übungen zur Vorlesung Informatik II, Blatt 6 Abgabe: Montag, 05.12.2011, 12.00 Uhr, Informatik
Asynchrone Webservices mit Axis 1.x in Java
Asynchrone Webservices mit Axis 1.x in Java 1. Übersicht Architektur Da Webservices nach relativ kurzen Timeouts Anfragen abgearbeitet haben müsse, sind komplexe Anfragen wie sie in der Bioinformatik üblich
Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI
Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer
Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4
UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,
Java-Programmierung. Remote Method Invocation - RMI
Java-Programmierung Remote Method Invocation - RMI Entwicklungsmethoden Sockets Entwurf verteilter Anwendungen ist relativ aufwändig, da zunächst ein Kommunikationsprotokoll entwickelt werden muss aufwändig
Java: Eine kurze Einführung an Beispielen
Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse
PHP Kurs Online Kurs Analysten Programmierer Web PHP
PHP Kurs Online Kurs Analysten Programmierer Web PHP Akademie Domani [email protected] Allgemeines Programm des Kurses PHP Modul 1 - Einführung und Installation PHP-Umgebung Erste Lerneinheit Introduzione
Android VPN. Am Beispiel eines Netzwerktunnels für das Domain Name System (DNS) 1 Andiodine - Android DNS-VPN
Android VPN Am Beispiel eines Netzwerktunnels für das Domain Name System () 1 Inhalt VPN Framework in Android Übersicht zu Iodine Funktionsweise Demonstration 2 VPN und Android Verfügbar seit Android 4.0
Typo 3 installieren. Schritt 1: Download von Typo3
Typo 3 installieren Bevor Sie Typo3 installieren, müssen Sie folgende Informationen beachten: Typo3 benötigt eine leere Datenbank. Mit Ihrem Abonnement verfügen Sie über eine einzige Datenbank. Sie können
Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007
Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit
Studentische Lösung zum Übungsblatt Nr. 7
Studentische Lösung zum Übungsblatt Nr. 7 Aufgabe 1) Dynamische Warteschlange public class UltimateOrderQueue private Order[] inhalt; private int hinten; // zeigt auf erstes freies Element private int
Delegatesund Ereignisse
Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses
Beispiel für überladene Methode
Beispiel für überladene Methode class Gras extends Futter {... abstract class Tier { public abstract void friss (Futter x); class Rind extends Tier { public void friss (Gras x) {... public void friss (Futter
Software-Projekt: Mensch ärgere Dich nicht. Dokumentation Softwareprojekt: Mensch ärgere Dich nicht
Dokumentation Softwareprojekt: Mensch ärgere Dich nicht Das Programm Mensch ärgere Dich nicht ermöglicht das Spielen des gleichnamigen Spieles über Netzwerke. Jeder Spieler verfügt dabei über einen Clienten,
Extending tl_member. Andreas Fieger (@fiedschmuc) 2015-10-08
Extending tl_member Andreas Fieger (@fiedschmuc) 2015-10-08 Übersicht Was wollen wir? Wie könnten wir es erreichen? Aufwand/Folgekosten? Was wollen wir? Felder in der Mitgliederverwaltung hinzufügen (z.b.
Musterlösung Übungsblatt 2 Netzprogrammierung WS 05/06
Musterlösung Übungsblatt 2 Netzprogrammierung WS 05/06 Aufgabe 1 Bitte schreiben Sie ein RMI Objekt, das eine Person repräsentiert. Es soll die folgende Schnittstelle implementieren: public interface Person
Java Einführung Abstrakte Klassen und Interfaces
Java Einführung Abstrakte Klassen und Interfaces Interface Interface bieten in Java ist die Möglichkeit, einheitliche Schnittstelle für Klassen zu definieren, die später oder/und durch andere Programmierer
Kapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik
Klassen und höhere Datentypen Objekte, Felder, Methoden Küchlin/Weber: Einführung in die Informatik Klassen Klasse (class) stellt einen (i.a. benutzerdefinierten) Verbund-Datentyp dar Objekte sind Instanzen
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
Android + Arduino Hardware steuern mit Android. Entwicklertag Karlsruhe, 09.05.2012 Sebastian Wastl
Android + Arduino Hardware steuern mit Android Entwicklertag Karlsruhe, 09.05.2012 Sebastian Wastl Arduino Opensourceprojekt Auf Basis eines 8-Bit Mikrocontroller (ATMEL ATmega) Modular aufgebaut Erweiterbar
Klausur Software-Entwicklung September 00
Aufgabe 1: Wahrheitstafeln ausgeben (ca. 8 Punkte) Matrikelnr : Ergänzen Sie in folgendem Programm, eine rekursive Funktion, die eine Boole'sche Wahrheitstafel für N Variablen ausgibt. Die Zahl N soll
3 Objektorientierte Konzepte in Java
3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine
Technische Dokumentation RouterInfo
Technische Dokumentation RouterInfo Version 1.0 Daut Musolli und Alexander Rieke Inhalt Einleitung... 1 Technische Details... 1 Konsolenanwendung... 1 Klassendiagramm... 2 Klassen... 2 Grafische Benutzeroberfläche...
Kommentierung in C. Kommentierung in C. Von Sebastian Rothe 1/26. Kommentierung in C
Von Sebastian Rothe 1/26 Inhaltsverzeichnis 1. Programmierstil eine Übersicht 2. Motivation wozu Kommentierung? 3. Aspekte der Kommentierung 4. GLib als Beispiel 5. Dokumentationssysteme 6. Zusammenfassung
HSR git und subversion HowTo
HSR git und subversion HowTo An der HSR steht den Studierenden ein git Server für die Versionskontrolle zur Verfügung. Dieses HowTo fasst die notwendigen Informationen zur Verwendung dieses Dienstes zusammen.
Anleitung. E-Mail Spam Filter mit Quarantäne Eine kurze Funktionsübersicht. Internet- & Netzwerk-Services
Anleitung E-Mail Spam Filter mit Quarantäne Internet- & Netzwerk-Services 1. Anmeldung Die Anmeldung erfolgt über: http://mailadmin.tbits.net Jeder Benutzer meldet sich mit der E-Mail-Adresse als Benutzername
Programmieren 2 Java Überblick
Programmieren 2 Java Überblick 1 Klassen und Objekte 2 Vererbung 4 Innere Klassen 5 Exceptions 6 Funktionsbibliothek 7 Datenstrukturen und Algorithmen 8 Ein-/Ausgabe 9 Graphische Benutzeroberflächen 10
JTable. W. Lang HWR Berlin, SS
JTable W. Lang HWR Berlin, SS 2014 1 JTable Die Swing-Komponente JTable dient der Darstellung einer zweidimensionalen Tabelle Verwendung häufig im Zusammenhang mit Datenbankanwendungen Im Gegensatz zu
Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK
Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK und dem Zugriff auf Web Services vertraut. Der Web Service
Grafische Benutzeroberflächen
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
Remote Method Invocation
Remote Method Invocation spezielle Technik aus dem Java-Umfeld Ausführung der Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VM s Aufruf
App CCTV INET VIEWER. Folgende Funktionen stehen in der App zur Verfügung:
App CCTV INET VIEWER Ab der Version 12.12.0 (Analog) sowie 1.0 Full-HD SDI-System, gibt es die Möglichkeit, auf das Alpha11 KassenVideosystem mit der kostenlosen App CCTV INET VIEWER zuzugreifen. Folgende
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
Apps für ios entwickeln
Apps für ios entwickeln Am Beispiel einer realen App Bearbeitet von Jan Tittel, Jochen Baumann 1. Auflage 2013. Buch. XII, 222 S. ISBN 978 3 446 43192 8 Format (B x L): 17,9 x 24,7 cm Gewicht: 589 g Weitere
II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:
Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen
JOGGA Der Jogging-Companion
JOGGA Der Jogging-Companion GLIEDERUNG: (1) Idee (2) Funktionen (3) Codebeispiele IDEE: Jeder Jogger kennt das Problem: Man rafft sich auf um eine Runde zu laufen, schwitzt während dessen ohne Ende und
