10. januar 20022 entwicklungsumgebungen unter windows (und unix) was ist eine ide (=integrated...

Post on 06-Apr-2015

105 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

10. Januar 2002 2

Entwicklungsumgebungenunter Windows (und Unix)

• Was ist eine IDE (=Integrated Development Environment)

• Welche Ansprüche stellt man an eine IDE im Hinblick auf Palmprogrammierung

• Welche Schritte sind nötig, um ein Palmprogramm zu entwickeln

• Vorstellen verschiedener IDEs zur Entwicklung von Palm-Applikationen (C/C++, Basic und Java)

• Abschließender Vergleich und Bewertung im Überblick

10. Januar 2002 3

Was ist eine IDE?

• Softwarepaket, das die Entwicklung von Programmen erleichtert

• Besteht meist aus mehreren Komponenten, auf die man über eine gemeinsame Bedienoberfläche zugreifen kann

• Hauptkomponenten:- Editor- Compiler/Linker- Debugger

• Darüber hinaus: Projektmanager, Versionskontrolle, Wizards und Tools

10. Januar 2002 4

Palmprogrammierung: Was ist noch wichtig für eine IDE?

• Einfache Installation, alle Entwicklertools inklusive(SDK, Ressourcecompiler, Emulator, Dokumentation)

• Schnelle Einarbeitungszeit (Tutorials, UserGuide)• Einfaches Bedienkonzept, „intuitive“ Bedienung• Ständige Übersicht über das Projekt

(Projektmanager)• Komfortabler Ressource-Editor (Formulardesigner

mit drag&drop)• Wizards zur Codeerzeugung für

Standardkomponenten (wie Menüs, Buttons, etc.)• Universell für alle palmbasierten Geräte

10. Januar 2002 5

Palmprogrammierung: Was ist noch wichtig für eine IDE?

• Simulation und Debuggen der Palmapplikation• Automatische Koordination der Abhängigkeiten im

Sourcecode und den Ressourcedefinitionen

10. Januar 2002 6

Welche Schritte braucht man, um ein Palmprogramm zu entwickeln

1. Erstellen/Compilieren der Ressourcen (also das UserInterface für die spätere Applikation)

2. Programmieren der Anwendung (unter Berücksichtigung der Ressourcen)

3. Compilieren+Linken PRC-File4. Simulation starten (im Emulator) oder direkt am

Gerät testen und5. Debuggen (Emulator oder direkt am Gerät)6. Fehler beseitigen ;-)7. Programmgröße für das Release optimieren (z.B.

Debug-Informationen weglassen beim Compilieren)

10. Januar 2002 7

IDEs im Test:

• C/C++:- PRC-Tools/PilRC und POSE- Metrowerks CodeWarrior for Palm OS- Visual Form Designer (VFDIDE)

• Basic:- NS Basic/Palm- AppForge

• Java:- Simplicity for Palm OS Platform- JBuilder Handheld Express for PalmOS/ JBuilder

MobileSet

10. Januar 2002 8

C/C++ IDEs

10. Januar 2002 9

C/C++: PRC-Tools/PilRC

• PRC-Tools 2.0 (www.sourceforge.net)• GCC basiert, benötigt CygWin (unter Windows)• Installation umständlich• Reine Commandline-Tools• Direkte Unterstützung durch Palm• PilRC 2.8 (www.ardiri.com)• Ressourcecompiler für Formulardesign• Text-Ressource-Definitionen binäre Ressourcedateien• PilRCUI: graphische Vorschau der Ressourcedefinitionen• RscEdit Betaversion (www.handspring.com)• drag&drop Ressource-Editor

10. Januar 2002 10

Beispiel: Ressourcedefinition#include "D:/PalmDev/VFIDE/Sample1PRCTools20/Counter.h"

FORM ID formID_Counter AT (0 0 160 160)

NOFRAME

NOSAVEBEHIND

USABLE

BEGIN

LABEL "Name" ID lblID1 AT (5 2) USABLE FONT 0

LABEL "Punkte" ID lblID2 AT (110 1) USABLE FONT 0

