Tornar a portada

Dactil.info

Palm OS

Personal

 

18/Abril/2006

Crear aplicacions PalmOS: Guia rāpida del que necessitem

Fa un dies vaig rebre un correu d'un lector de CosesPalm on em preguntava específicament per la possibilitat d'utilitzar Java en un Palm i especialment la possibilitat de crear aplicacions Java per Palm. Doncs bé he decidit ampliar una mica més la resposta que li he donat (més enllà del cas concret de Java) i crear aquesta breu guia de les opcions que hi ha disponibles alhora de crear un programa per PalmOS.

És important destacar que malgrat que PalmOS és un producte comercial, ha facilitat sempre força informació i recursos als desenvolupadors, a diferencia d'altres sistemes com Symbian o WindowsMobile que et lliguen molt a dependre del seus respectius fabricants.

Això ha convertit PalmOS és un dels sistemes operatius, per dispositius mòbils, més agraït alhora de programar, ja que disposem de moltes opcions i recursos (alguns de codi obert) que ens permeten escollir l'eina que s'adapta millor a les nostres necessitats.

Per altre banda des de fa uns mesos PalmOS és propietat d'ACCESS i aquesta ja van anunciar que la propera versió del sistema no seria PalmOS sinó ALP. Un nou sistema basat amb Linux les GTK i SQLite (entre altres característiques) però que mantindria compatibilitat (mitjançant un emulador) amb totes les aplicacions PalmOS actuals. Això és important perquè ara per ara PalmOS encara és la plataforma que te més aplicacions disponibles (oficialment prop d'unes 25.000), per tant avui en dia podem continuar pensant en crear programes específics per PalmOS que funcionaran en l'actual base d'usuaris d'aparells Palm i que en el futur continuaran funcionant en els nous aparells que utilitzin ALP.

Fet aquest apunt, anem directes al que ens cal tenir i conèixer per començar a crear aplicacions per PalmOS.

Escollir un enfoc
Podem crear aplicacions per PalmOS utilitzant en el nostre ordinador habitual o utilitzant el nostre Palm, ja que hi ha llenguatges i compiladors que funcionen directament en el Palm, és el que s'anomena desenvolupament Onboard.

Si optem per l'opció OnBoard ens serà útil un teclat per Palm, ja que és molt més còmode escriure en un teclat físic de tecles, que en un de virtual. Per altre banda és l'opció que ens permet anar amunt i avall amb el nostre entorn de desenvolupament.

