![Page 1: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/1.jpg)
![Page 2: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/2.jpg)
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
![Page 3: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/3.jpg)
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
![Page 4: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/4.jpg)
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
![Page 5: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/5.jpg)
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
![Page 6: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/6.jpg)
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)
![Page 7: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/7.jpg)
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
![Page 8: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/8.jpg)
10. Januar 2002 8
C/C++ IDEs
![Page 9: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/9.jpg)
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
![Page 10: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/10.jpg)
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
![Page 11: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/11.jpg)
10. Januar 2002 11
PalmOS Emulator (=POSE):
![Page 12: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/12.jpg)
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
![Page 13: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/13.jpg)
10. Januar 2002 13
C/C++: CodeWarrior for PalmOS
![Page 14: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/14.jpg)
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é
![Page 15: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/15.jpg)
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
![Page 16: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/16.jpg)
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
![Page 17: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/17.jpg)
10. Januar 2002 17
![Page 18: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/18.jpg)
10. Januar 2002 18
![Page 19: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/19.jpg)
10. Januar 2002 19
C/C++: Visual Form Designer
![Page 20: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/20.jpg)
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
![Page 21: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/21.jpg)
10. Januar 2002 21
![Page 22: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/22.jpg)
10. Januar 2002 22
Basic IDEs
![Page 23: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/23.jpg)
10. Januar 2002 23
Basic: NSBasic/Palm
![Page 24: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/24.jpg)
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)
![Page 25: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/25.jpg)
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
![Page 26: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/26.jpg)
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
![Page 27: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/27.jpg)
10. Januar 2002 27
Java IDEs
![Page 28: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/28.jpg)
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
![Page 29: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/29.jpg)
10. Januar 2002 29
![Page 30: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/30.jpg)
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.
![Page 31: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/31.jpg)
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
![Page 32: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/32.jpg)
10. Januar 2002 32
Vergleich
![Page 33: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/33.jpg)
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 $
![Page 34: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/34.jpg)
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)
![Page 35: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/35.jpg)
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
![Page 36: 10. Januar 20022 Entwicklungsumgebungen unter Windows (und Unix) Was ist eine IDE (=Integrated Development Environment) Welche Ansprüche stellt man an](https://reader036.vdocuments.mx/reader036/viewer/2022062512/55204d8249795902118d5045/html5/thumbnails/36.jpg)
10. Januar 2002 36
Jetzt noch eine kleine Demonstration einer IDE...