BUTTON "\001" ID ButtonID_Plus AT (146 140 14 10) USABLE LEFTANCHOR NOFRAME FONT 5

END

ALERT ID alertID_Custom

DEFAULTBUTTON 0

INFORMATION

BEGIN

TITLE "Information"

MESSAGE "Bla Fasel"

BUTTONS "OK"

END

10. Januar 2002 11

PalmOS Emulator (=POSE):

10. Januar 2002 12

POSE

• Aktuelle Version 3.3 (www.palmos.com)• Versionen für Windows, MacOS und Unix• Basiert auf dem 68K-Prozessor• Emuliert mit sog. ROM-Images eine komplette

PalmOS-Umgebung• Zum Testen und Debuggen von Applikationen und

Libraries• Debugschnittstelle für Entwicklungsumgebungen• Synchronisation mit Conduits• TCP/IP und netzwerkfähig

10. Januar 2002 13

C/C++: CodeWarrior for PalmOS

10. Januar 2002 14

C/C++: CodeWarrior for PalmOS

• Aktuell: Version 8.0 (www.metrowerks.com)• Komplette IDE bestehend aus:

- Projektmanager mit Versionskontrolle- Compiler/Linker- Debugger- Drag&Drop Formulardesigner (Palm Constructor) mit

Ressourcecompiler• Läuft auch unter MacOS• Unterstützte Prozessoren: M68328 Dragonball,

M68EZ328 (PalmV/VII), M68VZ328 (Handspring Visor)

• Unterstützt auch 3rd Party SDKs: Symbol, Handspring, Handera, Sony Clié

10. Januar 2002 15

C/C++: CodeWarrior for PalmOS

• Integriert PalmOS SDK Referenz, Companion, etc. in die Hilfe der IDE (direkter Zugriff)

• Projektmanager:- Wizards und Templates zur einfachen Erstellung von

Projekten, Application Wizards, Library Wizards- Koordination der Abhängigkeiten zwischen Code-

Dateien, Libraries, Modulen und Ressource-Definitionen- Codeversion Control, zentrale Verwaltung aller Dateien

• Compiler:- ANSI C und ANSI/ISO C++ Compiler- Simple-/Standard-/Expanded-Mode

10. Januar 2002 16

C/C++: CodeWarrior for PalmOS

• Debugger:- Voll integriert, direktes Debuggen am Gerät (auch via

USB) bzw. am Emulator (POSE)- Zugriff auf Sourcecode und 68K-Assemblercode- Debuggt auch gesharte Libraries

• Weitere Merkmale:- Springboardprogrammierung direkt im CodeWarrior

(Handspring ROM Builder)- Einfache Installation- Import von GCC-Projekten (PRC-Tools) und

Wiederverwendung von PilRC Ressourcen

10. Januar 2002 17

10. Januar 2002 18

10. Januar 2002 19

C/C++: Visual Form Designer

10. Januar 2002 20

C/C++: Visual Form Designer

• Aktuell: Version 4.2.5 (www.vfdide.com)• Entwickelt von einer Hamburger Softwarefirma• IDE wird nicht komplett installiert• Benötigt CygWin, PRC-Tools und PilRC (nicht

mitgeliefert)• Installation umständlich, aber mit beiliegender

Anleitung kein Problem• Einfache Bedienung („intuitiv“)• Hauptkomponente: Der Formulardesigner

(drag&drop), sehr komfortabel• Ideal für die schnelle Entwicklung formularbasierter

Applikationen

10. Januar 2002 21

10. Januar 2002 22

Basic IDEs

10. Januar 2002 23

Basic: NSBasic/Palm

10. Januar 2002 24

Basic: NSBasic/Palm

• Version 2.0 (www.nsbasic.com)• NS = „Nice & Smart“• Vollständige IDE• Schnelle Einarbeitungszeit (gutes Tutorial)• Formulardesigner komfortabel mit drag&drop• Unterstützt Standard-UI-Elemente (Forms, Menus,

Buttons, Scrollbars, ...)• Nach CodeWarrior am meisten benutzte IDE• Arbeitet mit POSE zusammen (Debuggen)

10. Januar 2002 25

Basic: NSBasic/Palm