Les eines més habituals en la programació OnBoard son:

  • ppCompiler, un compilador de pascal
  • BIRD, un editor de recursos (Menus, icones, dialegs)
  • Piaf, un editor de textos per programar. Amb reconeixement de sintaxis d Pascal i iziBasic
  • iziBasic, un pseudo-compilador de Basic. (pseudo perquè de fet fa una pseudo compilació i enganxa una runtime a l'executable)
  • onBoard C, tot un entorn de programació en C (inclou Editor, i compilador)

Si optem per desenvolupar tradicionalment en l'ordinador de sobretaula, disposem de moltes més eines, les clàssiques són:

  • PRC-TOOLS, un framework per Linux i Windows (amb Cygwin) per crear apliacions PalmOS amb C/C++
  • PODS, la suite oficial de PalmOS (basada en Eclipse) per crear aplicacions C/C++
  • CodeWarrior per Palm OS, un IDE per C/C++ habitual en entorns MacOS
  • NS-BASIC, un IDE i un BASIC modernitzat
  • HB++, un altre IDE i BASIC modernitzat
  • Superwaba, un framework i maquina virtual per crear aplicacions utilitzant Java
  • PilRC, un compilador de recursos per Linux i Windows

Qualsevol d'aquestes eines ens permeten crear aplicacions que podem distribuir (i per tant comercialitzar) a altres usuaris d'aparells PalmOS.

Si el que busquem és un llenguatge script per gestionar aspectes concrets del nostre Palm o simplement divertint-nos programant, podem escollir entre:


L'emulador i el simulador

Ja fa temps PalmSource va facilitar al desenvolupadors, un emulador de Palm (que funciona en Linux i Windows) i un simulador (que funciona només en Windows) que ens permeten provar les nostres aplicacions abans de pasar-les definitivament al Palm. De fet hi ha qui utilitza el emulador o el simulador per programar amb eines OnBoard però amb lo comoditat (i teclat !) d'un ordinador de sobretaula.

En esencia l'emulador (que permet imitar dispositius Palm que utilitzin fins la versió 4 de PalmOS) es comporta exactament com el nostre aparell Palm, com a curiositat permeteu-me que us expliqui que fa anys els meus primers passos en la programació PalmOS van ser gracies al emulador doncs en aquells moments jo no tenia ni tant sols un Palm. Només va caldre instal.lar-me l'emulador en el meu ordinador i eines per desenvolupar.

El simulador ens permet el mateix però per treballar amb el PalmOS 5 i per tant provar característiques d'aparells Palm més nous.

Tant l'emulador com el simulador son gratuïts, i probablement son la base del que hi haurà dins el nou ALP. EN definitiva un Palm virtual dins el nostre ordinador de sobretaula.


Pensar en events
La programació per PalmOS és una programació orientada a events, ja que treballem directament amb una interfície d'usuari i aquesta es comunica amb el nostre programa, mitjançant events.

L'enfoc en el tractament varia en funció del llenguatge/entorn que escolliu però la majoria ho tenen en compte ja que es la base de PalmOS. L'excepció son alguns llenguatges scripts (com REXX i Smallbasic) que pensen amb mentalitat de consola del sistema.

L'API del sistema
PalmOS inclou tota una serie de funcions pròpies a les que podem accedir, es bo que el llenguatge/entorn que escollim ens hi doni un accés més o menys senzill ja que això en garanteix un control absolut i a la llarga un accés a totes les funcionalitats del Palm. Per exemple NSBasic incorpora diferents llibreries que ens garanteixen de manera més còmode l'ús d'aquesta API però també incorpora funcions per accedir-hi directament per si ens cal quelcom que no esta en alguna de les seves llibreries.

En C/C++ hi accedim directament, però en iziBasic (per posar un altre exemple) no hi tenim accés directe i depenem de les funcionalitats que iziBasic incorpora (que val a dir que son forces)


Bases de dades
PalmOS incorpora de forma nativa un sistema de base de dades, res espectacular, però eficaç pel tipus d'us que ha de tenir un Palm. Son els fitxers PDB.

En funció de l'eina escollida els haurem de manipular directament amb funcions de la API de PalmOS, com és el cas de C/C++ o utilitzar entorns com NS Basic que ens permeten fer-ho d'una manera més senzilla ja que ens faciliten funcions i objectes que simplifiquen part de la feina.


Per més informació:
Si voleu conèixer més eines i llenguatges disponibles, podeu mirar aquí i aquí.
Tambè us agraire que deixeu comentaris si voleu ampliar/comentar la informació, o teniu més dubtes.
Pel cas concret de Java i la maquina virtual, llegiu aquest article de La PDA de tungsteno on s'explica com instal.lar la maquina virtual Java i el navegador Opera Mini.

Programar per PalmOS és viable, relativament senzill (si ja sabem programar ;-) ) i molt divertit. Si la cosa va endavant us aconsello que us registreu com desenvolupadors a la web de PalmSource (hi ha una modalitat gratuïta).

I sobretot, si feu alguna aplicació, de fabricació autoctona i en català, feu-m'ho saber aqui!.

Publicat per daniel


The maximum number of hyperlinks was exceeded. Stop spamming.

Comentaris

http://0924aceb2908ef105c4ce3a0b016a811-.. 0924aceb2908ef105c4ce3a0b016a811 [url http://0924aceb2908ef105c4ce3a0b016a811-..] [url http://0924aceb2908ef105c4ce3a0b016a811-..]0924aceb2908ef105c4ce3a0b016a811[/url] [u http://0924aceb2908ef105c4ce3a0b016a811-..] 853a87535c98082cb19ab4163f6982f3

Kenyon (Email) (URL) - 20 Setembre '07 - 21:10



El teu comentari:

  
Emoticons

Nota:Nomes s'admeten les etiquetes HTML <b> i <i>.
Per fer un vincle nomes cal escriure l'adreįa (URL) o l'e-mail

Contesta aquesta pregunta per poder enviar el comentari (anti-spam):