Anwendungsentwicklung für Symbian OS

Größe: px
Ab Seite anzeigen:

Download "Anwendungsentwicklung für Symbian OS"

Transkript

1 Anwendungsentwicklung für Symbian OS Eric Thomas & Jürgen Zeitz 23. Februar 2006 Zusammenfassung Symbian OS ist ein gängiges Betriebssystem für mobile Geräte. Endkunden, Hersteller und Software-Entwickler profitieren von der Architektur, welche für Symbian OS entwickelt wurde. Aber ohne gute Anwendungen für diese Plattform wäre Symbian für den Endkunden uninteressant. Damit eine Anwendung für Symbian OS geschrieben werden kann, ist es nötig, die Eigenheiten von Symbian OS zu verstehen und einen Blick auf den komplexen Build-Prozess zu werfen. Inhaltsverzeichnis 1 Mobile Geräte 3 2 Wozu Symbian OS? 3 3 Das Betriebssystem Oberflächen des Betriebssystem Dateisystem und Speichermedien Speichermanagement Entwicklung für Symbian OS Programmiersprachen Entwicklungsumgebungen Sichere Speicherverwaltung Erste Anwendungen Der Buildprozess Anhang 19 A Projekdefinitionsdatei 19 1

2 B Package-Datei 19 C Installationsdatei 20 D Ressourcen 21 2

3 1 Mobile Geräte Der Entwicklungsprozess von mobilen Geräten verläuft gerade im Bereich der Mobiltelefone sehr schnell. Sie werden PCs immer ähnlicher und erhalten mit jeder Generation weitere Funktionen. Natürlich steigt auch der Wunsch der Nutzer die Geräte durch eigene Anwendungen um beliebige Funktionen zu ergänzen. Wie auf Computern werden in diesem Bereich zunehmend Betriebssysteme eingesetzt, um die erweiterte Funktionalität zu nutzen und anzupassen. Mobiltelefone, die neben den üblichen Telefoniefunktionen weitere PCähnliche Funktionalitäten bereitstellen, werden als Smartphone bezeichnet. Zu den erweiterten Funktionalitäten zählt das versenden von oder Fax sowie das Surfen im Internet. Kontakte, Termine und Aufgaben können verwaltet werden und es ist möglich, Fotos oder Videos zu erstellen, welche auf dem vergleichsweise großen Farbdisplay in guter Qualität angezeigt werden. Smartphones können darüber hinaus untereinander oder mit Computern Daten austauschen. 2 Wozu Symbian OS? Das Betriebssystem eines mobilen Gerätes muss den hohen Ansprüchen mehrerer Parteien genügen. Der Benutzer verlangt von seinem Mobiltelefon, dass er jederzeit erreichbar ist. Daten, die er in dem Gerät speichert, dürfen auf keinen Fall verloren gehen und müssen problemlos zwischen ihm und anderen mobielen Geräten oder Desktop PCs ausgetauscht werden können. Die Betriebszeit des Mobiltelefons soll so lang wie möglich sein, wobei die Erinnerungs- bzw. Weckfunktion selbst in ausgeschaltetem Zustand funktionieren muss. Einfache Benutzung, hundertprozentige Verlässlichkeit und absolute Stabilität wird vom Benutzer ebenso vorrausgesetzt, wie die Möglichkeit sein Handy bzw. seinen PDA um neue Funktionen erweitern zu können. Damit dieses Bedürfnis befriedigt werden kann, ist ein Netzwerk von Entwicklern für das Betriebssystem eines solchen Gerätes nötig. Dies impliziert, dass die Lernkurve für die Entwicklung nicht zu steil ist, dass Objektorientierung unterstützt wird und ein einfach zu nutzendes Fehlerbehandlungssystem verfügbar ist. SDKs, Hilfsmittel, Dokumentationen, technische Unterstützung und Schulungen werden ebenso selbstverständlich vorrausgesetzt. Damit der Programmierer in seinen Möglichkeiten nicht eingeschränkt wird, muss er auf alle Systemressourcen zugreifen können. Hierzu zählen auch die eventuell einzigartigen Charakteristika spezieller Mobiltelefonmodelle. Hardwarehersteller stellen zusätzliche Anforderungen an ein entsprechendes Betriebssys- 3

4 tem, damit sie es auf ihren Geräten vorinstallieren. Das Betriebssystem muss z.b. auf verschiedenen, mitunter völlig unterschiedlich bedienbaren Geräten funktionieren, denn nur so ist es möglich, ein Betriebssystem günstig auf verschiedenen Geräteklassen einzusetzen. Unterschiedliche Hersteller verlangen Anpassbarkeit des Aussehens eines Betriebssystems, damit sie sich von der Konkurrenz abheben können. Das Betriebssystem muss zukünftige Entwicklungen entweder schon unterstützen oder eine einfache Möglichkeit vorsehen, diese zu integrieren. Symbian OS schafft den Spagat, auf der einen Seite kompakt zu sein und auf der anderen Seite all die genannten Anforderungen zu erfüllen. Das Benutzerinterface ist komplett vom Betriebssystemkern getrennt, welcher seinerseits so klein wie möglich gehalten wurde. Dies reduziert das Risiko, das System auf irgend eine Weise unsicher zu machen. Symbian OS unterstützt offene Standards, wie Java 1, Bluetooth 2, MMS 3, SyncML 4, IPv6 5, etc. und ist damit gewappnet für aktuelle und kommende Entwicklungen. Einfache Mechanismen zur Codewiederverwendung und zum Speichermangement garantieren sichere, effiziente und günstige Anwendungsentwicklung. Durch die Verwendung der verbreiteten Programmiersprache C++ kann nahezu jeder Programmierer sofort Software für Symbian OS entwickeln. Es ist dabei möglich, sowohl portable Programme zu schreiben, die auf jedem Symbian-Gerät funktionieren, als auch gerätespezifische Software zu entwickeln, die auf spezielle Systemressourcen einer Geräteklasse zugreift. Ein großes, meherere tausend Teilnehmer umfassendes Netzwerk an Entwicklern garantiert zudem, dass das Betriebssystem den Ansprüchen von Anwendungsentwicklern, Herstellern und Endkunden gerecht wird. Nicht umsonst ist Symbian OS 6 neben Microsofts angepasster Windows-Version Windows Mobile 7 das wohl am weitesten verbreitete Betriebssystem für mobile Geräte. War Symbian OS 2003 noch auf 8 Millionen Geräten installiert [SymbOS], stieg die Zahl bis 2005 auf 39 Millionen Geräte [Symbian] Multimedia Messaging Service 4 Synchronization Markup Language, 5 Internet Protocol, Version 6,

5 3 Das Betriebssystem 3.1 Oberflächen des Betriebssystem Der Kern des Symbian-Betriebssystems wird von Symbian Ltd. 8 entwickelt und ist bei allen Geräten gleich. Je nach Gerät und Geräteklasse werden allerdings verschiedene Betriebssystemoberflächen eingesetzt, die von anderen Anbietern bereitgestellt werden. Von Nokia 9 stammen hierbei die Series 60, 80 und 90. UIQ Technology 10 bietet zudem die selbst entwickelte UIQ- Plattform an. Die Unterschiede der verschiedenen Plattformen liegen lediglich in den Komponenten, die für Darstellung, Oberfläche und Eingabegeräte ausgelegt sind. Zum Einen haben die verschiedenen Geräteklassen deutliche Unterschiede in der Displaygröße und zum anderen gibt es eine Vielzahl unterschiedlicher Eingabegeräte. Hierbei reicht das Spektrum von normalen Telefontastaturen über Mini-Tastaturen, welche sich nur in ihrer Größe von einer Computertastatur unterscheiden, bis hin zu Touchscreens, die mit einem Stift bedient werden. Am weitesten verbreitet ist Symbian Series 60. Diese Variante des Betriebssystems findet vorallem auf sogenannten sprachzentrischen Geräten Verwendung. Zu dieser Klasse zählen die meisten Smartphones, da hier der Anwendungsschwerpunkt auf der Sprachkommunikation liegt. Die Eingabe erfolgt dabei über eine normale Telefontastatur mit Ziffernblock, 5-Wege- Navigationstaste und zwei Softbuttons, die frei mit Funktionen belegt werden können. Die Series 80 wird weitgehend auf Organizern eingesetzt. Diese gehören zur Klasse der informationszentrischen Geräte, wobei sie jedoch in der Regel auch über Telefoniefunktionen verfügen. Diese Geräte zeichnen sich durch eine computerähnliche Tastatur und ein größeres Display aus. Series 90 und UIQ sind sich sehr ähnlich. Beide werden auf PDA-ähnlichen Geräten eingesetzt, die zur Klasse der informationszentrischen Geräten mit Telefoniefunktion zählen. Das spezielle Merkmal dieser Geräteklasse ist der Touchscreen, über den alle Benutzereingaben erfolgen. Manche Geräte haben jedoch zusätzlich noch eine Tastatur. Der hauptsächliche Unterschied zwischen Series 90 und UIQ liegt darin, dass Series 90 das Anlegen benutzerdefinierter Skins unterstützt. So ist es möglich die Oberfläche des Bestriebssystems beliebig umzugestalten. 8 Symbian Ltd., 9 Nokia GmbH, 10 User Interface Quartz, 5

