Mohamed Quafafou
ESIL Département Internet
Février 2007
1
Table de Matière
1. Pourquoi J2ME ............................................................................................................... 2
2. Qu’est-ce que J2ME ....................................................................................................... 2
3. Les Outils de développement et de tests ........................................................................ 4
a. J2ME Wireless Toolkit 2.1 ....................................... Error! Bookmark not defined.
b. NetBeans IDE ........................................................... Error! Bookmark not defined.
4. La problématique multi-plateformes et multi-périphériques de Java ............................ 4
5. CDC (Connected Device Configuration) ....................................................................... 5
6. CLDC (Connected Limited Device Configuration) ....................................................... 6
7. MIDP (Mobile Information Device Profile) .................................................................. 6
8. Les Midlets ..................................................................................................................... 7
9. L’interface Utilisateur .................................................................................................... 7
a. Présentation ................................................................................................................ 7
b. L'interface utilisateur de haut niveau ......................................................................... 8
c. L'interface utilisateur de bas niveau ........................................................................... 9
10. Le stockage persistent .............................................................................................. 10
11. Le réseau .................................................................................................................. 12
12. Mon premier Midlet : « Hello IAAI » ...................................................................... 13
13. Conclusion ................................................................................................................ 15
2
1. Pourquoi J2ME
Avec l’avènement des nouvelles technologies, la radio, la télévision, les satellites, les
téléphones cellulaires, la société actuelle est devenue une société de communication. La
communication, et particulièrement la diffusion d’informations, sont maintenant une étape
clef de tout les processus économiques. Parmi les médias permettant une diffusion efficace et
très large, l’informatique portable s’est placée en peu de temps au devant de la scène des
produits du progrès ayant un impact fort sur les habitudes de ses usagés, modifiant leur façon
d’agir, de conceptualiser le monde qui les entours. Chacun d’entre nous sollicite son portable
(téléphones, ordinateurs de poche, PDA) de plus en plus souvent pour des services divers et
variés. Dans ce contexte, les applications écrites pour les utilisateurs sont de plus en plus
complètes et complexes. Cependant, chaque nouveau système nécessite une réécriture de
l’application pour lui. De même, le langage de programmation de ces appareils n’est pas
suffisamment structuré ou formalisé pour permettre à leurs utilisateurs de faire eux même du
développement.
Mais, comment faire partager une structure unique aux différents constructeurs de systèmes
portables alors qu’ils se livrent à une guerre commerciale sans merci ? Quel système serait
suffisamment puissant, portable et efficace pour fédérer l’ensemble des développeurs. La
solution existe maintenant, il s’agit de J2ME.
2. Qu’est-ce que J2ME
J2ME signifie Java 2 Micro Edition. Il s’agit donc d’une version allégée de la machine
virtuelle JAVA, adaptée aux systèmes portables. On connaît principalement Java en tant
qu'environnement de programmation pour serveurs, centré autour des technologies qui ont
permis de aliser Java 2 Enterprise Edition (J2EE), telles les Enterprise JavaBeans (EJBs),
les servlets, et les JavaServer pages (JSPs). Néanmoins, ce langage avait initialement été
conçu en tant qu'environnement pour applications "côté-client". En fait, Java avait été conçu
pour les appareils ménagers. Et maintenant, avec Java 2 Micro Edition Java retourne à ses
sources.
Le "Java" auquel on fait habituellement référence est connu plus formellement sous le nom de
Java 2 Platform. La Java 2 Platform est subdivisée en trois éditions : Java 2 Standard Edition
(J2SE), Java 2 Enterprise Edition (J2EE), et Java 2 Micro Edition (J2ME). Chaque édition de
cette plateforme fournit un environnement complet pour exécuter les applications basées sur
Java, incluant une machine virtuelle Java (Java virtual machine = JVM) et les classes
exécutables. Chacune de ces trois éditions cible des catégories différentes d'applications
exécutées par des types différents de machines. Les applications destinées aux "ordinateurs de
bureau" sont développées à l'aide de J2SE, qui fournit les classes d'interface utilisateur
nécessaires. Les applications destinées aux serveurs sont développées à l'aide de J2EE, qui
met l'accent sur la programmation basée sur les composants et le déploiement. Quant à J2ME,
il cible les ordinateurs de poche et les machines "embarquées".
3
En effet, les terminaux portable (téléphones cellulaires, Palm, etc…) imposent un certain
nombre de contraintes :
o La majorité des terminaux sans fil sont utilisés dans une main
o Petits écrans
o Tous les terminaux n’ont pas de terminal de pointage
o méthodes d'entrées alternatives
o Mémoire limité
o Processeur lent et architectures différentes
Ce qui différencie chacune des éditions, c'est donc principalement l'ensemble des
bibliothèques de classes définies au sein de chacune d'elles.
Organisation des plateformes JAVA
J2ME est un sous-ensemble de J2SE, et J2SE à un sous-ensemble de J2EE. On peut exécuter
le même code Java sur chacune des éditions, dès l'instant où les classes auxquelles le code fait
appel sont disponibles. Le noeud du problème, c'est que bien entendu les machines qui
fonctionnent avec J2ME, en particulier les plus petites, disposent de moins de classes que
J2SE et J2EE peuvent en fournir. Les diverses spécifications qu'incluent J2ME sont toutes
définies au travers du Java Community Process (JCP), comme cela est fait pour J2SE et J2EE.
4
3. Outils de développement et de tests
Le J2ME Wireless Toolkit de SUN comprend un ensemble d’outils permettant aux
développeurs d’applications de bénéficier d’un environnement d’émulation, d’une
documentation ainsi que des exemples de la technologie JAVA J2ME. En effet, il n’est pas
nécessaire de posséder un appareil supportant le J2ME pour développer et expérimenter ses
applications personnels : un téléphone portable virtuel est alors émulé. Des exemples
d’applications (Midlet) livrées sont directement expérimentables.
4. La problématique multi-plateformes et multi-périphériques de
Java
Java 2 Micro Edition est une architecture technique dont le but est de fournir un socle
de développement aux applications embarquées. L’intérêt étant de proposer toute la
puissance d’un langage tel que Java associé aux services proposés par une version
bridée du Framework J2SE : J2ME. Les terminaux n’ayant pas les mêmes capacités en
terme de ressources que les ordinateurs de bureau classiques (mémoire, disque et
puissance de calcul), la solution passe par la fourniture d’un environnement allégé afin de
s’adapter aux différentes contraintes d’exécution. Cependant, comment faire en sorte
d’intégrer la diversité de l’offre à un socle technique dont la cible n’est pas définie à priori
? La solution proposée par J2ME consiste à regrouper par catégories certaines familles de
produits tout en proposant la possibilité d’implémenter des routines spécifiques à un
terminal donné. L'architecture J2ME se découpe donc en plusieurs couches :
Les profiles : Ils permettent à une certaine catégorie de terminaux d’utiliser des
caractéristiques communes telles que la gestion de l’affichage, des évènements
d’entrées/sorties (pointage, clavier, …) ou des mécanismes de persistance (Base de
données légère intégrée). Ces profiles sont soumis à spécifications suivant le principe du
JCP (Java Community Process)
Les configurations : Elles définissent une plate-forme minimale en terme de services
concernant un ou plusieurs profiles donnés.
Les machines virtuelles : En fonction de la cible, la machine virtuelle pourra être
allégée afin de consommer plus ou moins de ressources (KVM, CVM, …)
1 / 16 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !