Palmclub logo  

Home | Nieuws | Reviews | FAQs | Tips | Shop | Channel Navigator | Nieuwsbrief | Forums

Review: AppForge

Door Johan van den Brande Klik op de plaatjes voor een vergrote versie
Publicatiedatum: 23 september 2001

Het hoeft allemaal zo moeilijk niet te zijn, zoals AppForge bewijst met hun gelijknamige product.

Visual Basic

In tegenstelling tot soortgelijke ontwikkelpaketten voor de Palm, beschikt AppForge niet over een eigen IDE (Integrated Development Environment - geïntegreerde ontwikkel omgeving). AppForge integreert volledig in Visual Basic 6 van Microsoft als een soort van plug-in. Na de installatie van AppForge vind je op de componentenbalk nieuwe componenten specifiek voor AppForge, 'ingots' genoemd. Een extra menu-item herbergt de functionaliteit die je nodig hebt om een AppForge applicatie te compileren en door te sturen naar je Palm. Indien je een beetje ervaring hebt met Visual Basic, ben je in een oogwenk bezig met het ontwikkelen van Palm applicaties. In plaats van Visual Basic componenten gebruik je nu ingots. De code die je schrijft is gewoon Visual Basic.

Wanneer je een AppForge project aanmaakt in Visual Basic, krijg je een piepklein venstertje van 160 bij 160 punten te zien waarin je de user interface aanmaakt. Hoewel deze grootte overeen komt met deze van een standaard Palm scherm, is het wel vervelend om alle componenten mooi te plaatsen op een monitor met een hoge resolutie.

Je kan een AppForge applicatie testen vanuit Visual Basic. Als je deze applicatie onder windows draait, verschijnt er een borderless venster van 160 bij 160 punten. Geen gedoe meer met het laden van je applicatie in POSE, de palm emulator. Nochtans moet je hiervoor conditionele commando's opnemen in je broncode. Speciale AppForge commando's (pramga's) worden gebruikt om te weten welk stuk code er moet worden opgenomen wanneer je compileert voor windows of palm.

Booster

Wanneer je een applicatie compileert met AppForge, wordt er een Palm applicatie aangemaakt. Deze applicatie kan niet stand-alone draaien, maar heeft de hulp nodig van een zogenaamde run-time omgeving. Deze run-time omgeving wordt 'Booster' genoemd, en moet je naast de eigenlijke applicatie ook op je Palm installeren. Booster is de Palm tegenhanger van de VB runtime dll voor Windows. Het voordeel is dat elke AppForge applicatie gebruik maakt van dezelfde 'Booster'. Gelukkig maar, want 'Booster' is 340Kb groot ( 1/6 van je geheugen op een 2Mb Palm). De kleinste applicaties die je in AppForge maakt zijn ongeveer 5Kb groot. Hoe complexer een applicatie, hoe groter de resulterende PRC file, natuurlijk.

Het aanmaken van een AppForge applicatie met ingebouwde booster zit er voorlopig niet in, maar is niet echt een nadeel want Booster is gratis te verspreiden zonder dat je een AppForge licentie nodig hebt. Booster werkt op PalmOS organisers met versie 3.1 van het Operating System of hoger.

Drie versies

AppForge wordt geleverd in drie versies:
  • Personal Edition
  • Standard Edition
  • Professional Edition

Het verschil zit hem in de meegeleverde ingots ( componenten ) en connectiviteit. Zo heeft de Personal Edition geen database en internet mogelijkheden. Database synchronisatie wordt geïntroduceerd in de Standard edition, tesamen met tools om databases, images en movies te converteren naar Palm formaat. De Professional Edition gaat zelfs nog verder en heeft support voor Internet connectiviteit, barcode scanners en de mogelijkheid om samen te werken met andere palm applicaties.

Ingots alom

Het pallet aan componenten (ingots) waaruit je kan kiezen is vrij uitgebreid. Naast de standaard 'Label', 'Listbox', 'Button', ... vinden we ook enkele speciale ingots terug zoals de FilmStrip, Tone, GraphicButton, Serial, Movie, Signature Capture en Grid.

De FilmStrip en Movie ingots laten je toe om kleine stukjes animatie op te nemen in je applicatie. Ze zijn niet bedacht om volledige films te integreren, hoewel ze wel zorgen voor een verfrissende visuele ervaring.

Met de Tone ingot kan op een eenvoudige manier geluid worden geproduceerd.

De Signature Capture ingot laat je toe om een gebruiker van je applicatie iets te ondertekenen, bijvoorbeeld een bestelling wanneer de Palm wordt gebruikt als werkinstrument bij een koerierdienst. Hierbij moet ik wel opmerken dat er geen omzetter bestaat om deze handtekening te converteren in een gif of jpeg plaatje.

Een van de betere ingots is zeker de Grid ingot. Deze laat je toe om tekst of graphics te tonen in een tabel vorm. De tabel kan een titel bevatten, je kan ook de kleuren (grijswaarden), alignering en borders instellen. Dit laat je toe om op een eenvoudige wijze tabellen te gebruiken in je applicatie, zoals we die kennen van o.a. de standaard palmapplicatie "todo".

De ingots zijn wel doordacht en hebben op minstens 1 vlak een goed punt voor op de standaard PalmOS interface elementen. Naast de eigenlijke tekst in een dropdown list, tabel of ander element, kan je ook nog een unieke sleutelwaarde meegeven. Deze kan je dan rechstreeks als sleutel in een database gebruiken. Normaal moet je zelf nog deze link leggen door bijvoorbeeld een array bij te houden die de link legt tussen index in de dropdown lijst en de unieke sleutel in de database. AppForge voegt met deze "tagging", zoals zij het noemen, best wel een handige feature toe.

Geen standaard Palm Look&Feel

Het eerste document dat ik las, wanneer ik besloten had me gaan toe te leggen op Palm development, was de 'Palm OS Companion'. Bijna heel het document praat over het belang van de gebruikers interface en de gebruiksvriendelijkheid van je applicatie. De originele bedenkers van het Palm OS hebben veel moeite gestoken in het creëeren van een interface die juist het evenwicht vindt tussen aantrekkelijkheid en gebruiksvriendeljkheid. Getuige hiervan zijn de prachtige applicaties die standaard in een Palm aanwezig zijn. Het is dan ook spijtig dat AppForge dit volledig overboord smijt en de ontwikkelaar verplicht om een eigen look&feel te creëeren. Wil je de standaard interface van een Palm applicatie gebruiken, dan zal je deze zelf moeten 'natekenen' met lijnen, rechthoeken en labels. Dit zorgt alleen maar voor verwarring bij de gebruikers, die weeral eens een andere gebruikersinterface moeten leren. Een ander nadeel hiervan is de snelheid waarmee je applicatie zal draaien. Het PalmOS stelt speciaal geoptimaliseerde routines in de PalmOS API ter beschikking voor het tekenen en onderhouden van user interface elementen, iets waarvan AppForge geen gebruik maakt. Als ontwikkelaar zou je de keuze moeten krijgen of je zelf gaat instaan voor de gebruikers interface, of dat je gebruik maakt van het PalmOS.

Databases en Synchronisatie: de universele conduit

Het ontwikkelen van een Palm applicatie is slechts de helft van het verhaal. Wat ben je met een electronisch enquete formulier wanneer je de resultaten niet automatisch in een centrale databank kan krijgen? Ook hier hebben de mensen van AppForge aan gedacht. De door hun bedachte universele conduit maakt het mogelijk om tijdens het synchroniseren informatie van en naar je Palm uit te wisselen met een database. Elke database die ODBC ondersteunt komt hiervoor in aanmerking. Er wordt zelfs een handig installatie tooltje meegeleverd om de uiteindelijke applicatie, inclusief universele conduit, te gaan distribueren naar je klanten. Deze handigheid wordt meegeleverd vanaf de Standard Edition.

Internet

Wireless is de toekomst, althans dat wordt beweerd. Ook de Palm evolueert mee, dat zien we bijvoorbeeld aan de Mobile Internet Kit die je kan kopen voor je Palm organizer. De Professional Edition van AppForge komt met een INetHTTP ingot die je toelaat om met je geconnecteerde Palm de inhoud van een URL op te vragen. Hierdoor kan je op vrij eenvoudige wijze wireless mogelijkheden in je applicatie inbouwen. Het voorbeeldje dat bij AppForge bijgeleverd wordt, een online quote viewer, illustreert dit mooi. Bij yahoo.com heb je de mogelijkheid om via het web stockquotes op te vragen in ander formaat dan HTML. Je krijgt gewoon een lijntje tekst met de waarden gescheiden door een komma terug als je surft naar volgende link: http://quote.yahoo.com/download/quotes.csv?format=sl&ext=.csv&symbols=PALM Berustend op dit principe kan je allerhande informatie draadloos gaan uitwisselen met een centraal server systeem.

Bibliotheken en uitbreidbaarheid

Standaard komt AppForge met enkele bibliotheken (libraries), die je extra functionaliteit bieden. We vinden onder andere bibliotheken voor het aanspreken van Palm Databases ( PDB's ), extra wiskundige functies ( random functie ) en een tweetal helper bibliotheken die je informatie over de Palm organiser geven waarop de applicatie draait. De Professional Edition komt daarboven nog met een extra bibliotheek die je toelaat om met andere applicaties op je handheld samen te werken.

Wat je wel niet kan doen is het aanroepen van standaard shared libries, zoals bv MathLib, een veel gebruikte free-ware bibliotheek voor complexe wiskundige berekeningen. Wat je wel kan doen is zelf AppForge bibliotheken gaan ontwikkelen als je kennis hebt van de taal C, maar deze zijn dan enkel te gebruiken door AppForge applicaties.

Besluit

AppForge is een professioneel ontwikkelplatform voor de Palm organiser. Heb je reeds kennis in huis van Visual Basic en wil je niet investeren in het aanleren van de Palm SDK tesamen met een taal zoals C of C++, dan is AppForge zeker een goed alternatief. De ontwikkelde applicaties missen wel de echte Palm look&feel maar dit wordt ruimschoots goedgemaakt door de vele features die dit product tot onzer beschikking stelt.

Pluspunten:

  • Universal conduit
  • INet Library support.
  • Mogelijkheid tot runnen van de applicatie op het windows platform, geen POSE nodig.
  • Als je Visual Basic kent, kan je Palm applicaties ontwikkelen.

Verbeterbaar:

  • Geen standaard Palm Widgets.
  • Booster is 340Kb groot
  • Geen mogelijkheid tot samenvoegen van applicatie en Booster in één file.

Systeem vereisten:

Ontwikkel systeem
  • Windows 95/98/NT/2000
  • Microsoft Visual Basic 6.0, Service Pack 4
  • 32Mb RAM
  • 20Mb Harde schijf ruimte

AppForge Booster run-time omgeving

  • PalmOS organiser met Palm OS versie 3.1 of hoger.

(Symbol devices moeten Palm OS versie 3.5 of hoger bevatten indien ze gebruik maken van de AppForge Barcode Scanner Ingot)

Prijs politiek:

  • $99 (109,44 euro) voor de Personal Edition
  • $299 (330.53 euro) voor de Standard Edition
  • $695 (768.30 euro) voor de Professional Edition

AppForge gegevens:

Andere links:

Vragen, opmerkingen? Discussieer mee in het Palmclub-forum!

Relevante links

Als je dit een leuk review vond, ben je misschien ook geïnteresseerd in:

Vragen, opmerkingen of discussie?

Via deze thread in het forum

Home | Nieuws | Reviews | Tips | Shop | Channel Navigator | Nieuwsbrief | Forums

© Copyright Nederlandse Palmclub Stichting   Over deze site

iCulture | Alles over Google Android