Software ubiquitärer Systeme

Größe: px
Ab Seite anzeigen:

Download "Software ubiquitärer Systeme"

Transkript

1 Software ubiquitärer Systeme Anwendungsentwicklung mit Java Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund 1

2 Motivation Probleme mit C und C++ effizienter Code aber unsicher eingeschränkte Portabilität - verschiedene Betriebssysteme und GUI-Bibliotheken: z.b. in Mobiltelefonen Symbian OS, Windows CE, Linux Varianten Sichere C++ Dialekte weniger effizienter Code mangelnde Verbreitung/Standardisierung Was ist die Alternative? Ein Ein Java Java für für eingebettete eingebettete Systeme! Systeme! 2

3 Die Java-Familie Je nach Anforderungen der Anwendungen bzw. Leistungsfähigkeit der Geräte bedient Oracle verschiedene Anwendungsdomänen mit unterschiedlichen Java Plattformen. Nicht Nicht nur nur die die Bibliotheken Bibliotheken sondern sondern auch auch die die virtuellen virtuellen Maschinen Maschinen unterscheiden unterscheiden sich. sich. Quelle: [1] 3

4 Inhalt Motivation Java Micro Edition Java Card Alternativen Android.NET Compact Zusammenfassung 4

5 Die Java Micro Edition Kurz: Java ME Sun Microsystems, Juni 1999 Zielmarkt Pager, PDAs Mobiltelefone, Smartphones Fernseher, Videorekorder, CD Player Java 2 Standard Edition API Java Micro Edition API Die meisten (klassischen) Mobiltelefone unterstützen heute Java ME Abgespeckte Version der Standard Edition (Java SE) Weniger Speicherverbrauch Keine schwergewichtigen Klassen (swing, awt, ) Optimierte virtuelle Maschine (KVM) 5

6 Java ME Architektur Die von Java ME abgedeckte Domäne ist riesig unterschiedlichste Geräte und Geräteklassen (Ressourcen) unterschiedlichste Anwendungen (Anforderungen) Um die Java ME zu strukturieren, wurden zwei grundlegende Konzepte definiert: Konfigurationen und Profile Leistungsstärkere Geräte Konfigurationen: Horizontale Aufteilung des Marktes... Leistungsschwache Geräte Profile: Vertikale Marktaufteilung 6

7 Java ME Konfigurationen Definiert Geräteklassen anhand verfügbarer Ressourcen CPU-Klasse, Speicher, Netzwerkanbindung Entscheidet über die verwendete virtuelle Maschine sowie APIs für elementare Funktionen. die Java Ausführungsumgebung Bisher wurden zwei Konfigurationen festgelegt CLDC: Connected Limited Device Configuration - z.b. Mobilfunkgeräte, um die 500 KB Speicher, einfache Applikationen - spezielle VM CDC: Connected Device Configuration - z.b. Smart Phones ab 2 MB Speicher, Set-Top-Boxes, High-End PDAs 7

8 Java ME Profile Hängen von der jeweiligen Anwendungsdomäne ab Definieren verfügbare APIs Sorgen für Portabilität Haben Abhängigkeiten Beispiele: MIDP (Mobile Information Device P.) - Netzwerk-Kommunikation - Einfache Benutzerschnittstelle - Datenspeicherung Personal Profile - Komplettes AWT - Ausführungsumgebung für Applets Quelle [1] 8

9 Java ME für Mobilgeräte MIDP Herstellerspezifische APIs CLDC Java VM (KVM) Betriebssystem KVM - Kilobyte Virtual Machine KB groß (je nach Compiler) Implementiert in C (ca Zeilen) Für Geräte mit mindestens KB Speicher und - 16 oder 32 Bit CPU 9

10 KVM: Was fehlt? Unterstützung für Object.finalize() Wird auch praktisch nicht verwendet Fehlerbehandlungsfähigkeiten (eingeschränkt) Es gibt lediglich 3 Fehler-Klassen - java.lang.error, java.lang.outofmemory und java.lang.virtualmachineerror Java Native Interface (JNI) Benutzerdefinierte Class Loader Reflection-Mechanismus Threading-Fähigkeiten (eingeschränkt) Zur Vermeidung von Sicherheitsproblemen und wegen des Overheads Keine Thread Groups und Daemon Threads) Verifikation von Class Files Einsatz eines Pre-Verifiers 10

11 Entwicklungsprozess Java-Quelltext Compile javac... Preverification preverify... Packaging jar... Deployment emulator... Java Class-Dateien Pre-verifizierte Class-Dateien JAR-Paket Anwendung auf dem Gerät 11

12 Java ME für Mobilgeräte MIDP Herstellerspezifische APIs CLDC Java VM (KVM) Betriebssystem CLDC - Connected Limited Device Configuration Low-Level Funktionalität - Umgang mit der Laufzeitumgebung, Ein-/Ausgabe Besteht aus of java.io, java.lang, java.util, java.microedition.io - Allerdings nur Teilmengen der aus Java SE bekannten Klassen! - Die Semantik bleibt aber erhalten 12

13 Java ME für Mobilgeräte MIDP Herstellerspezifische APIs CLDC Java VM (KVM) Betriebssystem MIDP Mobile Information Device Profile MIDP stellt Kernfunktionen für Mobilgeräte zur Verfügung - Netzwerkkommunikation - Datenhaltung - Benutzerschnittstelle 13