6 Oberfläche Anwendungsgebiet Hardware Series 60 sprachzentrisch, erweiterte Farbdisplay, Informationsfunktionen Telefontastatur Series 80 informationszentrisch, Telefoniefunktion Großes Farbdisplay, Mini-Tastatur Series 90 informationszentrisch, Telefoniefunktion Touchscreen unterstützt benutzerdefinierte Skins (PDA-ähnlich) UIQ informationszentrisch, Telefoniefunktion (PDA-ähnlich) Touchscreen Tabelle 1: Die verschiedenen Plattformen 3.2 Dateisystem und Speichermedien Das Dateisystem von Symbian OS ist stark an Microsoft Windows 11 orientiert. Unter Symbian werden den verschiendenen Speichermedien wie unter Windows Laufwerksbuchstaben zugeordnet. Über diese können die Medien angesprochen werden. Dabei gibt es auf jedem Gerät grundsätzlich mindestens zwei Laufwerke. Gerät optional ROM RAM Flash RAM Card Card Z: C: D: E:... Abbildung 1: Laufwerke Über das Laufwerk mit der Kennung Z: wird auf das ROM 12 eines Geräts zugegriffen. Hier ist wie der Name schon sagt kein Schreibzugriff möglich. Das ROM enthält die vorinstallierte Software eines Geräts. Hier sind Betriebssystem, Bibliotheken und gegebenenfalls weitere vom Hersteller vorinstallierte Anwendungen abgelegt Read Only Memory 6

7 Z: Abbildung 2: Speichermanagement nach [Task00] Auf das RAM 13 wird unter Symbian OS ebenfalls wie auf ein Laufwerk zugegriffen. Es ist über die Laufwerkskennung C: zu erreichen. Hier hat das Betriebssystem entsprechend Schreib-Lese-Zugriff und kann Nutzerdaten und Konfigurationen speichern. Auch vom Benutzter installierte Programme werden hier abgelegt. Das RAM wird in modernen Geräten durch RAM- und Flash-RAM-Bausteine realisiert. Flash-RAM-Bausteine haben den Vorteil, dass sie ohne eine ständige Stromversorgung auskommen, um Daten persistent zu speichern. Datenverlust durch mangelnde Stromversorgung ist somit ausgeschlossen während gleichzeitig der Akku geschont wird. Die Verwaltung des RAMs wird vom Betriebssystem übernommen. Nachinstallierte Software wird automatisch im Flash-RAM gespeichert, während das flüchtige RAM von Programmen während ihrer Ausführung genutzt wird. Die meisten mobilen Geräte unterstützen externe Speichermedien wie CompactFlash Cards 14 oder SD Memory Cards. Jedes zusätzliche Speichermedium wird dabei mit einer fortlaufenden Laufwerkskennung (D:, E:,...) in das Dateisystem von Symbian eingebunden. Da alle Daten auf Speicherkarten persistent gespeichert werden, sind diese sowohl zur Speicherung von Benutzerdaten als auch zur Installation weiterer Programme geeignet. 13 Random Access Memory 14 7

8 Lauferk Speicher Datenhaltung Speicherinhalt Z: ROM persistent Betriebssystemdaten, werkseitig installierte Anwendungen C: Flash-RAM persistent nachinstallierte Anwendungen, Anwendungs- und System- Dateien (.ini), Daten C: RAM flüchtig Ausführung der Anwendungen D:, E:,... Memory-Cards persistent Anwendungen, Daten 3.3 Speichermanagement Tabelle 2: Speicher Ein großer Unterschied zu anderen Betriebssystemen ist, dass Programme unter Symbian OS nicht zuerst ins RAM geladen müssen, um ausgeführt werden zu können. Sie werden direkt aus dem ROM gestartet. Im Vergleich zur Festplatte eines normalen PCs ist das ROM eines mobilen Geräts deutlich schneller und ermöglicht so das direkte Starten der Anwendung. Zur Laufzeit entstandene Daten werden in Symbian aber ebenfalls im RAM abgelegt. Ferner unterstützt Symbian ein Konzept, das es ermöglicht es den knappen Speicher eines Geräts optimal auszunutzen. Dabei werden Bibliotheken, die von mehreren Anwendungen benötigt werden, nur einmal in den Speicher geladen und von den Programmen gleichzeitig genutzt (Vergleiche [SymbOS, Seite 77]). Anders als bei Desktop-PCs gibt es bei Symbian keine Auslagerungsdatei. Wenn keine freien Speicherblöcke mehr vorhanden sind, tritt ein outof-memory- oder ein disk-full-fehler auf. Da der verfügbare Speicher auf mobilen Geräten ohnehin sehr begrenzt ist, muß verstärkt auf solche Fehler geachtet werden. Zur Vermeidung vom Memory Leaks 15 stellt Symbian daher diverse Mechanismen zur Verfügung(siehe Abschnitt 4.3). Speicher, der bei der Objekterzeugung oder durch explizite Allokierung reserviert wird, wird vom zugeteilten Speicher (Heap) des jeweiligen Threads geholt. Falls im Heap nicht genug freie Speicherblöcke zur Verfügung stehen, versucht der Heap-Manager den Heap um weitere Blöcke zu vergößern. Jeder Thread hat zusätzlich einen 12 kbyte großen Stack. Hier können entsprechend nur geringe Datenmengen (z.b. Variableninhalte von Grunddatentypen) abgelegt werden. 15 Speicherlöcher - nicht freigegebener Speicher 8

9 4 Entwicklung für Symbian OS Native Symbian-Programme werden in der Regel auf Computern mit Windows als Betriebssystem entwickelt. Um zu gewährleisten, das die entwickelten Programme auf einem Endgerät mit Symbian OS lauffähig sind, wird durch einen Emulator die API von Symbian OS bereitgestellt. Die so zur Verfügung gestellten Dienste werden auf der jeweiligen Hardware jeweils anders implementiert, wobei auf Quellcode-Ebene keine Unterschiede bestehen. Soll ein Dienst des Betriebssystems, wie etwa der Fileserver, aus einem Programm heraus angesprochen werden, so ist der Funktionsaufruf im Quellcode unabhängig von der genutzten Hardwareplattform. Im Emulator greift der Fileserver-Dienst auf ein Unterverzeichnis auf der Festplatte zu, während auf einem echten Gerät ein Zugriff auf die RAM-Disk erfolgt. Beim Übertragen einer Applikation auf ein Endgerät, muß die Anwendung mit einem Crosscompiler 16 übersetzt werden. Programmcode, der für dem Emulator übersetzt wurde ist auf echten Geräten nicht lauffähig, da hier andere Prozessoren benutzt werden, die einen anderen Befehlssatz unterstützen, als die Prozessoren der Entwicklungssysteme (vgl. Abschnitt 4.5.1). 4.1 Programmiersprachen Es gibt mehrere Möglichkeiten Programme für mobile Geräte zu schreiben. Die meisten mobilen Geräte unterstützen Java. Hierbei läuft auf dem Gerät eine KVM 17, welche Java-Midlets 18 ausführen kann. Der Vorteil hierbei ist, daß die Midlets auf jedem Java-fähigen Gerät laufen, auf dem die vom Midlet benutzten APIs implementiert sind. Auch Symbian-Geräte haben in der Regel eine KVM, um Java-Programme ausführen zu können. Der größte Vorteil, bei der direkten Entwicklung von Symbian-Software ist der uneingeschränkte Zugriff auf alle Systemressourcen. Da die Programme, genau wie das Betriebssystem in C++ implementiert werden, kann hier auf alle Betriebssystemfunktionen zugegriffen werden. Die Programme unterliegen nicht den Einschränkungen einer Laufzeitumgebung. Auf diese Weise kann auf Bluetooth-, Kamera-, Radio-, GPS-Komponenten oder das Dateissytem direkt zugegriffen werden. Dies ermöglicht das Schreiben von Treibern, Antivirensoftware und anderen Programmen, die tief in das System eingreifen. Auch der Einsatz von Skriptsprachen ist auf mobilen Geräten möglich. 16 Compiler, der ausführbaren Code für eine andere Computerplattform erzeugt 17 Kilobyte Virtual Machine, Java-Laufzeitumgebung 18 Java-Anwendung für mobile Geräte 9

10 Symbian OS bietet beispielsweise die Möglichkeit Python 19 einzusetzen. Der Vorteil von Python ist hierbei, dass die Sprache die Möglichkeit bietet C- Module zu integrieren. Auf diese Weise ist auch von Python aus der Zugriff auf Betriebssystemfunktionen möglich. Im Gegensatz zu reinen C++ Programmen ist hier jedoch mit einer schlechteren Performance zu rechnen. 4.2 Entwicklungsumgebungen Symbian SDKs 20 werden sowohl von Symbian direkt als auch von den Herstellern der Endgeräte, wie zum Beispiel Nokia, angeboten. Sie enthalten verschiedene Hilfsprogramme zum Erstellen von Symbian-Anwendungen sowie einen Emulator, um die Programme auf einem Desktop-PC zu testen. Die SDKs unterstützen direkt die Entwicklungsumgebungen Microsoft Visual C++ 21, Metrowerks CodeWarrior 22, sowie emphborland Mobile Studio 23. Sie bieten die bekannten Vorteile einer Entwicklungsumgebung wie Syntax- Highlighting, das Anzeigen von Klassen oder das Kompilieren auf Tastendruck. Allerdings existieren zum Teil große Unterschiede in der Art der Integration der SDKs in die jeweilige IDE 24. Während in Visual C++ lediglich ein Wizard integriert werden kann, der dabei hilft, das Grundgerüst einer Anwendung zu erstellen, bietet das Mobile Studio von Borland deutlich mehr Komfort. Neben der Verwaltung der Projektdateien (.mmp) besteht hier auch die Möglichkeit mit wenigen Handgriffen aus der IDE heraus verschiedene Build-Targets (siehe Abschnitt 4.5.1) auszuwählen, oder auch GUI-Elemente leicht mit einigen Mausklicks zu erstellen. Das Tool makmake, auf das in Abschnitt 4.5 näher eingegangen wird bietet die Möglichkeit MS-Visual-C++-Projektdateien zu erstellen, die mit der IDE geöffnet werden können. Zu diesem Zweck muß das Tool mit dem Auruf makmake programm.mmp vc6 gestartet werden. Wird ein Projekt über die so erstellte Datei geladen, sind in der IDE sämtliche Parameter gesetzt, um die Anwendung von dort aus zu kompilieren, zu starten oder zu debuggen. Allerdings müssen die Projektdateien jedesmal neu erstellt werden, wenn neue Quellcode-Dateien zum Projekt hinzugefügt werden. Diese müssen zunächst in die Projektdefinitionsdatei eingetragen werden, bevor daraus erneut eine Workspace-Datei erstellt werden kann Software Development Kit Integrated Development Environment: Entwicklungsumgebung 10

11 4.3 Sichere Speicherverwaltung C++ Programme für Symbian müssen hinsichtlich des Speichermanagements mit besonderer Sorgfalt programmiert werden. Besondere Makros, Funktionen und Klassen erleichtern es dem Programmierer, diese komplexe Anforderung umzusetzen ([SymbOS, Siehe S.52,88f.]). Mit Hilfe der Makros UHEAP_MARK und UHEAP_MARKEND, die das komplette Programm umschließen sollten, wird der allokierte Speicher bei Programmstart und -ende überprüft. Somit wird gewährleistet, daß der komplette von der Anwendung genutzte Speicher beim Verlassen des Programms wieder freigegeben wird. Die Klasse CleanupStack hilft ebenfalls dabei, Memory Leaks zu vermeiden. Auf dem Cleanupstack werden zusätzliche Referenzen auf Objekte abgelegt. Falls beim Verarbeiten eines Objekts ein Fehler auftritt, und die Referenz darauf verloren geht, existiert weiterhin die Objektreferenz auf dem Cleanupstack, die dazu genutzt werden kann, den vom Objekt belegten Speicher wieder freizugeben. Die statischen Funktionen PushL(), Pop() sowie PopAndDestroy() der Klasse CleanupStack dienen dazu, Objektereferenzen auf dem Cleanupstack zu speichern, sie wieder davon zu entfernen und gegebenenfalls das zugehörige Objekt zu zerstören. Symbian bietet darüber hinaus einen fehlertoleranten Konstruktor. Der Operator new (ELeave) erzeugt ein temporäres Objekt. Konnte das temporäre Objekt erfolgreich erstellt werden, wird es dem eigentlichen Objekt übergeben und die Objekterzeugung kann ohne weitere Speicherprobleme abgeschlossen werden. Tritt ein Fehler auf, so läuft die Routine in die vorgesehene Fehlerbehandlung. Eine typische Verwendung des fehlertoleranten Konstruktors sieht wie folgt aus: CFbsBitmap ibmp = new ( ELeave ) CFbsBitmap ; 4.4 Erste Anwendungen Konsolenanwendung Symbian bietet neben der von Smartphones gewohnten graphischen Oberfläche eine Konsole, wie man es von Betriebssystemen wie Linux oder Windows gewohnt ist. In der Praxis findet diese jedoch kaum Verwendung und wird für gewöhnlich von Entwicklern zum Debuggen genutzt. Am Beispiel einer Konsolenanwendung läßt sich jedoch gut der Aufbau eines simplen Programms erklären, ohne auf das komplexe GUI-Framework einzugehen. C++ Programme unter Symbian haben, wie in anderen Programmiersprachen auch, einen festen Einstiegspunkt in den Programmcode. Dies ist die Funktion E32Main(). 11

12 Sie wird beim Start der Anwendung gerufen. Als Rückgabewert wird ein Integer verlangt. Dieser stellt, wie in anderen C-Programmen üblich, einen Exit-Status dar. Ein einfaches Hello World! -Programm für die Konsole sieht folgendermassen aus: # include < e32base. h> # include < e32cons. h> LOCAL_D CConsoleBase c o n s o l e ; _LIT( t i t l e, " Hello Text" ) void consolemainl ( ) { c o n s o l e = Console : : NewL( t i t l e, TSize ( KConsFullScreen, KConsFullScreen ) ) ; CleanupStack : : PushL ( c o n s o l e ) ; console >P r i n t f (_L( " Hello World! \ n" ) ) ; console >P r i n t f (_L( " [ p r e s s any key ] " ) ) ; console >Getch ( ) ; } CleanupStack : : PopAndDestroy ( ) ; GLDEF_C TInt E32Main ( ) { UHEAP_MARK; CTrapCleanup cleanupstack=ctrapcleanup : : New ( ) ; TRAPD( error, consolemainl ( ) ) ; ASSERT_ALWAYS(! error, User : : Panic (_L( "PEP" ), e r r o r ) ) ; delete cleanupstack ; UHEAP_MARKEND; return 0 ; } Mit diesem Quellcode wird ein Programm erzeugt, welches Hello World! auf der Konsole ausgibt, eine beliebige Eingabe vom Benutzer abwartet und sich daraufhin beendet. Der Zweck des Cleanupstacks und der verwendeten Makros UHEAP_MARK und UHEAP_MARKEND wurden bereits in Abschnitt 3.3 erläutert. 12