• Ausführungsgeschwindigkeit der Palmprogramme mäßig, weil NSBasic-Runtime-Library auf dem Palm erforderlich wenig geeignet für Programme, die viel berechnen

• Mit gedrucktem (!) Handbuch

10. Januar 2002 26

Basic: AppForge (PlugIn)

• Version 2.0 (www.appforge.com)• Keine eigenständige IDE• Integriert sich in MS Visual Basic, setzt Visual Studio

6.0 voraus• Daher schnelle Einarbeitungszeit, wenn im Umgang

mit der Visual Studio IDE schon routiniert• Auch zur Entwicklung von Programmen für PocketPC

geeignet• Integriertes Debugging• Anbindung an ODBC Datenbanken

10. Januar 2002 27

Java IDEs

10. Januar 2002 28

Java: Simplicity for PalmOS

• Version 2.0 (www.datarepresentations.com)• Vollständige IDE• Versionen für Windows, Linux und alle Unix-Derivate• Komfortabler drag&drop Formulardesigner• Basiert auf IBMs J9 Virtual Machine• Wizards zur Erstellung von Projekten und Code• Ausführungsgeschwindigkeit der Palmprogramme

abhängig von der VM auf dem Palm• Emulator integriert

10. Januar 2002 29

10. Januar 2002 30

Java: JBuilder MobileSet (PlugIn)

• Veraltete Programmbezeichnung „JBuilder Handheld Express for PalmOS, wurde ersetzt durch JBuilder MobileSet (www.borland.com/jbuilder/mobileset)

• Keine eigenständige IDE• Integriert sich in JBuilder5/6• Basiert auf Suns J2ME VM (Java2 MicroEdition für

mobile Geräte)• Universell einsetzbar nicht nur für Palms sondern

auch Handys etc.

10. Januar 2002 31

Java: JBuilder MobileSet (PlugIn)

• Entwicklung von sog. MIDlets• Visueller Designer für schnelle Formularerstellung• Unterstützt MIDP UI-Elemente

(also UI-Elemente der J9)• Integrierte Wizards

10. Januar 2002 32

Vergleich

10. Januar 2002 33

PRC-Tools,PilRC

Codewarrior VFD-IDE NSBasic/Palm

Simplicity for PalmOS

OS: Win/Unix Win/Mac Win Win Win/Unix

Sprache: C/C++ C/C++ C/C++ Basic Java

Installation: anspruchsvoll einfach anspruchsvoll einfach einfach

Einarbeitungszeit:

hoch hoch mittel gering gering

Bedienung: gewöhnungs-bedürftig

mittel einfach einfach einfach

Flexibilität: hoch sehr hoch mittel mittel mittel

Ressource-editor:

textbasiert(oder RscEdit)

Palm Constructor

built-in drag&drop

built-indrag&drop

built-indrag&drop

Emulator: POSE(extern)

POSE(extern)

POSE(extern)

POSE(extern)

integriert(proprietär)

Debugger: Extern: von SDK-Tools

built-in built-in built-in built-in

Preis: kostenlos 619 € 25 - 55 $ 149,95 $ 295 $

10. Januar 2002 34

Abschließende Bemerkungen

• spezielle Studentenversionen meist bei allen Herstellern erhältlich (z.B. CodeWarrior für 119$)

• unter anderem auch getestet:- Falch.net Developer Studio 2.5: Vergleichbar mit

den bereits vorgestellten C/C++ IDEs. Stürzte im Test andauernd ab.

- IBM Visual Age ME for Java: auch J9-basierend, sehr umständlich in der Bedienung, nicht speziell für PalmOS (für diverse embedded devices geeignet)

10. Januar 2002 35

Linksammlung

• www.metrowerks.com• www.vfdide.com• www.nsbasic.com• www.appforge.com• www.datarepresentations.com• www.borland.com/jbuilder/mobileset• www.palmos.com/dev/tech/tools• www.palmos.com/dev/tech/tools/emulator/• www.sourceforge.net• www.ardiri.com• www.handspring.com

10. Januar 2002 36

Jetzt noch eine kleine Demonstration einer IDE...

top related