14 Mobile Information Device Profile Minimalanforderungen Bildschirmauflösung von mind. 96x54 Pixeln Keypad, Tastatur oder Touch Screen 256 KB nicht-flüchtiger Speicher 128 KB RAM 8 KB nicht-flüchtiger Speicher für persistente Daten Bi-direktionale Netzwerkverbindung MIDP 2.0 Packages javax.microedition.lcdui, javax.microedition.lcdui.game, javax.microedition.media, javax.microedition.media.control, javax.microedition.midlet, javax.microedition.pki, javax.microedition.rms Ausführung von Midlets Java ME-Applikationen bestehen aus 1 bis N MIDlets 14

15 Java ME: Midlet-Lebenszyklus MIDlets werden wie Applets von der Umgebung gesteuert Konstruktor Paused destroyapp() notifydestroyed() startapp() pauseapp() notifypaused() Destroyed Active destroyapp() notifydestroyed() 15

16 Java ME: Midlet-Beispiel Man Man erbt erbt von von MIDlet. MIDlet. // Zur Vereinfachung ohne Exceptions... public class HelloMIDlet extends MIDlet implements CommandListener { private Form mmainform; public HelloMIDlet() { mmainform = new Form("HelloMIDlet"); mmainform.append(new StringItem(null, "Hello, MIDP!")); mmainform.addcommand(new Command("Exit", Command.EXIT, 0)); mmainform.setcommandlistener(this); } protected void destroyapp(boolean arg0) { Diese Diese Methoden Methoden werden werden vom vom } Application Application Management Management System System protected void pauseapp() { (AMS) } (AMS) des des Mobilgeräts Mobilgeräts aufgerufen. aufgerufen. protected void startapp() { Display.getDisplay(this).setCurrent(mMainForm); } public void commandaction(command arg0, Displayable arg1) { notifydestroyed(); So So wird wird das das AMS AMS angewiesen angewiesen } das } das MIDlet MIDlet zu zu beenden. beenden. 16

17 Java ME: Demo Zum Bauen von Midlets benutzt man das Java ME SDK (aktuell 8.1) Demo-Applikationen Emulator Alle sonstigen Werkzeuge 17

18 Java ME: Fazit Pro Durch Konfigurationen und Profile wird eine Familie von JavaLösungen bereitgestellt - Damit skaliert der Ressourcenverbrauch Standardisierte domänenspezifische Bibliotheken Die kvm benötigt erstaunlich wenig Speicher Contra Die kvm ist leider langsam Leichte Einschränkungen bzgl. der Sprache müssen hingenommen werden - z.b. kein Reflection Entwickler müssen sich mit anderen Bibliotheken anfreunden 18

19 Inhalt Motivation Java Micro Edition Java Card Alternativen Android.NET Micro/Compact Framework Zusammenfassung 19

20 Java Card: Hardware Eine Java-Lösung für Smart Cards (Chipkarten mit Prozessor) Hardware-Eigenschaften Stromversorgung durch Lesegerät Interaktion lediglich mit dem Lesegerät - Serielle Schnittstelle, Standardprotokoll Enthalten Universalprozessor Bit, 3,5-5 MHz Extrem wenig Speicher KB ROM - 0,5-1 KB RAM KB EEPROM Vcc Reset Clock RFU C1 C2 C3 C4 C5 C6 C7 C8 Ground Vpp I/O RFU Definitiv zu klein für Java ME! 20

21 Java Card: Anwendungen Einsatzgebiete Krankenkassenkarten Bankkarten (EC) Handy-SIM-Karten Ausweise Ziel: nur eine Karte für viele Applikationen Anforderungen an die Java Card Plattform Sicherheit und Zuverlässigkeit - Verwaltung und Isolierung der Applikationen auf der Karte Extrem geringer Ressourcenverbrauch Für die Domäne passende standardisierte Packages Portabilität Kompatibilität mit existierenden Standards 21

22 Java Card: Was fehlt? Dynamisches Klassenladen Security Manager Garbage Collection Threads Klonen von Objekten Mehrdimensionale Felder Datentypen char, double, float und long Die Java Card API beschränkt sich auf folgende Pakete java.lang, javacard.framework, javacard.security, javacardx.crypto 22

23 Java Card: Applets... sind persistente Zustandsautomaten, die auf Nachrichten des Lesegeräts reagieren. haben (mindestens) folgende Methoden install - Erzeugung und Registrierung der Applet-Instanz select - Das Lesegerät spricht das Applet an process - Interpretation der Nachrichten (APDUs) vom Lesegerät deselect - Das Lesegerät beendet die Kommunikation mit dem Applet 23

24 Java Card: Fazit Pro Plattformunabhängige Entwicklung für Smart Cards Unterstützung mehrerer Applikationen auf einer Karte Dynamische Installation/Deinstallation von Applets Standardisierte Bibliotheken Nutzbarkeit von Java Know-How Contra Die Sprache ist zwar Java, das Programmiermodell aber nicht. Essentielle Sprachelemente fehlen Deutliche Nachteile hinsichtlich der Performance Vergleichsweise hohe Ressourcenanforderungen 24

25 Inhalt Motivation Java 2 Micro Edition Java Card Alternativen Android.NET Micro/Compact Framework Zusammenfassung 25

26 Android Open Handset Alliance (primär Google), 2007 T-Mobile, Motorola, Samsung,... Vision:... accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience. Infrastruktursoftware-Plattform für Smartphones Open Source Diverse Produkte inzwischen verfügbar 26

27 Android: Architektur Linux und Java aber anders... 27

