|
|
Overview of BASIC development tools for Palm OS |
|
|
Panorama des outils de développement en BASIC sur Palm OS - Posté le 02/10/02
|
Après le panorama des langages Pascal, poursuivons notre tour d'horizon des langages de développement sur Palm OS avec ceux qui utilisent le langage BASIC, représenté par 5 outils de développement : 2 compilateurs et 3 interpréteurs. Nous mettrons le focus sur les 3 interpréteurs dans cet article.
La "clientèle" visée est ici clairement l'amateur qui cherche à évaluer rapidement des algorithmes originaux, voire le débutant en programmation qui souhaite se lancer de manière simple et conviviale dans la découverte de l'écriture de petits programmes.
BREVE PRESENTATION DU BASIC
Le langage de programmation BASIC a été développé en 1964 par les professeurs John G. Kemeny et Thomas Kurtz au Dartmouth College. L'objectif était de permettre à des élèves non scientifiques d'aborder de façon simple la programmation informatique. L'acronyme "BASIC" signifie d'ailleurs "Beginner's All-purpose Symbolic Instruction Code".
2 COMPILATEURS BASIC SUR PALM OS
Il existe 2 compilateurs BASIC pour Palm que je ne vais pas traiter dans cet article parce que ce sont des environnements de développement sophistiqués et chers. Du coup, je trouve qu'ils s'éloignent beaucoup de la philosophie initiale du BASIC.
Néanmoins, pour ceux qu'intéresse le développement typé professionnel en BASIC, les voici brièvement présentés :- AppForge
- Site officiel
- Coût exorbitant de $899.00 !
- Nécessite Microsoft Visual Basic, AppForge étant en fait une extension à Visual Basic qui permet de développer des applications pour Palm OS, Pocket PC et Symbian OS
- NS Basic
- Site officiel
- Coût de $149.95
- Environnement de développement intégré qui nécessite un runtime sur le Palm pour faire fonctionner les applications développées avec NS Basic
3 INTERPRETEURS BASIC SUR PALM OS
Le BASIC est représenté par 3 interpréteurs sur la plateforme Palm OS avec des caractéristiques très proches qui permettront au programmeur "en formation" de se lancer avec sérénité dans le développement sous Palm OS.
Ces interpréteurs BASIC ont été très peu abordés sur PeekPocket, généralement plus tourné vers les programmeurs plus "chevronnés"... mais il ne faut pas oublier que nous avons tous commencé un jour à programmer et que, bien souvent, le BASIC fut un passage très formateur, souvent même sur les Pocket Computers, ancêtres des PDA actuels.
Présentons les donc :- HotPaw Basic
- SmallBASIC
- picoBASIC
CARACTERISTIQUES COMMUNES DES 3 INTERPRETEURS BASIC
Nous l'avons dit, ces 3 interpréteurs sont très proches, parce que simples, ce qui est d'ailleurs tout à fait dans l'esprit du BASIC. Voici donc leurs caractéristiques communes :- langage interprété : les programmes écrits sont ensuite interprétés lors de leur exécution. Ceci signifie qu'à la différence d'un langage compilé il n'est pas possible de créer des applications autonomes (il faudra utiliser l'interpréteur pour exécuter le programme) et que les programmes sont relativement lents à l'exécution.
Les résultats du benchmark normalisé effectué sur PalmPilot Software Development - Alternatives to C sont très évocateurs :- 1er SmallBASIC en 1.41 seconde
- 2ème HotPaw Basic en 1.59 seconde
- Benchmark pas effectué pour picoBASIC
Ceci les place très loin des compilateurs Pascal qui tenaient en 0.0054 ou 0.00743 seconde ! Notons aussi que les codes sources sont alors forcément ouverts à la lecture des personnes à qui vous les distribuerez (avec une possibilité de contournement pour HOTPAW Basic).
- interpréteur embarqué : ces 3 outils sont embarqués directement sur le Palm et on peut donc les utiliser dans une vraie situation de nomadisme, pour des calculs complexes, des simulations, des tests et aussi pour des applications à caractère ludique. La contrepartie est que, à l'exception de SmallBASIC (voir ci-dessous), le développement rapide sur PC n'est pas possible sauf à travailler dans l'émulateur POSE.
- code simple : dans son introduction picoBASIC dit ceci (en Anglais... je vous propose ce petit exercice sympathique de traduction !) qui résume bien ce point : "this language is a tool for the end user. The same person who uses the Calendar, the Notepad, and the To Do list can use picoBASIC. It can be used to quickly create solutions to problems and needs of a special nature"
- pas d'appel aux API Palm OS : ceci signifie que l'on ne bénéficie pour aucun de ces 3 outils de développement de la richesse des fonctions fournies par Palm OS. C'est donc la richesse des fonctions rajoutées au langage BASIC de base dans chacun d'eux qui les différencie... ce que nous allons voir maintenant.
HOTPAW Basic, le développement shareware le plus riche
Le développeur de HOTPAW Basic n'en est pas à son coup d'essai. 16 ans d'expérience sur les développements MacOS et Amiga, 12 ans sur le Basic. Il fut aussi le créateur de cbasPad, ancêtre maintenant gratuit de HOTPAW Basic qui tournait sous Palm OS 1 (pour les Palm 1000 et 5000) et ses possibilités limitées.
HOTPAW Basic est le seul des 3 interpréteurs, avec un coût de $18.95, à être payant. C'est aussi celui qui est le plus riche fonctionnellement (ce qui justifie son coût) :- BASIC structuré, sans numérotation de ligne
- écriture des programmes dans MemoPad
- création de forms customisés (ouh le mauvais anglicisme !) avec les contrôles standards de Palm OS (boutons, cases à cocher, listes...) ce qui permet de développer des applications vraiment dans l'esprit du Palm
- tout un ensemble d'extensions judicieuses : son, graphisme, couleur, accès à des bases de données externes (JFile, HandDBase), accès au NotePad et au format DOC, programmation de ToDo et DateBook, gestion des ports série et infrarouge, etc... bref, il s'agit d'un bien bel accès simplifié à la programmation de tout un ensemble de ressources, ce qui distingue réellement HOTPAW Basic de ses concurrents
- HOTPAW Basic bénéficie d'une large communauté d'adeptes, donc de nombreux programmes exemples et extensions (dont un éditeur de ressources) et des livres se basent même sur cet outil pour leurs démonstrations
- possibilité de créer des "applets", exécutables PRC visibles depuis le Launcher Palm et camouflant le code source; HOTPAW Basic doit quand-même être présent sur le Palm pour interpréter le programme
SmallBASIC, le développement gratuit pour amateurs
SmallBASIC est un développement du mondre libre (licence GPL) initié par un sympathique développeur Grec, donc gratuit et dont le code source peut être modifié par quiconque, ce qui est gage d'évolutivité. Ses caractéristiques en font un outil de développement BASIC déjà évolué :- BASIC structuré, sans numérotation de ligne
- éditeur intégré, complet et fonctionnel; on a du coup la bonne impression de travailler dans un mini environnement de développement intégré, et ceci d'autant plus qu'il a une aide intégrée bien pratique
- moins riche que HOTPAW Basic, mais néanmoins équipé d'un BASIC étendu riche, dans SmallBASIC le rendu se fait sur un écran vierge avec de belles restitutions graphiques, mais pas de boutons, listes déroulantes et autres contrôles classiques
- il est très intéressant de noter qu'il existe des versions de SmallBASIC portées sur DOS, Windows et Linux et les programmes BASIC créés sont portables d'une plateforme à l'autre; au delà de contourner la limite de devoir travailler exclusivement sur le Palm ou l'émulateur POSE, on se trouve donc avec un outil de développement multi-plateformes riche de possibilités
picoBASIC, le développement gratuit pour débutants
picoBASIC est gratuit, c'est aussi le plus petit des 3 outils étudiés ici. On peut le résumer à un portage sous Palm simplifié de l'antique BASIC ou du GW-BASIC du DOS. Ses fonctionalités sont alors peu étendues, mais largement suffisantes pour se lancer dans la programmation :- BASIC originel, avec lignes numérotées; l'exécution est alors vraiment séquentielle
- éditeur de type console comme sur les anciens BASIC, avec interprétation de commandes RUN, LIST, NEW, LOAD "filename", etc... c'est très simple, basique même (sans vilain jeu de mot avec le sujet de cet article !), mais efficace pour le débutant
- picoBASIC ne travaille qu'avec des nombres entiers et encore ! car compris entre -32767 et +32767, ce qui est une limitation certaine; même si on peut faire des calculs après la décimale en multipliant les nombres par la précision désirée et ensuite en restituant un résultat sous format string en rajoutant la décimale au bon endroit (voir le programme exemple "ccircle"), ça reste du bricolage !
CONCLUSION
Rappelons que ces 3 BASIC fonctionnent sous sur la même logique d'un interpréteur embarqué sur le Palm. Il faut donc avoir envie de programmer directement sur le Palm pour se lancer avec l'un d'entre eux (rappelons néanmoins la possibilité de programmer sur les portages DOS, Windows et Linux de SmallBASIC).
Même s'ils ont des caractéristiques proches, on peut quand-même distinguer des usages différents pour ces 3 sympathiques BASIC :- le passionné du BASIC se tournera vers HOTPAW Basic et en acceptera le coût. Peut-être faudra t-il commencer à envisager le passage à un autre langage "onboard" plus évolué (OnBoardC, PocketC, PP...) ?
- l'amateur du BASIC ludique ou utilitaire regardera du coté de SmallBASIC et appréciera ainsi le développement simple et les résultats rapides.
- celui qui cherche à faire ses toutes premières armes en programmation avec le BASIC pourra se tourner dans un premier temps vers picoBASIC avant d'envisager un des 2 autres BASIC voire un autre langage plus évolué.
aldweb
qui n'a pas honte de dire qu'il a commencé avec le BASIC !
|
Creation date : 01/01/2003 @ 00:00
Last update : 01/01/2003 @ 00:00
Category :
Print the article
|
|
|
|
|
|
Weather / Spam / www |
Lyon Weather
aldweb against spam
|
|
|