13 Das Makro TRAP bzw. TRAPD stellt einen Mechanismus zur Verfügung, der mit dem Exception-Handling in anderen Programmiersprachen vergleichbar ist. Der erste Parameter ist dabei eine Variable, in der ein Fehlercode gespeichert wird. Der zweite Parameter ist die auszuführende Funktion. Eine Funktion kann mittels USER::LEAVE() die normale Ausführung beenden und die Exception-Behandlung anstoßen. Als Programmierkonvention gilt es Funktionen, die solche Fehler auslösen können, mit einem L am Ende des Funktionsnamens zu kennzeichnen. Das ASSERT_ALWAYS-Makro überprüft anschließend, ob die in TRAPD ausgeführte Funktion einen Fehler zurückgeliefert hat und reagiert entsprechend. Durch den Aufruf von User::Panic() wird eine Systemreaktion (Panic) ausgelöst. Dies führt dazu, daß der Kernel die Programmausführung stoppt und den kompletten zum Prozess gehörenden Speicher freigibt. Das eigentliche Verhalten der Anwendung wird durch die Befehle Printf() und Getch() des Konsolenobjekts realisiert. Printf() gibt dabei eine Zeichenkette auf der Konsole aus, während Getch() auf eine Benutzereingabe wartet und danach mit der Ausführung des Programms fortfährt. Der Parameter _L("Hello World!\n"), welcher Printf() übergeben wird, ist mit einem String-Objekt vergleichbar. In Symbian werden anstelle von Strings so genannte Deskriptoren verwendet. Diese entsprechen im Grunde einer String-Klasse und bieten ähnliche Funktionen an. Dazu zählt u.a. das Suchen von Zeichen oder der lexikographische Vergleich. Zur Erstellung von Deskriptoren existieren zwei Makros. Das Makro _L erzeugt einen Deskriptor ohne einen Namen dafür zu vergeben. Er kann so direkt als Parameter übergeben werden. Werden Deskriptoren an mehreren Stellen benötigt, ist es sinnvoll mittels _LIT 25 einen benannten Deskriptor zu erzeugen Graphische-Anwendung GUI-Anwendungen 26 für Symbian basieren auf CONE 27 und EIKON 28. CO- NE ist hierbei die zugrunde liegende Schicht, die eine Zeichenfläche auf dem Display bereitstellt und für die Eventbehandlung zuständig ist. EI- KON hingegen verwaltet das Look&Feel der Oberfläche. Die Komponenten von EIKON sind entsprechend austausch- und erweiterbar. So können Gerätehersteller die GUI-Komponenten ihrer Software anpassen und erweitern ohne tief in den Code des Betriebssystems einzugreifen. Auf der nächsten Schicht des Frameworks erben Klassen des UIKON-Frameworks von EIKON- 25 _L bzw. _LIT steht dabei für Literal 26 GUI: Graphical User Interface bzw. Grafische Benutzeroberfläche 27 Control-Environment 28 Griechisch für Aussehen, Form 13

14 Model CExampleDocument +CreateAppUiL() CExampleAppView +Draw() View Controller CExampleAppUi +HandleCommandL() CExampleApplication +AppDlluid() +CreateDocumentL() erzeugt Abbildung 3: Model-View-Controller Klassen und bieten eine User-Interface-Klassenbilbliothek für Standard-GUI- Komponenten (Vergleiche [SymbOS, Seite 110]). Das Application Famework, das graphische Anwendungen unter Symbian OS ermöglicht, wendet das klassische Model-View-Controller-Paradigma 29 an. Ein Programm mit graphischer Oberfläche besteht aus mindestens vier Klassen. Neben den Klassen für die Daten (Model), die Darstellung (View) und die Datenverarbeitung (Controller) gibt es eine weitere Applikationsklasse, die für das Starten der Anwendung verantwortlich ist. Beim Starten der Anwendung wird zunächst vom Framework eine Instanz der Klasse CExampleApplication erstellt. Danach wird die UID 30 der Anwendung ausgelesen und geprüft, ob das Programm bereits läuft. Ist dies der Fall wird zu der laufenden Instanz gewechselt. Auf diese Weise wird verhindert, dass mehrere Instanzen eines Programms gestartet werden. Läuft eine Anwendung noch nicht, wird anschließend die Model-Klasse CExampleDocument instanziiert. Dabei werden persistent gespeicherte Daten geladen, falls solche vorhanden sind. Ist das Laden der Daten abgeschlossen, wird vom Model aus eine Instanz der Klasse CExampleAppUi erstellt. Dabei handelt es sich um die Controller-Klasse, über die die Daten des Modells manipuliert werden können. Abschließend instanziiert die Controller-Klasse die View-Klasse CExampleAppView. Diese ist für die Darstellung der Anwendung auf dem Display zuständig. Sie ist für das Zeichnen der Oberflächenkomponenten verantwortlich. 4.5 Der Buildprozess Um ein Projekt zu erstellen, werden zunächst Makefiles benötigt, die den Kompilierprozess steuern. Zum Erstellen der genannten Makefiles wird zu- 29 Architekturmuster zur Trennung von Software-Systemen 30 Unique Identifier 14

15 CEikApplication +AppDlluid() +CreateDocumentL() Uikon-Framework CEikDocument +CreateAppUiL() CEikAppUi +HandleCommandL() Control Environment CONE CCoeControl +Draw() CExampleApplication CExampleDocument CExampleAppUi CExampleAppView +AppDlluid() +CreateDocumentL() +CreateAppUiL() +HandleCommandL() +Draw() Abbildung 4: GUI-Klassen nächst die Datei Bld.inf benötigt. Sie enthält in der Regel nur einen Verweis auf die Projektdefinitionsdatei und wird vom Entwickler erstellt. Ihr Inhalt muss mindestens aus zwei Zeilen bestehen: PRJ_MMPFILES. \ group \ h e l l o w o r l d.mmp Die Projektdefinitionsdatei enthält weitere Informationen über das zu erstellende Projekt. Ihr Inhalt wird in Abschnitt A genauer beschrieben. Der Aufruf bldmake bldfiles verarbeitet die Datei Bld.inf bzw. die darin angegebene Projektdefinitionsdatei und generiert dabei sämtliche Makefiles für die verschiedenen Build-Targets (siehe Abschnitt 4.5.1) sowie die Batchdatei Abld.bat. Zu diesem Zweck wird während der Ausführung das Makefile Creation Utility makmake aufgerufen, welches aus einer Projektdefinitionsdatei ein Makefile für eine beliebige Plattform generieren kann. Durch das Ausführen der Batchdatei Abld.bat mit dem gewünschten Build-Target als Parameter, wird das Kompilieren und Linken der entsprechenden Dateien angestoßen. Intern wird dabei das Perl-Skript Abld.pl 31 mit den entsprechenden Parametern aufgerufen. Dieses lokalisiert das gewünschte Makefile und parametrisiert das Tool nmake damit. Während der darauffolgenden Verarbeitung des Makefiles werden Compiler und Linker aufgerufen, um aus den Quellcode-Dateien ausführbaren Programmcode zu erzeugen Build-Targets Bei der Anwendungsentwicklung für Symbian OS ist zu beachten, daß Software auf PCs entwickelt wird, die in der Regel mit einer x86 CPU 32 laufen. 31 ABLD: Automatic Build Tool 32 Prozessor mit CISC-Architektur 15

16 bldmake Aufruf: verarbeitet bldmake bldfiles bld.inf verweist auf *.mmp ruft auf makmake erzeugt Abld.bat *.WINS *.ARMI... Abbildung 5: BldMake Die entwickelte Anwendung wird später jedoch auf einen anderen Gerät eingesetzt, das einen anderen Chipsatz verwendet. In Geräten, die unter dem Symbian Betriebsystem laufen, werden meist StrongARM-Prozessoren 33 verbaut. Diese beherrschen weniger und andere Befehle als x86 CPUs. Somit ist kompilierter Code nur auf dem Gerät lauffähig, für den er übersetzt wurde. Um auf einem PC ausführbare Dateien für ein Symbian-Gerät zu erstellen wird daher ein Cross-Compiler eingesetzt. Da Programme für verschiedene Prozessorarchitekturen anders erstellt werden und andere Compiler nutzen, werden verschiedene Makefiles benötigt, die die entsprechenden Schritte und Abhängigkeiten definieren. Für jede Zielplattform wird ein eigenes Makefile benötigt, das mit Hilfe des Tools makmake erstellt werden kann. Um alle Makefiles für alle verfügbaren Plattformen in einem Schritt zu erstellen, kann das Tool bldmake wie in Abschnitt 4.5 beschrieben genutzt werden Build für den Emulator Wurden die Makefiles bereits, wie in Abschnitt 4.5 beschrieben erstellt, kann der Buildprozess direkt angestoßen werden. Durch den Aufruf abld build wins udeb wird mit Hilfe des Makefiles mit der Endung WINS ausführbarer 33 Prozessor mit RISC-Architektur 16

17 abld.bat ruft auf Aufruf: abld build udeb wins abld build urel armi abld.pl ruft auf nmake ruft auf verarbeitet *.WINS *.ARMI... Compiler/ Crosscompiler verarbeitet Quellcode (*.h, *.cpp) Linker erzeugt verarbeitet Objektcode (*.o, *.obj) erzeugt Programmcode (*.app, *.exe, *.dll) Abbildung 6: Automatic Build Tool Build UREL UDEB Typ Unicode Release Unicode Debug WINS ARMI WINS ARMI Zielplattform WINS: Emulator ARMI: Device Abbildung 7: Build-Targets 17

18 Bld.inf bldmake bldfiles Bld.inf bldmake bldfiles Abld.bat *.app, *.rsc Abld build wins urel oder Abld build wins udeb Abld.bat *.app, *.rsc Abld build wins urel oder Abld build wins udeb makesis *.pkg *.sis Abbildung 8: Build-Prozess für Emulator und Endgerät Code für das Build-Target WINS erzeugt. Ergebnis des Builprozesses sind zwei Dateien mit den Endungen.app und.rsc. Beide Dateien liegen im Verzeichnis \epoc32\release\wins\udeb\z\system\apps\projektname. Die APP- Datei ist dabei das ausführbare Programm und die RSC-Datei die kompilierte Ressource (siehe Abschnitt D). Wurde in der Projektdefinitionsdatei als Zieltyp EXE angegeben wird eine ausführbare Datei mit selbiger Endung im Verzeichnis \epoc32\release\wins\udeb\ erzeugt. Diese Datei kann direkt aus Windows gestartet werden und lädt das Programm direkt in den Emulator Build für die Zielplattform Der Buildprozess für die Zielplattform ist ähnlich dem für den Emulator. Da das Programm jedoch noch auf dem Symbian-Gerät installiert werden muß, sind einige weitere Schritte notwendig. Der Aufruf abld build armi urel stößt den Buildprozess unter der Verwendung des Makefiles mit der Endung ARMI an. Die dabei entstandenen Dateien mit den Endungen APP und RSC müssen anschließend in eine Installationsdatei verpackt werden, die auf dem Endgerät ausgeführt werden kann. Hierzu wird eine PKG-Datei benötigt, die Installationsinformationen und Systemvoraussetzungen enthält (siehe Abschnitt B). Diese Datei ist mit dem Java-Application-Descriptor (JAD-Datei) bei J2ME zu vergleichen und wird vom Programmierer geschrieben. Die Installationsdatei mit der Endung SIS (siehe Abschnitt C) kann schließlich aus der PKG-Datei generiert werden. Dies geschieht mit Hilfe des Tools makesis. Die Installationsdatei enthält den ausführbaren Programmcode und ist mit einem JAR-Archiv auf der J2ME- Plattform vergleichbar. 18

19 5 Anhang A Projekdefinitionsdatei In der Projektdefinitionsdatei mit der Endung MMP werden alle Informationen aufgelistet, die für das Erstellen der Buildskripte und schließlich der fertigen Anwendung nötig sind. Hier stehen neben allen benötigten Dateien (Sourcecode, Ressourcen) auch die zugehörigen Quell-Pfade, sowie weitere Angaben zur zu erstellenden Datei (Ziel-Pfad, Name, Typ). Weiterhin sind auch sämtliche verwendeten Bibliotheken aufgelistet, die später durch den Linker eingebunden werden müssen. Weiterhin ist auch die aus bis zu drei 32 Bit Werten bestehende Unique ID (UID) enthalten. Die UID teilt dem Betriebssystem z.b. den Typ und den Subtyp der Anwendung mit. Die wichtigste Funktion der UID ist jedoch die eindeutige Identifikation eines Programms. Anhand der UID wird z.b. überprüft, ob ein Programm schon läuft und nur zu ihm gewechselt werden muss, oder ob es neu in den Speicher zu laden ist. Zum Entwickeln können UIDs zwischen 0x und 0x0fffffff verwendet werden. Für Software, die an Kunden ausgeliefert wird, müssen jedoch gültige UIDs bei Symbian beantragt werden. Dies ist kostenlos möglich. TARGET HelloWorld.app TARGETTYPE app UID 0x100039CE 0x10008ACE TARGETPATH \\system\\apps\\helloworld SOURCEPATH. SOURCE HelloWorld_main.cpp SOURCE HelloWorld_Application.cpp SOURCE HelloWorld_Document.cpp SOURCE HelloWorld_AppUi.cpp SOURCE HelloWorld_AppView.cpp USERINCLUDE. SYSTEMINCLUDE \\epoc32\\include RESOURCE HelloWorld.rss LIBRARY euser.lib apparc.lib cone.lib eikcore.lib B Package-Datei Die Package-Datei wird benötigt, um alle Dateien eines Programms in ein Installationspaket zu packen. Zu diesem Zweck enthält das PKG-File Infor- 19

20 mationen über alle zu paketierenden Programmdateien. Weiterhin sind Programmversion, Zielplattform und verfügbare Sprachversionen angegeben. ; Languages &EN,DE ; UID #{"HelloWorld","HalloWelt"},(0x10008ACE),1,0,0 ; Supports Series 60 v 0.9 (0x101F6F88), 0, 0, 0, {"Series60ProductID"} ; Files to install "\Symbian\6.1\Siemens\SX1\bin\Epoc32\release\armi\urel\HelloWorld.app"- "!:\system\apps\helloworld\helloworld.app" "\Symbian\6.1\Siemens\SX1\bin\Epoc32\release\armi\urel\HelloWorld.rsc"- "!:\system\apps\helloworld\helloworld.rsc" "\Symbian\6.1\Siemens\SX1\bin\Epoc32\release\armi\urel\HelloWorld_caption.rsc"- "!:\system\apps\helloworld\helloworld_caption.rsc" "\Symbian\6.1\Siemens\SX1\bin\Epoc32\release\armi\urel\HelloWorld.aif"- "!:\system\apps\helloworld\helloworld.aif" C Installationsdatei Auf Symbian-Endgeräten können Anwendungen aus Installationsarchiven mit der Endung SIS installiert werden. Um eine solche Datei zu erstellen wird ein Package-File benötigt, wie es in Abschnitt B näher beschrieben wurde. Das Tool makesis packt die dort angegebenen Dateien zusammen mit zusätzlichen Metainformationen in eine Installationsdatei. Die fertige Sis-Datei kann schließlich mit Hilfe des im SDK enthaltenen Tools Sisar oder durch den Kommandozeilenaufruf makesis programm.pkg generiert werden. Um die Herkunft einer Installationsdatei zu verifizieren bietet Symbian ein sicheres Softwareinstallationssystem an, welches signierte Software auf ihre Vertrauenwürdigkeit überprüfen kann. Eigene Software kann mit Hilfe des Tools Makekeys signiert werden. Makekeys integriert ein digitales Zertifikat in die Sis-Datei. Somit kann der Softwarehersteller identifiziert werden und es ist sichergestellt, dass die Software nicht von Dritten verändert wurde. 20

Die ersten C#- Programme erstellen

Die ersten C#- Programme erstellen Zusatzkapitel zu Kapitel 3: Die ersten C#- Programme erstellen I - Erste Schritte Richtig einsteigen: Programmieren lernen mit Visual C# 2005 Website zum Buch: www.vsxpress.de Auf den folgenden Seiten

Mehr

Betriebssysteme Kap A: Grundlagen

Betriebssysteme Kap A: Grundlagen Betriebssysteme Kap A: Grundlagen 1 Betriebssystem Definition DIN 44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten

Mehr

09.10.2015. 02.10.2015 + 07.10.2015 Seite 1. 02.10.2015 + 07.10.2015 Seite 2

09.10.2015. 02.10.2015 + 07.10.2015 Seite 1. 02.10.2015 + 07.10.2015 Seite 2 02.10.2015 + 07.10.2015 Seite 1 02.10.2015 + 07.10.2015 Seite 2 1 Anzahl der Klassenarbeiten: Mindestens zwei Klassenarbeiten pro Halbjahr (= 4 KA pro Jahr) Im ersten Ausbildungsjahr gibt es jedoch kein

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

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

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

Automatisierte Erstellung von Software-Builds und -dokumentationen. Teil 1

Automatisierte Erstellung von Software-Builds und -dokumentationen. Teil 1 Automatisierte Erstellung von Software-Builds und -dokumentationen Teil 1 Autoren: Hagedorn, Robert; Denninger, Oliver Kontakt: {hagedorn denninger}@fzi.de Web: http://zfs.fzi.de Ort, Datum: Karlsruhe,

Mehr

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum Starthilfe für C# Inhaltsverzeichnis Allgemeines... 2 Bezugsquellen... 2 SharpDevelop... 2.NET Runtime... 2.NET SDK... 2 Installation... 2 Reihenfolge... 2 Vorschlag für eine Ordnerstruktur... 3 Arbeit

Mehr

Bakefiles. TgZero Technik.Blosbasis.net. April 1, 2013

Bakefiles. TgZero Technik.Blosbasis.net. April 1, 2013 TgZero Technik.Blosbasis.net April 1, 2013 1 Inhaltsverzeichnis 1 Makefile 3 1.1 Was sind Makefiles?........................ 3 2 Bakefile 3 3 Aufbau einer Bakefile 4 3.1 Targets...............................

Mehr

AK Medientechnologien Hello World. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/

AK Medientechnologien Hello World. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ AK Medientechnologien Hello World Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Demo-Applikation: Hello World Rückblick auf einzelne Schritte Entwicklungswerkzeuge

Mehr

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse 1. Einführung 1.1 Eclipse Die Eclipse ist eine kostenlose integrierte Entwicklungsumgebung oder auch IDE genannt, (Abkürzung IDE, engl. Integrated development enviroment). Sie ist eine grafische Benutzeroberfläche

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

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

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

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

Eclipse :Bis(s) zum Javacode Einführung in die Eclipse-IDE

Eclipse :Bis(s) zum Javacode Einführung in die Eclipse-IDE EF-III-A6 Einführung in Eclipse Seite 1 von 5 Eclipse :Bis(s) zum Javacode Einführung in die Eclipse-IDE Erläuterung Eclipse/IDE Eclipse ist eine integrierte Open-Source-Entwicklungsumgebung für Software

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

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

Bewegliche Ziele Entwicklungsumgebungen für Pocket PCs und Smartphones

Bewegliche Ziele Entwicklungsumgebungen für Pocket PCs und Smartphones Seite 1 von 5 Bewegliche Ziele Entwicklungsumgebungen für Pocket PCs und Smartphones von Robert Panther Mobile Devices auf Basis von Windows CE haben sich inzwischen fest am Markt etabliert. Nach dem Siegeszug

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

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

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

NetBeans Installation für Handy-Programmierung

NetBeans Installation für Handy-Programmierung Netbeans-Installation für Handy-Programmierung Seite 1 NetBeans Installation für Handy-Programmierung 1. Installation Die Netbeans-Installation setzt voraus, dass JDK 6 bereits auf dem Rechner installiert

Mehr

Erste Schritte mit Eclipse

Erste Schritte mit Eclipse Erste Schritte mit Eclipse März 2008, KLK 1) Java Development Kit (JDK) und Eclipse installieren In den PC-Pools der HAW sind der JDK und Eclipse schon installiert und können mit dem Application Launcher

Mehr

Byte-Taxi. Bedienungsanleitung. Seite 1 von 8

Byte-Taxi. Bedienungsanleitung. Seite 1 von 8 Byte-Taxi Bedienungsanleitung Seite 1 von 8 Inhaltsverzeichnis 1. Beschreibung 3 2. Systemvoraussetzungen 4 3. Installationsanleitung 5 4. Bedienung 6 5. Infos & Kontakt 8 Seite 2 von 8 1. Beschreibung

Mehr

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Howto Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Peter Bitterlich Markus Langer 12. Oktober 2012 Zusammenfassung Dieses Dokument erklärt Schritt für Schritt die Installation

Mehr

DDBAC-SDK unter Linux (mit Wine) Installationsanleitung

DDBAC-SDK unter Linux (mit Wine) Installationsanleitung DDBAC-SDK unter Linux (mit Wine) Installationsanleitung Installation von Wine Einleitung Übersicht Titel Thema Datei DDBAC-SDK unter Linux (mit Wine) Installationsanleitung DDBAC_Wine_Installation.doc

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

Dokumentation. juris Autologon-Tool. Version 3.1

Dokumentation. juris Autologon-Tool. Version 3.1 Dokumentation juris Autologon-Tool Version 3.1 Inhaltsverzeichnis: 1. Allgemeines... 3 2. Installation Einzelplatz... 3 3. Installation Netzwerk... 3 4. Konfiguration Netzwerk... 3 4.1 Die Autologon.ini...

Mehr

Ogre Einführung Teil 1

Ogre Einführung Teil 1 Inhalt -Einleitung -Installieren und Einrichten von Ogre -Die erste Anwendung Ogre Einführung Teil 1 Einleitung Eine 3D Engine ist eine sehr komplexe Software und besteht aus mehreren tausend Zeilen Programmcode.

Mehr

Bei Truecrypt handelt es sich um ein Open-Source Verschlüsselungs-Programm, das unter folgendem Link für verschiedene Plattformen verfügbar ist:

Bei Truecrypt handelt es sich um ein Open-Source Verschlüsselungs-Programm, das unter folgendem Link für verschiedene Plattformen verfügbar ist: Selbstdatenschutz Dropbox & Co. sicher nutzen "MEO - My Eyes Only" Um Unbefugten (inklusive dem Betreiber des Dienstes) die Einsicht in Dateien in Clouddiensten zu verwehren, sollte man diese verschlüsseln.

Mehr

Glossar. Launching auf.

Glossar. Launching auf. 243 Ad Hoc Distribution Die Ad Hoc Distribution ist eine Möglichkeit, um Ihre entwickelte Anwendung auf anderen Endgeräten zu verteilen. Diese Art der Verteilung erfolgt ohne den App Store. Die Anzahl

Mehr

Einführung in das Microsoft.NET-Framework. Programmiersprache C# 02: Visual Studio / Hello World. Boris Hülsmann

Einführung in das Microsoft.NET-Framework. Programmiersprache C# 02: Visual Studio / Hello World. Boris Hülsmann Einführung in das Microsoft.NET-Framework Programmiersprache C# 02: Visual Studio / Hello World Boris Hülsmann 23.09.2010 1 In dieser Einführung bekommen Sie einen kurzen Einstieg in das.net-framework

Mehr

3 Das benötigen Sie. 3.1 GIMP unter Linux nutzen

3 Das benötigen Sie. 3.1 GIMP unter Linux nutzen 13 3 Das benötigen Sie GIMP ist auf nahezu allen Rechner lauffähig, auf denen ein UNIX- Betriebssystem installiert ist. Im Gegensatz zu vielen Dienstprogrammen und Anwendungen, die sich effizient und sparsam

Mehr

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

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1 Kapitel 1 Einstieg in Java Dr. Elham Firouzi 06.09.10 1 1 : Einstieg in Java Einleitung Ein erstes Beispiel Berner Fachhochschule Entwicklung von Java-Programmen Applikationen Applets Vor und Nachteile

Mehr

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu)

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) HMExcel Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) Inhalt 1. Einleitung...1 2. Beispiele...2 2.1. Daten in ein Tabellenblatt schreiben...2

Mehr

POB-Technology Dokumentation. POB-Technology Produkte. Deutsche Übersetzung von roboter-teile.de Alle Rechte vorbehalten Seite 1 von 13

POB-Technology Dokumentation. POB-Technology Produkte. Deutsche Übersetzung von roboter-teile.de Alle Rechte vorbehalten Seite 1 von 13 POB-Technology Produkte Deutsche Übersetzung von roboter-teile.de Alle Rechte vorbehalten Seite 1 von 13 Inhaltsverzeichnis Inhaltsverzeichnis Inhaltsverzeichnis... 2 Einführung...4 POB-EYE... 5 POB-LCD128...

Mehr

LABVIEW APPLICATION BUILDER

LABVIEW APPLICATION BUILDER VERSIONSHINWEISE LABVIEW APPLICATION BUILDER Version 6.0 Inhaltsverzeichnis LabVIEW Application Builder ist ein Zusatzpaket, das Sie verwenden können, um mit LabVIEW Programme und Shared Libraries (DLLs)

Mehr

8a. Exkurs.NET. 8a.1.NET Architektur

8a. Exkurs.NET. 8a.1.NET Architektur 8a. Exkurs.NET Inhalt: 8a.1.NET Architektur 8a.2 Kooperation von Anwendungen über ADO -.NET 8a.3 Unterschiede gegenüber gewöhnlicher WIN32- Programmierung 1 8a.1.NET Architektur Bislang wurden die C/C++

Mehr

Praktikum Ingenieurinformatik. Termin 2. Mein erstes C-Programm

Praktikum Ingenieurinformatik. Termin 2. Mein erstes C-Programm Praktikum Ingenieurinformatik Termin 2 Mein erstes C-Programm 1 1. Einleitung 2. Erstes C-Programm 3. Fehler ins Programm einbauen 4. Zweites und drittes C-Programm 5. Installation der Visual C++ 2010

Mehr

Anwenderdokumentation PersoSim

Anwenderdokumentation PersoSim Anwenderdokumentation PersoSim Die nachfolgende Anwenderdokumentation soll dem Anwender bei der Installation und den ersten Schritten im Umgang mit PersoSim helfen. Installation Grundvoraussetzung für

Mehr

Kompilieren und Linken

Kompilieren und Linken Kapitel 2 Kompilieren und Linken Bevor wir uns auf C++ selbst stürzen, brauchen wir einiges Vorgeplänkel, wie man komfortabel ein größeres C++- kompilieren kann. Mit Java stellt sich der Kompiliervorgang

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