28 Android: Architektur Linux und Java aber anders... Die Die Dalvik-VM Dalvik-VM führt führt Java-Programme Java-Programme aus, aus, deren deren Bytecode Bytecode in in Dalvik-Bytecode Dalvik-Bytecode übersetzt übersetzt wurde. wurde. 28

29 Android: Die Dalvik-VM Benannt nach einer isländischen Stadt Hauptunterschiede Java-Bytecode ist stapelbasiert, Dalvik-Bytecode ist registerbasiert - Java-Bytecode lässt sich nicht (direkt) ausführen - Ein Übersetzungschritt ist erforderlich Dalvik Code wurde bis Android 2.2 nur interpretiert - Heute Trace-basierter JIT-Compiler Gründe Kompaktheit des Codes JIT-Compiler wurde als unnötig erachtet, da die Performancekritischen Teile nativ ausgeführt werden (Kernel/Libraries) - inzwischen können Anwendungen auch native code verwenden - JIT darf nicht zu viel Speicher benötigen Lizenzrechte? 29

30 Android: Größen (statisch) common system libraries (U) % (J) % (D) % (U) (U) unkomprimierte unkomprimierte jar-datei jar-datei (J) (J) komprimierte komprimierte jar-datei jar-datei (D) (D) unkomprimierte unkomprimierte dex-datei dex-datei web browser app (U) % (J) % (D) % alarm clock app (U) % (J) % (D) % Der Der Grund Grund ist ist allerdings allerdings nicht nicht nur nur der der kompaktere kompaktere Bytecode, Bytecode, sondern sondern auch auch eine eine schlaueres schlaueres Dateiformat. Dateiformat. Quelle: Dan Bornstein, Dalvik VM Entwickler 30

31 Android: Größen (dynamisch) Quelle: A JIT Compiler for Android s Dalvik VM Ben Cheng, Bill Buzbee, May 2010 JIT arbeitet Trace-basiert Übersetzung auf Ebene von Basisblöcken (statt ganzen Prozeduren) Ein Translation Cache pro Prozess (VM-Instanz) Trade-off zwischen Performance und Speicherbedarf akzeptabel 31

32 Android: ART (1) Kompilierung von Android Apps in Maschinencode zum Installationszeitpunkt ab Android 4.4 möglich Vorteile Dalvik-VM und JIT werden nicht mehr benötigt wenige Speicher Kein Tracing/Übersetzen zur Laufzeit weniger Energie Linux lädt Programme inkrementell starten schneller Alle Programmeteile liegen in Maschinencode vor laufen schnell Nachteile Keine dynamischen Optimierungen teilweise auch langsamer 32

33 Android: ART (2) Partielle Code-Spezialisierung in JIT-Compiler nicht bei ART Basierend Basierend auf auf der der Ausführungshäufigkeit Ausführungshäufigkeit von von Funktionen Funktionen mit mit bestimmten bestimmten Parametern (ermittelt Parametern (ermittelt vom vom Trace-JIT) werden Trace-JIT) werden Funktionen Funktionen spezialisiert. spezialisiert. Entsprechende EntsprechendeAufrufe Aufrufe werden umgeleitet. werden umgeleitet. int myfunc(int par1, int par2, int par3) { int r = 47; if (par1*par2 > 5) { int i; for (i=0; i<par1*par2;i++) { r+=par3*i; } } else r = par1+par2+par3 return r; } myfunc(7,5,2) int myfunc(int par1, int par2, int par3) { int r = 47; int i = 35; while (--i) r += i + i; return r; } myfunc(2,2,12) int myfunc(int par1, int par2, int par3) { return 16; } Quelle: c't 13/2015 Endlich kompiliert 33

34 Android: ART(3) Und wie steht's nun mit der Performance? In c't 13/2015 wurden 9 Benchmarks verglichen (relative Performance im Vergleich zu Dalvik) Android 4.4/ARM: 99% bis 184%, Durchschnitt 133% Android 5.1/ARM: 65% bis 238%, Durchschnitt 149% Android 4.4/Intel: 28% bis 179%, Durchschnitt 74% Android 5.1/Intel: 47% bis 176%, Durchschnitt 106% Fazit ART hat das Potential die Performance deutlich zu verbessern Kinderkrankheit auf Intel-basierten Android-Geräten 34

35 Android: Fazit Android ist für Smartphones ausgelegt Skalierbarkeit ist kein Thema Annahme: typische MB Speicher, MHz CPU - heute viel mehr vorhanden! Android zeigt, dass die Java-VM nicht unbedingt perfekt geeignet ist, um kleine Systeme zu bauen - Dalvik-Bytecode ist signifikant kleiner Ausführung von kompiliertem Maschinencode und Portabilität kein Widerspruch sein müssen - Übersetzung zum Installationszeitpunkt bei ART 35

36 .NET Framework für eingeb. Systeme? Microsoft Ermöglicht.NET auf Windows CE/Mobile-Geräten Quelle: msdn.microsoft.com Moderne Zwischensprache (MSIL) für mehrere Quellsprachen - C#, VB, J#, C++, - Ausgelegt auf JIT-Compiler Anwendungsentwicklung in MS Visual Studio Diverse Bibliotheken - Benutzerschnittstelle, Kommunikation, - Allerdings an diversen Stellen beschnitten Größenreduktion des.net Frameworks Compact: erfordert 12 MB Micro: erfordert 256 KB Flash, 64KB RAM (läuft ohne OS, kein JIT) 36

37 Inhalt Motivation Java Micro Edition Java Card Alternativen Android.NET Micro/Compact Framework Zusammenfassung 37

38 Zusammenfassung Java-Umgebungen bilden eine Produktlinie Bei den kleineren Varianten gibt es Einschränkungen Skalierbarkeit von 8 Bit Chipkarten bis 64 Bit Serversystemen z.b. keine Garbage Collection bei Java Card Es gibt auch Alternativen Dalvik- und MSIL-Programme haben kompakteren Code Klassische Mobiltelefone und damit auch Java ME werden Smartphones verdrängt 38

39 Literatur [1] [2] M. de Jode, Programming Java 2 Micro Edition on Symbian OS, ISBN , Wiley, Java Card Platform Specification 2.2.2, Sun Microsystems. 39

Software ubiquitärer Systeme

Software ubiquitärer Systeme Software ubiquitärer Systeme Anwendungsentwicklung mit Java Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund Olaf.Spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/

Mehr

Mobile Betriebsysteme

Mobile Betriebsysteme Mobile Betriebsysteme Ueli Hofstetter, Philippe Hungerbühler, Anil Kandrical Seminar in Mobile Communication Systems WS 06/07 1 1.1 Kleingeräte für mobile Betriebsysteme Embedded System Personal Digital

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

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

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

Usability-Test für mobile Java-Anwendungen

Usability-Test für mobile Java-Anwendungen Usability-Test für mobile Java-Anwendungen Problemstellung / Abgrenzung Usability Engineering / Patterns Usability Test Tool-Kette Fazit Roland Petrasch Usability-Test für mobile Java-Anwendungen Problemstellung

Mehr

Betriebssysteme für mobile Endgeräte p.1

Betriebssysteme für mobile Endgeräte p.1 Betriebssysteme für mobile Endgeräte Übersicht und Marktanalyse Silvio Böhler sboehler@student.ethz.ch Internet Economics Betriebssysteme für mobile Endgeräte p.1 Betriebssysteme für mobile Endgeräte Charakteristiken

Mehr

Einsatz von Java-fähigen GPRS-Terminals

Einsatz von Java-fähigen GPRS-Terminals Einsatz von Java-fähigen GPRS-Terminals Ein Bericht aus der Praxis Dr. Fred Könemann INSIDE M2M GmbH 15. VDE/ITG Fachtagung Mobilkommunikation Osnabrück 19.-20. Mai 2010 Dr. Fred Könemann, INSIDE M2M GmbH

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

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

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

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

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

Java in der Welt der Handys. Matthias Hemetsberger Joseph Erlinger Erwin Schwab Rudi Dittrich

Java in der Welt der Handys. Matthias Hemetsberger Joseph Erlinger Erwin Schwab Rudi Dittrich Java in der Welt der Handys Matthias Hemetsberger Joseph Erlinger Erwin Schwab Rudi Dittrich Überblick Einführung in MIDP Zusatzpackages: WMA (wireless messaging API) MMA (mobile media API) MIDP = Mobile

Mehr

Programmieren mobiler Geräte

Programmieren mobiler Geräte Datum Technologie Entwicklung Werkzeug Übung Grundlagen 23.10.30 1 Überblick Ant Kompilieren 30.10.03 2 WLAN, BT Eclipse Projektverwaltung 06.11.03 3 GSM Eclipse Debugging 13.11.03 4 WAP, WML, WMLS XML

Mehr

Mit Cloud Power werden Sie zum

Mit Cloud Power werden Sie zum Mit Cloud Power werden Sie zum Herzlich Willkommen! Christian Hassa Managing Partner TechTalk Software AG Agenda Mobile App Development mit Xamarin Pause Azure Mobile Services Q&A 9h00-10h30 10h30-10h50

Mehr

360.NET. Jan Schenk Developer Evangelist Web/Live Microsoft Deutschland

360.NET. Jan Schenk Developer Evangelist Web/Live Microsoft Deutschland 360.NET Jan Schenk Developer Evangelist Web/Live Microsoft Deutschland Was ist.net? Eine Strategie Eine Plattform Eine Laufzeitumgebung Eine Software-Sammlung Ein Set von Services Warum so ein Framework?

Mehr

Mobile Application Development

Mobile Application Development Mobile Application Development Android: Einführung Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Lernziele Der/die Kursbesucher/in kann

Mehr

Mobile App development mit Xamarin. Christian Hassa (ch@techtalk.ch) Andreas Willich (awi@techtalk.ch) TechTalk Software AG

Mobile App development mit Xamarin. Christian Hassa (ch@techtalk.ch) Andreas Willich (awi@techtalk.ch) TechTalk Software AG Mobile App development mit Xamarin Christian Hassa (ch@techtalk.ch) Andreas Willich (awi@techtalk.ch) TechTalk Software AG % der Bevölkerung mit Smartphone Smartphone Durchdringung >50% 34% 43% 54% DACH

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

Grundlagen zur nebenläufigen Programmierung in Java

Grundlagen zur nebenläufigen Programmierung in Java Grundlagen zur nebenläufigen Programmierung in Java Karlsruher Entwicklertag 2013 5. Juni 2013 Referent: Christian Kumpe Inhalt des Vortrags Was zeigt dieser Vortrag? Ein einfaches Beispiel mit allerlei

Mehr

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer)

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer) Programmieren I Grundlagen von JAVA Dr. Klaus Höppner Hello World in JAVA Hochschule Darmstadt WS 2007/2008 Elementare Datentypen 1 / 17 2 / 17 Eigenschaften von JAVA Prinzipieller Ablauf Plattform-und

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

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

Mobile App Testing. Software Test im mobilen Umfeld ATB Expertentreff, Wien, 2013. Functional Test Automation Tools

Mobile App Testing. Software Test im mobilen Umfeld ATB Expertentreff, Wien, 2013. Functional Test Automation Tools Functional Test Automation Tools Mobile App Testing Software Test im mobilen Umfeld ATB Expertentreff, Wien, 2013 Presenter: Christoph Preschern (cpreschern@ranorex.com) Inhalte» Ranorex Company Overview»

Mehr

Java Micro Edition. Entwicklung mobiler JavaME-Anwendungen mit CLDC und MIDP. von Klaus D. Schmatz. 2., aktualis. u. erw. Aufl.

Java Micro Edition. Entwicklung mobiler JavaME-Anwendungen mit CLDC und MIDP. von Klaus D. Schmatz. 2., aktualis. u. erw. Aufl. Java Micro Edition Entwicklung mobiler JavaME-Anwendungen mit CLDC und MIDP von Klaus D. Schmatz 2., aktualis. u. erw. Aufl. Java Micro Edition Schmatz schnell und portofrei erhältlich bei beck-shop.de

Mehr

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Proseminar Objektorientiertes Programmieren mit.net und C# Florian Schulz Institut für Informatik Software & Systems Engineering Einführung Was hat Cross-Plattform

Mehr

Connecting Android. Externe Hardware mit dem grünen Roboter verbinden. Alexander Dahmen Dominik Helleberg

Connecting Android. Externe Hardware mit dem grünen Roboter verbinden. Alexander Dahmen Dominik Helleberg Connecting Android Externe Hardware mit dem grünen Roboter verbinden Alexander Dahmen Dominik Helleberg Speaker Dominik Helleberg Mobile Development Android / Embedded Tools http://dominik-helleberg.de/+

Mehr

Smartphone - Betriebssysteme. Smartphone - Betriebssysteme

Smartphone - Betriebssysteme. Smartphone - Betriebssysteme Smartphone - Betriebssysteme Peter Rami - Graz, 28.04.2009 Inhalt Smartphone Symbian OS Windows Mobile BlackBerry OS iphone OS Android Marktanteile & Ausblick Smartphone - Betriebssysteme Peter Rami -

Mehr

NEXT GENERATION MOBILE PHONE PLATFORMS

NEXT GENERATION MOBILE PHONE PLATFORMS Stephan Zeisberg NEXT GENERATION MOBILE PHONE PLATFORMS Ein Einblick in die Systemarchitekturen aktueller Smartphones 1 Motivation Technologischer Stillstand in der Entwicklung mobiler Betriebssysteme

Mehr

Applications Applets (eingeschränkte Rechte)

Applications Applets (eingeschränkte Rechte) 1 Arten von Java-Programmen Man unterscheidet 2 verschiedene Arten von Java-Programmen: Applications Applets (eingeschränkte Rechte) Erstere sind eigenständige Programme. Letztere sind "kleine" Programme,

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

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

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent

Mehr

Android C++ Native SDK

Android C++ Native SDK 1 Android C++ Native SDK Android NDK - Android Native Development Kit W3L AG info@w3l.de 2014 2 Inhaltsverzeichnis Android Android NDK Unterstützte Bibliotheken Entwicklung in NDK Java Native Interface

Mehr

Integration mobiler Endgeräte in Medizinprodukte und Medizintechnik-nahe Produkte

Integration mobiler Endgeräte in Medizinprodukte und Medizintechnik-nahe Produkte Integration mobiler Endgeräte in Medizinprodukte und Medizintechnik-nahe Produkte Agenda Problemstellung Medizinprodukt App Grundlagen Szenarien (Problemstellungen und Lösungsansätze) 03.06.2013 2 Innovationen

Mehr

0. Einführung. C und C++ (CPP)

0. Einführung. C und C++ (CPP) C und C++ (CPP) 0. Einführung Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte Wissenschaften marc.rennhard@zhaw.ch Marc Rennhard, 05.01.2010,

Mehr

Einführung in Betriebssysteme

Einführung in Betriebssysteme Einführung in Betriebssysteme APPLE ios Entwicklung von ios Entwickelt auf der Basis von MacOS X UNIX Vorgestellt am 9.1.2007 Zusammen mit iphone Markenname von Cisco Internetwork Operating System Für

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

Implementierung der Jikes Research Virtual Machine

Implementierung der Jikes Research Virtual Machine Fakultät Informatik Institut für technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Implementierung der Jikes Research Virtual Machine Hauptseminar Technische Informatik

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

CLR CIL MCS ECMA-335. Linux.Ne t. 2005 Albrecht Liebscher, Erlanger Linux Tage

CLR CIL MCS ECMA-335. Linux.Ne t. 2005 Albrecht Liebscher, Erlanger Linux Tage C# CLR CIL MCS ECMA-335 Linux.Ne t Was ist.net? Microsoft Homepage:.NET is the Microsoft Web services strategy to connect information, people, systems and devices through software. Mono Handbuch:.Net besteht

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

Programmierung. Programme, Compiler, virtuelle Maschinen, Java

Programmierung. Programme, Compiler, virtuelle Maschinen, Java Programmierung Programme, Compiler, virtuelle Maschinen, Java Programme Ein Programm ist eine Folge von Anweisungen, die einem Computer sagen, was er tun soll tuwas.c for(int i=0; i=0; i

Mehr

Optimierung der Code-Generierung virtualisierender Ausführungsumgebungen zur Erzielung deterministischer Ausführungszeiten

Optimierung der Code-Generierung virtualisierender Ausführungsumgebungen zur Erzielung deterministischer Ausführungszeiten Optimierung der Code-Generierung virtualisierender Ausführungsumgebungen zur Erzielung deterministischer Ausführungszeiten Martin Däumler Matthias Werner Lehrstuhl Betriebssysteme Fakultät für Informatik

Mehr

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

Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Ludwig-Maximilians-Universität München Institut für Informatik Programmierung und Softwaretechnik (PST) Prof. Wirsing 6. Mai 2009 1 Der Name Java

Mehr

Sicherheit in Android

Sicherheit in Android Motivation Aufbau Sicherheit Ausblick Quellen Sicherheit in Android Peter Salchow INF-M2 - Anwendungen 1 Sommersemester 2008 Department Informatik HAW Hamburg 20. Mai 2008 Peter Salchow Sicherheit in Android

Mehr

Dr. Holger Eichelberger

Dr. Holger Eichelberger SchülerInnen-Uni 2015 Dr. Holger Eichelberger eichelberger@sse.uni-hildesheim.de Inhalt 1. Wer ist das? 1 2. Was ist ein Smartphone? 3 3. Wie entwickelt man für Smartphones? 7 4. Wie bauen wir die App?

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

Java Micro Edition Benchmarking

Java Micro Edition Benchmarking Java Micro Edition Benchmarking Mirko Schmitt, Mat.-Nr.: 191959, mirkoschmitt@freenet.de Inhaltsverzeichnis 1. Bestandteile von Java ME 3 1.1. Personal Java 3 1.2. Embedded Java 4 1.3. Connected Limited

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Architekturen mobiler Multi Plattform Apps

Architekturen mobiler Multi Plattform Apps Architekturen mobiler Multi Plattform Apps Wolfgang Maison & Felix Willnecker 06. Dezember 2011 1 Warum Multi- Plattform- Architekturen? Markt. Apps für Smartphones gehören zum Standardinventar jeder guten

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

Android in der Industrie

Android in der Industrie Android in der Industrie Jörg Pleumann Head of Android Development Noser Engineering AG Berner Technologie-Impulse 08.09.2011 Agenda Was ist Android? Software Hardware Industrielle Projekte Fazit Einleitung

Mehr

Grundlagen der Informatik für Ingenieure I

Grundlagen der Informatik für Ingenieure I 2. : -Einführung 2.1 -Entwicklungsgeschichte 2.2 Architektur Überblick 2.3 Netzwerk-Computer: Ein neues Betriebsparadigma 2.4 Eigenschaften 2.5 -Entwicklungsumgebung 2.6 Application vs. Applet 2.7 Ein

Mehr

Effiziente Java Programmierung

Effiziente Java Programmierung Effiziente Java Programmierung Seminar Implementierung moderner virtueller Maschinen am Beispiel von Java SS 2009 von Reinhard Klaus Losse 20. Mai 2009 Gliederung Definition Effizienz Werkzeuge zum Messen

Mehr

Programmierkurs Java. Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.

Programmierkurs Java. Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck. Programmierkurs Java Grundlagen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Algorithmen, Maschinen- und Programmiersprachen Algorithmen

Mehr

Google's Betriebssystem für mobile Plattformen. Vortrag von Michaela Rindt Universität Siegen

Google's Betriebssystem für mobile Plattformen. Vortrag von Michaela Rindt Universität Siegen Google's Betriebssystem für mobile Plattformen Vortrag von Michaela Rindt Universität Siegen Übersicht Einleitung Softwarearchitektur Softwareentwicklung für Android Unterschied zu anderen mobilen Plattformen

Mehr

Seminar. Komponentenorientierte Softwareentwicklung. und Hypermedia

Seminar. Komponentenorientierte Softwareentwicklung. und Hypermedia Seminar Komponentenorientierte Softwareentwicklung - Von Damian Raschka Betreuer Prof. Dr. F. Thiesing Autor: Damian Raschka.pdf 1 / 35 Inhaltsverzeichnis 1. Einleitung Überblick Geschichte 2. Aufbau Configurations

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

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

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

JAVA. Ein kurzer Überblick. Thomas Karp

JAVA. Ein kurzer Überblick. Thomas Karp JAVA Ein kurzer Überblick Thomas Karp WAS IST JAVA? Java ist eine fast rein objektorientierte Sprache nicht JavaScript eine professionelle Sprache eine im Unterricht weit verbreitete Sprache für verschiedene

Mehr

Eine App, viele Plattformen

Eine App, viele Plattformen Eine App, viele Plattformen Anwendungsentwicklung für Mobile Heiko Lewandowski 23.04.2013 EINLEITUNG Festlegung App-Strategie: Welche Ziele möchte ich erreichen? Die Vielzahl der Plattformen und Geräte(hersteller)

Mehr

Android Eine Open-Source-Plattform für Embedded Systems (?) Jörg Pleumann Noser Engineering AG

Android Eine Open-Source-Plattform für Embedded Systems (?) Jörg Pleumann Noser Engineering AG Android Eine Open-Source-Plattform für Embedded Systems (?) Jörg Pleumann Noser Engineering AG 31. August 2010 1 Agenda Einleitung Plattform Werkzeuge Hardware 2 Einleitung (I) Was ist Android? Kompletter

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

Speaker. Dominik Helleberg. Mobile Development Android / Embedded Tools. http://dominik-helleberg.de/+

Speaker. Dominik Helleberg. Mobile Development Android / Embedded Tools. http://dominik-helleberg.de/+ Speaker Dominik Helleberg Mobile Development Android / Embedded Tools http://dominik-helleberg.de/+ Warum? Moderne Consumer UI Moderne Consumer UI http://fortheloveoftech.com/2014/10/01/windows-10-for-tablets-first-impressions-there-is-no-start-menu/

Mehr

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen?

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen? Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen? JULIA SCHILLING SSV EMBEDDED SYSTEMS HEISTERBERGALLEE 72 D-30453 HANNOVER WWW.SSV-EMBEDDED.DE Ethernet

Mehr

C++ und mobile Plattformen

C++ und mobile Plattformen Dieser Artikel stammt aus dem Magazin von C++.de (http://magazin.c-plusplus.de) C++ und mobile Plattformen Mit diesem Artikel möchte ich euch einen kurzen Überblick über die verschiedenen Plattformen für

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

Ein mobiler Electronic Program Guide für Android

Ein mobiler Electronic Program Guide für Android Whitepaper Telekommunikation Ein mobiler Electronic Program Guide für Android Prototyp für Android Apps 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller Munde. Durch

Mehr

Erste Schritte zum lauffähigen Java Programm

Erste Schritte zum lauffähigen Java Programm Erste Schritte zum lauffähigen Java Programm Diese kleine Einführung ist eine Hilfe für Studenten der Vorlesung SWT I zur Meisterung der sich ergebenden Hürden bei der Erstellung eines ersten kleinen Java-Programms.

Mehr

MIDlet Technologie. - Ausarbeitung zum Vortrag -

MIDlet Technologie. - Ausarbeitung zum Vortrag - MIDlet Technologie - Ausarbeitung zum Vortrag - von Gerald Strauch Matr.-Nr.: 25210 Hochschule für Technik, Wirtschaft und Kultur (HTWK) Leipzig Studiengang Informatik Inhaltsverzeichnis Seite 1. MIDlet

Mehr

Java-IDE-Vergleich Seite 1 / 5

Java-IDE-Vergleich Seite 1 / 5 Java-IDE-Vergleich Seite 1 / 5 Java-IDEs im Vergleich 1. Getestete IDEs: Borland JBuilder 3 Professional Edition IBM Visual Age 3 Entry Edition Sun Forte 1.01 Community Edition Microsoft Visual J++ 6.0

Mehr

VMware als virtuelle Plattform

VMware als virtuelle Plattform VMware als virtuelle Plattform Andreas Heinemann aheine@gkec.informatik.tu-darmstadt.de Telekooperation Fachbereich Informatik Technische Universität Darmstadt Übersicht Einführung VMware / Produkte /

Mehr

Mobile Applications. Adrian Nägeli, CTO bitforge AG

Mobile Applications. Adrian Nägeli, CTO bitforge AG Mobile Applications Adrian Nägeli, CTO bitforge AG Inhalt Vorstellung Marktübersicht Entwicklung Adrian Nägeli Dipl. Inf.-Ing FH Seit 2005 bei bitforge bitforge AG Standort Rapperswil-Jona Gründung 2004

Mehr

Proseminar Technische Informatik A survey of virtualization technologies

Proseminar Technische Informatik A survey of virtualization technologies Proseminar Technische Informatik A survey of virtualization technologies Referent: Martin Weigelt Proseminar Technische Informatik - A survey of virtualization technologies 1 Übersicht 1. Definition 2.

Mehr

Christian Meder inovex. Sauberes Grün QS für Android

Christian Meder inovex. Sauberes Grün QS für Android Konferenz Christian Meder inovex Sauberes Grün QS für Android Sauberes Grün: QS für Android W-JAX, 2011 Christian Meder inovex GmbH Chief Technology Officer 09.11.2011 1 Speaker Christian Meder Schwerpunkte

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

Android. LUG-LD Christoph Maya 2011 http://demaya.de. Lizenz: http://creativecommons.org/licenses/by-nc/3.0/de/

Android. LUG-LD Christoph Maya 2011 http://demaya.de. Lizenz: http://creativecommons.org/licenses/by-nc/3.0/de/ Android LUG-LD Christoph Maya 2011 http://demaya.de Lizenz: http://creativecommons.org/licenses/by-nc/3.0/de/ Inhalt Inhalt: ein Mix für Einsteiger und Fortgeschrittene Was ist Android und wo kommts her?

Mehr

Geschäftsbereich Mobile Services Was ist Android?

Geschäftsbereich Mobile Services Was ist Android? Geschäftsbereich Mobile Services Was ist Android? Hinter Hoben 149 53129 Bonn www.visionera.de Ansprechpartner: Arno Becker arno.becker@visionera.de +49 228 555 1111 +49 160 98965856 Einleitung Android

Mehr

Begleitendes Praktikum zur Vorlesung Mustererkennung

Begleitendes Praktikum zur Vorlesung Mustererkennung Begleitendes Praktikum zur Vorlesung Mustererkennung WS14/15 Übersicht Kontakt Aufgaben Bibliotheken Hinweise zu C# Kontakt Internet: http://cvpr.unimuenster.de/teaching/ws1415/me_praktikum/ Softwareumgebung:

Mehr

Aktuelle Themen der Informatik: Virtualisierung

Aktuelle Themen der Informatik: Virtualisierung Aktuelle Themen der Informatik: Virtualisierung Sebastian Siewior 15 Mai 2006 1 / 22 1 Überblick 2 Techniken 3 Paravirtualisierung 4 Ende 2 / 22 Wieso Virtualisieren Wieso mehrere Betriebsysteme auf einer

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

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe 1 Kapitel 1 2 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm, Compiler, Einordnung von Java Ein einfaches Java-Programm erstellen, übersetzen und ausführen Java-Programme dokumentieren 3 Informatik

Mehr

Netzwerk Technologien in LabVIEW

Netzwerk Technologien in LabVIEW Netzwerk Technologien in LabVIEW von Dirk Wieprecht NI Germany Hier sind wir: Agenda Agenda Bedeutung des Ethernet für die Messtechnik Ethernet-basierende Technologien in LabVIEW Low Level- TCP/IP Objekt

Mehr

Agenda. Einleitung Produkte vom VMware VMware Player VMware Server VMware ESX VMware Infrastrukture. Virtuelle Netzwerke

Agenda. Einleitung Produkte vom VMware VMware Player VMware Server VMware ESX VMware Infrastrukture. Virtuelle Netzwerke VMware Server Agenda Einleitung Produkte vom VMware VMware Player VMware Server VMware ESX VMware Infrastrukture Virtuelle Netzwerke 2 Einleitung Virtualisierung: Abstrakte Ebene Physikalische Hardware

Mehr

Grundlagen der Programmierung UE

Grundlagen der Programmierung UE Grundlagen der Programmierung UE Research and teaching network GdP UE H. Prähofer, R. Wolfinger 1 Vortragende Dr. Herbert Praehofer (G1 u. G2) Mag. Reinhard Wolfinger (G3 u. G4) Institute for System Software

Mehr

JEAF Cloud Plattform Der Workspace aus der Cloud

JEAF Cloud Plattform Der Workspace aus der Cloud JEAF Cloud Plattform Der Workspace aus der Cloud Juni 2014 : Aktuelle Situation Heutige Insellösungen bringen dem Nutzer keinen Mehrwert Nutzer sind mobil Dateien und Applikationen sind über Anbieter und

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen 1 Kapitel 7 Ziele 2 (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen Benutzung von Vererbung zur Erstellung individueller GUI-Klassen durch Erweiterung

Mehr

Objektorientierte Softwareentwicklung SoSe 15

Objektorientierte Softwareentwicklung SoSe 15 Objektorientierte Softwareentwicklung SoSe 15 Heinz Faßbender Raum E148 Tel. 0241/6009 51913 Email: fassbender@fh-aachen.de www.fassbender.fh-aachen.de FH AACHEN UNIVERSITY OF APPLIED SCIENCES FACHBEREICH

Mehr

1. Der Einstieg in Java

1. Der Einstieg in Java 1. Der Einstieg in Java Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen

Mehr

Systemanforderungen Verlage & Akzidenzdruck

Systemanforderungen Verlage & Akzidenzdruck OneVision Software AG Inhalt Asura 9.5, Asura Pro 9.5, Garda 5.0...2 PlugBALANCEin 6.5, PlugCROPin 6.5, PlugFITin 6.5, PlugRECOMPOSEin 6.5, PlugSPOTin 6.5,...2 PlugTEXTin 6.5, PlugINKSAVEin 6.5, PlugWEBin

Mehr

Web und Mobile Apps Programmieren mit Dart

Web und Mobile Apps Programmieren mit Dart Web und Mobile Apps Programmieren mit Dart Marco Jakob Kalaidos Fachhochschule Schweiz majakob@gmx.ch Abstract: Bisher war es kaum realistisch, im Anfängerunterricht mobile oder webbasierte Applikationen

Mehr

Programmentwicklung ohne BlueJ

Programmentwicklung ohne BlueJ Objektorientierte Programmierung in - Eine praxisnahe Einführung mit Bluej Programmentwicklung BlueJ 1.0 Ein BlueJ-Projekt Ein BlueJ-Projekt ist der Inhalt eines Verzeichnisses. das Projektname heißt wie

Mehr

Variablen manipulieren per JDI

Variablen manipulieren per JDI Variablen manipulieren per JDI Zusammenfassung Jede moderne Java IDE verfügt über eine mächtige und dennoch meist einfach zu bedienende Benutzeroberfläche die das finden von Fehlern in lokalen oder entfernt

Mehr

.NET als Microsofts Entwicklerplattform

.NET als Microsofts Entwicklerplattform .NET als Microsofts Entwicklerplattform Frank Prengel Technologieberater Microsoft Deutschland http://blogs.msdn.com/frankpr Agenda Was ist.net eigentlich? Microsoft.NET heute.net Framework 2.0, 3.0.NET

Mehr

DBUS Interprozess-Kommunikation für Embedded-Plattformen

DBUS Interprozess-Kommunikation für Embedded-Plattformen DBUS Interprozess-Kommunikation für Embedded-Plattformen Andreas Schwarz Neratec Solutions AG Firmenprofil Neratec Solutions AG Produkt-Entwicklungen für kundenspezifische elektronische Produkte Produkte

Mehr

Ansätze der Entwicklung von Multiplattform-Anwendungen. M.Eng. Rafael Pisarczyk (FH Aachen)

Ansätze der Entwicklung von Multiplattform-Anwendungen. M.Eng. Rafael Pisarczyk (FH Aachen) Ansätze der Entwicklung von Multiplattform-Anwendungen M.Eng. Rafael Pisarczyk (FH Aachen) Viele Wege führen nach Rom oder zur eigenen App... (Foto v.o.n.u: Rainer Sturm / pixelio.de) 2 Nativer Entwicklungsansatz

Mehr