2008 Linke, Walter IAV4 1

2008 Linke, Walter IAV4 1 VMware Dokumentation Linke, Walter IAV4 2008 Linke, Walter IAV4 1 Inhaltsverzeichnis 1.Hardwareanforderungen 2.Installation -Server- 3.Installation -Vmware Console- 4.Installation einer virtuellen Maschine

Mehr

Workbooster File Exchanger Command Line Tool

Workbooster File Exchanger Command Line Tool Thema Technische Benutzerdokumentation - WBFileExchanger Workbooster File Exchanger Command Line Tool Letzte Anpassung 18. Januar 2014 Status / Version Finale Version - V 1.1 Summary Erstellung Diese technische

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

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

Kurzanleitung zu XML2DB

Kurzanleitung zu XML2DB Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines

Mehr

Software-Installation

Software-Installation Software-Installation Hardware und Betriebssystemanforderungen Mindestens Pentium CPU mit 166 MHz und 32 MB RAM, CD-Rom Laufwerk, COM Anschluss Microsoft Windows 95/98, NT 4, 2000 Professional, XP Microsoft

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

LEHRSTUHL FÜR DATENBANKEN

LEHRSTUHL FÜR DATENBANKEN LEHRSTUHL FÜR DATENBANKEN Informatik II für Verkehrsingenieure Java & Eclipse Installationsguide Prof. Dr.-Ing. Wolfgang Lehner > Was ist Eclipse? Eine sogenannte Integrierte Entwicklungsumgebung (engl.

Mehr

Modularis Spector Datenerfassung

Modularis Spector Datenerfassung Modularis Spector Datenerfassung Version 1.1 1. Überblick Die aufgezeichneten Logdaten lassen sich über den USB-Anschluss des Modularis-Moduls abrufen. Dazu kann die hierfür entwickelte PC-Applikation

Mehr

Handbuch zur Access-Datenbank Kleine Versicherungsmakler

Handbuch zur Access-Datenbank Kleine Versicherungsmakler Microsoft Access Open-VBA Lösungen Handbuch zur Access-Datenbank Kleine Versicherungsmakler Eine Datenbankentwicklung von Access Garhammer Thomas Garhammer webmaster@access-4u.de EINLEITUNG ZU DIESEM HANDBUCH

Mehr

DocuWare unter Windows 7

DocuWare unter Windows 7 DocuWare unter Windows 7 DocuWare läuft unter dem neuesten Microsoft-Betriebssystem Windows 7 problemlos. Es gibt jedoch einige Besonderheiten bei der Installation und Verwendung von DocuWare, die Sie

Mehr

Installationsanleitung für R

Installationsanleitung für R Installationsanleitung für R R ist eine Programmiersprache und Statistiksoftware zur Analyse von Daten und deren graphischer Darstellung. Um in R zu programmieren, ist zunächst die R- Basissoftware zu

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

Hyper-V Grundlagen der Virtualisierung

Hyper-V Grundlagen der Virtualisierung Grundlagen der Virtualisierung Was ist Virtualisierung? Eine Software-Technik, die mehrere Betriebssysteme gleichzeitig auf dem Rechner unabhängig voneinander betreibt. Eine Software-Technik, die Software

Mehr

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet C++ Grundlagen ++ bedeutet Erweiterung zum Ansi C Standard Hier wird eine Funktion eingeleitet Aufbau: In dieser Datei stehen die Befehle, die gestartet werden, wenn das Programm gestartet wird Int main()

Mehr

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de Das Build Tool Ant Sebastian Mancke, mancke@mancke-software.de Grundlagen Motivation Bei der Übersetzung und Pflege von Software treten viele, gleich bleibende Arbeitsschritte auf. Übersetzen des Codes

Mehr

Tutorium Java Ein Überblick. Helge Janicke

Tutorium Java Ein Überblick. Helge Janicke Tutorium Java Ein Überblick Helge Janicke 26. Oktober 2000 1 VORRAUSSETZUNGEN ZUM PROGRAMMIEREN MIT JAVA. 1 1 Vorraussetzungen zum Programmieren mit Java. Was braucht man, wenn man mit Java programmieren

Mehr

time project Die clevere Zeitbuchhaltung

time project Die clevere Zeitbuchhaltung time project Die clevere Zeitbuchhaltung Anleitung Installation Inhalt 1 Einleitung... 3 2 Die Komponenten von time project... 3 2.1 Der time project Server... 3 2.2 Der time project Client... 3 3 Systemvoraussetzungen...

Mehr

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition In den nachfolgenden Schritten finden Sie beschrieben, wie Sie in der Entwicklungsumgebung Microsoft Visual Studio 2010 eine Projektmappe, ein Projekt und einen ersten Quellcode erstellen, diesen kompilieren,

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Systemvoraussetzungen des Zielsystems. Installationsarten MERKBLATT INSTALLATION JAVA

Systemvoraussetzungen des Zielsystems. Installationsarten MERKBLATT INSTALLATION JAVA Institut für angewandte Qualitätsförderung und Forschung im Gesundheitswesen MERKBLATT INSTALLATION JAVA Dieses Merkblatt beschreibt beispielhaft die Installation von Java auf Client-PCs, Laptops & Servern,

Mehr

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren 1 32- oder 64-bit Windows feststellen In den nachfolgenden Schritten ist es nötig, dass Sie wissen, ob Sie

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

Programmieren was ist das genau?

Programmieren was ist das genau? Programmieren was ist das genau? Programmieren heisst Computerprogramme herstellen (von griechisch programma für Vorschrift). Ein Computerprogramm ist Teil der Software eines Computers. Als Software bezeichnet

Mehr

Computergruppe Heimerdingen Grundkurs. Karlheinz Wanja & Richard Zeitler

Computergruppe Heimerdingen Grundkurs. Karlheinz Wanja & Richard Zeitler Computergruppe Heimerdingen Grundkurs Karlheinz Wanja & Richard Zeitler Grundsatz: Keine Panik!!! Das ist der wichtigste Satz, den man sich am Anfang seiner Computerkarriere immer wieder klar machen muss.

Mehr

Marketing Update. Enabler / ENABLER aqua / Maestro II

Marketing Update. Enabler / ENABLER aqua / Maestro II Marketing Update Enabler / ENABLER aqua / Maestro II Quartal 01/2012 1 Kommentar des Herausgebers Liebe Kunden und Partner, dieser Marketing Update gibt Ihnen einen kurzen Überblick über die aktuell verfügbaren

Mehr

Marketing Update. Enabler / ENABLER aqua / Maestro II

Marketing Update. Enabler / ENABLER aqua / Maestro II Marketing Update Enabler / ENABLER aqua / Maestro II Quartal 01/2013 1 Kommentar des Herausgebers Liebe Kunden und Partner, dieser Marketing Update gibt Ihnen einen kurzen Überblick über die aktuell verfügbaren

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

FAQ: G DATA EU Ransomware Cleaner

FAQ: G DATA EU Ransomware Cleaner FAQ: G DATA EU Ransomware Cleaner Der G DATA EU Ransomware Cleaner kann Ihren Computer auf Screenlocking Schadsoftware überprüfen, auch wenn Sie nicht mehr in der Lage sind sich in Ihren PC einloggen können.

Mehr

Informatik I. Informatik I. 6.1 Programme. 6.2 Programme schreiben. 6.3 Programme starten. 6.4 Programme entwickeln. 6.1 Programme.

Informatik I. Informatik I. 6.1 Programme. 6.2 Programme schreiben. 6.3 Programme starten. 6.4 Programme entwickeln. 6.1 Programme. Informatik I 05. November 2013 6. Python-, kommentieren, starten und entwickeln Informatik I 6. Python-, kommentieren, starten und entwickeln Bernhard Nebel Albert-Ludwigs-Universität Freiburg 05. November

Mehr

Cross Compiler. Entwickeln von Windows Anwendungen unter Linux (und mehr) Wolfgang Dautermann. Chemnitzer Linuxtage 2011 FH JOANNEUM

Cross Compiler. Entwickeln von Windows Anwendungen unter Linux (und mehr) Wolfgang Dautermann. Chemnitzer Linuxtage 2011 FH JOANNEUM Cross Compiler Entwickeln von Windows Anwendungen unter Linux (und mehr) Wolfgang Dautermann FH JOANNEUM Chemnitzer Linuxtage 2011 1 Einleitung 2 Einsatzzwecke 3 Installation des Crosscompilers 4...und

Mehr

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen.

2 USBundLinuxhotplug. 2.1 Eigenschaften von USB. In diesem Kapitel lernen Sie. das USB-Schichtenmodell kennen. 2 USBundLinuxhotplug In diesem Kapitel lernen Sie das USB-Schichtenmodell kennen. die Kernelmodule für USB-Treiber kennen. wie Sie USB-Geräte unter Linux verwenden. dashotplug-system von Linux kennen.

Mehr

Windows 7. Grundkurs kompakt. Peter Wies 1. Ausgabe, 2. Aktualisierung, Januar 2012 K-W7-G

Windows 7. Grundkurs kompakt. Peter Wies 1. Ausgabe, 2. Aktualisierung, Januar 2012 K-W7-G Peter Wies 1. Ausgabe, 2. Aktualisierung, Januar 2012 Windows 7 Grundkurs kompakt K-W7-G Inhalt Zu diesem Buch 4 1 Erste Schritte mit Windows 7 7 1.1 Das Betriebssystem Windows 7...8 1.2 Windows starten...8

Mehr

D i g i t a l l a b o r

D i g i t a l l a b o r Hochschule Karlsruhe Technik und Wirtschaft Fakultät für Informatik und Wirtschaftsinformatik Prof. Dr. A. Ditzinger / Dipl.-Inform. (FH) O. Gniot Prof. Dr. N. Link / Dipl.-Ing. J. Krastel D i g i t a

Mehr

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind Betriebssysteme Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind Umfaßt z.b. auch Compiler, Interpreter und Dienstprogramme

Mehr

Scala & Lift. Ferenc Lajko 04.02.2010

Scala & Lift. Ferenc Lajko 04.02.2010 Scala & Lift Ferenc Lajko 04.02.2010 Gliederung 1. Scala 1.1. Allgemein 1.2. Merkmale 1.3. Unterschiede zu Java 1.4. Code-Beispiel 1.5. Vorteile zu anderen Sprachen 2. Lift 2.1. Allgemein 2.2. Idee 2.3.

Mehr

KURZANLEITUNG CLOUD BLOCK STORAGE

KURZANLEITUNG CLOUD BLOCK STORAGE KURZANLEITUNG CLOUD BLOCK STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung......Seite 03 2. Anlegen eines dauerhaften Block Storage...Seite 04 3. Hinzufügen von Block Storage

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel App Framework vom Intel XDK vertraut. Es wird Schritt für Schritt

Mehr

1 Übersicht / Neue Funktionen... 2. 2 Inhalt der Release CD V3.9... 3. 3 Sprachen... 3. 4 Benutzer Dokumentation... 4. 5 Passende Betriebssysteme...

1 Übersicht / Neue Funktionen... 2. 2 Inhalt der Release CD V3.9... 3. 3 Sprachen... 3. 4 Benutzer Dokumentation... 4. 5 Passende Betriebssysteme... Dokument Historie: Version Datum Bemerkung 1.0 24. November 2014 Dokument erstellt Inhalt 1 Übersicht / Neue Funktionen... 2 2 Inhalt der Release CD V3.9... 3 3 Sprachen... 3 4 Benutzer Dokumentation...

Mehr

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

Hello World in Java. Der Weg zum ersten Java-Programm Vorwort Hello World in Java Der Weg zum ersten Java-Programm Diese Anleitung wurde unter Windows XP verfasst. Grundsätzlich sollte sie auch unter späteren Windows Versionen wie Windows Vista oder Windows

Mehr

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen Um die maximale Sicherheit für das Betriebssystem und Ihre persönlichen Daten zu gewährleisten, können Sie Programme von Drittherstellern

Mehr

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz Einführung in das Microsoft.NET-Framework Programmiersprache C# MEF Das Managed Extensibility Framework André Kunz 21.09.2010 1 In dieser Einführung bekommen Sie einen kurzen Einstieg in das.net-framework

Mehr

Kernel Programmierung unter Linux. Programmierung von Kernelmodulen. Referent Klaus Ruhwinkel

Kernel Programmierung unter Linux. Programmierung von Kernelmodulen. Referent Klaus Ruhwinkel Kernel Programmierung unter Linux Programmierung von Kernelmodulen Referent Klaus Ruhwinkel Das Betriebssystem Aufbau des Betriebssystem: Es besteht aus den Betriebssystemkern und den sonstigen Betriebssystemkomponenten

Mehr

Einführung in PHP. (mit Aufgaben)

Einführung in PHP. (mit Aufgaben) Einführung in PHP (mit Aufgaben) Dynamische Inhalte mit PHP? 2 Aus der Wikipedia (verkürzt): PHP wird auf etwa 244 Millionen Websites eingesetzt (Stand: Januar 2013) und wird auf etwa 80 % aller Websites

Mehr

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung

Mehr

- Technische Beschreibungen MIDOSAXML 1.3.2 INSTALLATIONSANLEITUNG... 1

- Technische Beschreibungen MIDOSAXML 1.3.2 INSTALLATIONSANLEITUNG... 1 Inhalt MIDOSAXML 1.3.2 INSTALLATIONSANLEITUNG... 1 VORAUSSETZUNGEN FÜR DIE INSTALLATION VON MIDOSAXML... 1 INSTALLATION VON MIDOSAXML... 1 Java Installation... 1 Installation des Microsoft XML Parsers...

Mehr

Ausarbeitung zum Vortrag Java Web Start von Adrian Fülöp Fach: Komponentenbasierte Softwareentwicklung WS 06/07 Fachhochschule Osnabrück

Ausarbeitung zum Vortrag Java Web Start von Adrian Fülöp Fach: Komponentenbasierte Softwareentwicklung WS 06/07 Fachhochschule Osnabrück Ausarbeitung zum Vortrag Java Web Start von Adrian Fülöp Fach: Komponentenbasierte Softwareentwicklung WS 06/07 Fachhochschule Osnabrück Adrian Fülöp (297545) - 1 - Inhaltsverzeichnis: 1. Einführung 2.

Mehr

Einführung in COM. 04.04.2006 Seite 1

Einführung in COM. 04.04.2006 Seite 1 Einführung in COM 04.04.2006 Seite 1 Ziele Sie kennen die Funktion der Registry für COM Sie können die Struktur eines COM-Objekts erklären Sie können erklären, wie ein remote-server gestartet wird 04.04.2006

Mehr

Aufbau einer Testumgebung mit VMware Server

Aufbau einer Testumgebung mit VMware Server Aufbau einer Testumgebung mit VMware Server 1. Download des kostenlosen VMware Servers / Registrierung... 2 2. Installation der Software... 2 2.1 VMware Server Windows client package... 3 3. Einrichten

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

Benutzerhandbuch. Neukirchen

Benutzerhandbuch. Neukirchen Benutzerhandbuch Neukirchen August 2015 Kontakt: Kai Hübl Lambertsberg 17 D-34626 Neukirchen kai.huebl@asneg.de Contents 1 Einleitung... 5 1.1 Inhalt... 5 1.2 OPC UA Client Stack... 5 1.3 OPC UA Server

Mehr

SPECTRUM 4.0 Netzwerk-Installation

SPECTRUM 4.0 Netzwerk-Installation SPECTRUM 4.0 Netzwerk-Installation Allgemeines zu SPECTRUM 4.0 - Lieferumfang - Lizenzrechner + CodeMeter-Stick - Programmversion - Einzelkomponenten - Begriffe Basisdaten, Projektverzeichnis 1. Einrichten

Mehr

1 Übersicht / Neue Funktionen... 2. 2 Inhalt der Release CD V3.10... 3. 3 Sprachen... 3. 4 Benutzer Dokumentation... 4

1 Übersicht / Neue Funktionen... 2. 2 Inhalt der Release CD V3.10... 3. 3 Sprachen... 3. 4 Benutzer Dokumentation... 4 Dokument Historie: Version Datum Bemerkung 1.0 26. Januar 2015 Dokument erstellt Inhalt 1 Übersicht / Neue Funktionen... 2 2 Inhalt der Release CD V3.10... 3 3 Sprachen... 3 4 Benutzer Dokumentation...

Mehr

Programmierkurs: Delphi: Einstieg

Programmierkurs: Delphi: Einstieg Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache

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

Persona-SVS e-sync auf Windows Terminal Server

Persona-SVS e-sync auf Windows Terminal Server Persona-SVS e-sync auf Windows Terminal Server 2014 by Fraas Software Engineering GmbH Alle Rechte vorbehalten. Fraas Software Engineering GmbH Sauerlacher Straße 26 82515 Wolfratshausen Germany http://www.fraas.de

Mehr