SocialPlayground

essay B

Département : Génie informatique Option : Administration de parc Informatique et Bureautique Administrateur d’Application Informatique Projet de Fin d’études Interface d’Applications sociales dynamiquement exécutables par chargeur des classes du langage JAVA Remerciements Avant d’entamer ce t considérations avec de sa contribution e qualité des conseils q 1 p g aissables adrant M.

EL KHATEB Insi que pour la Notre gratitude va également à Monsieur le directeur de l’école supérieure de technologie de Meknès (ESTM), ainsi qu’au département Génie Informatique enseignants et administratifs. Nous remercions également tous les membres du jury, pour avoir accepté de consacrer leur temps précieux à l’évaluation de notre travail. Enfin, notre gratitude va à toute personne ayant contribué de prés ou de loin à réaliser ce travail.

Avec mes respects Les étapes du projet : 9 Conception et architecture du projet 10 1- 11 2- Application d’IJML aux Social Playground :12 Outils et langage de développement16 1- Le polymorphisme: 17 2- Les Threads: 17 3- ClassLoader: 20 4- Les Jars: 21 Introduction Dans le cadre de notre formation de technicien supérieur à l’Ecole upérieure de technologie de Meknès (ESTM), l’établissement cherche à améliorer les compétences et le savoir-faire de ses étudiants par divers moyens tels que les stages, les projets et en particulier les projets de fin d’études pour cela et pour mettre en pratique la formation qu’on a eu tout au long de notre durée d’étude on est tenu à faire un projet qui a comme thème : « Interface d’Applications sociales dynamiquement exécutables par chargeur des classes du langage JAVA » e rapport que vous êtes en train de feuilleter est le fruit de 2 mois de travail utilisant des connaissances non acquise par notre ormation durant nos études à l’ESTM tels que la programmation en Java. e thème et les langages du projet ont été suggérés par notre encadrant Mr. ElKhateb.

L’application a été réalisée en utilisant un langage de programmation qui est Java. Avant d’attaquer la partie pratique du projet il fallait faire des recherches théoriques concernant les réseaux informatiques et la programmation Java : définitions, architecture client/serveur, Polymorphisme, Interfaces ra hi ue GUI. Notre projet consiste à cr ce d’ Applications 21 permettra la communication et l’interactivité entre les différents lients connectés au serveur à travers des applications créer par les développeurs ayant accès à l’application. On a nommé l’application Social Playgroundpour faciliter l’appellation. Présentation Générale de ‘application 1- Introduction .

Un jeu de réseau social est un type de jeu en ligne qui se joue à travers les réseaux sociaux , et dispose généralement multi- joueurs et asynchrone de gameplay. l_es jeux réseaux sociaux sont le plus souvent mis en œuvre jeux par navigateur , mais peuvent également être mises en œuvre sur d’autres plateformes comme es appareils mobiles ou les ordinateurs. Ils sont parmi les jeux les plus populaires joués dans le monde, avec plusieurs produits avec des dizaines de millions de ‘oueurs. composants interconnectés qui fournissent des fonctionnalités ? la fois aux développeurs de jeux et aux utilisateurs finaux. En plus de ca elle fournit une application centralisée que les joueurs utilisent pour accéder aux fonctions de Social P ayground. Pourquoi avoir pensé aux jeux vidéo?

La réponse est toute simple, les gens aiment interagir avec d’autres gens en temps réel, sans laps de temps, en toute liberté, t le seul type d’application qui permet ce genre d’expérience n’est que jeux vidéo sociaux et discussions instantanées. En d’autres mots les jeux sociaux sont des applications poussées sur plusieurs niveaux, interactivité, créativité, socialisme… , mais aussi la programmation d’un jeu vidéo est plus approfondie que celle d’une application normale. 2- Source d’inspiration : Depuis peu l’industrie vidéo ludique penche sérieusement vers le multi-joueurs, les sociétés créent de plus en plus des centres sociaux regroupant les différents joueurs du monde.

Game Centre, Games for Windows, Xbox live, Playstation network, tous des fruits des géants de la technologie à travers le monde, créés afin d’offrir une expérience toute fois social et divertissante. Pour nous, on a choisi comme exemple les plateformes tactiles, les tablettes par exemple. pour cette cause on a créé une interface vaste et possible d’être introduite dans une tablette. 3- Objectifs principaux: Tout d’abord permettre une communication multiutilisateurs permanente et une liberté de dévelo ement non limité aux utilisateurs expérimenté. 4 21 Interface du programme: Social Playground fournit deux types distincts d’éléments de l’interface utilisateur que vous pouvez utiliser dans l’application. premier type est destiné à être affiché de façon modale qui définit l’accueil, couvrant l’interface utilisateur il affiche les jeux téléchargé et installé sur votre client, le deuxième type consiste à afficher l’intégralité du jeu lancé par le joueur. En général, ces écrans d’interface utilisateur permettent à un joueur d’interagir avec le contenu chargé à partir du client du programme ou d’effectuer des tâches deSocial Playground. Lorsque le joueur termine en interaction avec un de ces écrans de contenu, le programme affiche un écran suivant les cas, soit en revenant à l’un de vos écrans de jeu ou de passer à un autre écran de contenu tel que l’accueil. Capplication contient une plateforme de navigation simplifiée, elle contient trois boutons d’interaction ‘Menu Principal’ , ‘Menu applications’ , ‘Quitter’.

Le joueur lance un jeu quelconque au bout d’un temps il veut changer de jeu alors il appuie sur le bouton ‘Menu applications’, alors de ce fait le jeu ne s’éteint pas mais se réduit, si le joueur elance le jeu, il le retrouve tel qu’il l’a laissé. Chaque jeu dansSocial Playgroundcontient un menu, le bouton’Menu Principal’, permet le retour au menu propre du jeu lancé. Et bien sûr chaque application a son propre bouton’Quittef qui permet tout simplement la fermeture de la globalité de l’application. L’interface deSocial Playgroundcontiendra bien évidement un marché de jeux. Ce marché est nommé « App Store » et il fera partit de la liste des applic enu principale,il servira s 1 de la liste des applications sur le menu principale,il servira principalement à la navigation entre les jeux disponibles sur le erveur et leur téléchargement. – Quelques détails sur le travail demandé: pour la bonne maintenance et réalisation du projet, notre encadrant nous a demandé d’établir quelques tâches qui vont servir à bien maitriser la continuité de la construction de la plateforme. • Le projet de l’application client devrait avoir un dossier, contenant les fichiers destinés aux applications téléchargées et d’après ces fichiers on doit extraire le contenu des applications ? afficher dans l’interface (dossier ApplicationsFolder) • Puisqu’on aura besoin d’intégrer des nouvelles applications, onc on doit créer un autre projet qui doit ressembler au cas d’un programmeur qui sera chargé de la création d’une ou plusieurs applications. ?? Se documenter et tester le chargeur de classe du JAVA (classl_oader) pour charger les classes des applications, puisqu’ils seront regroupés dans un fichier compressé JAR (l’extension des applications JAVA). • Utiliser le concept du polymorphisme du langage JAVA pour s’en servir pour l’appel dynamique des fonctions des boutons déj? cités. 6- Les étapes du projet . Ainsi pour pouvoir réaliser notre projet voici les premières étapes rdonnées selon leur faisabilité 1- Définir la classe mère et abstraite des applications à exécuter. 2- Créer l’application du menu qui se charge d’afficher les boutons qui ouvrent les applications. 3- Créer les boutons servant à appeler menu applications ou sortir des applications et ap li uant l’appel dynamique grâce au polymorphisme au polymorphisme. – La plateforme doit pouvoir charger les classes depuis fichier qui représente une application. 5- L’APP store : a. Etablir le serveur et afficher les applications à télécharger. b. Téléchargement des applications. – la plateforme doit connaitre les nouvelles appl’cations téléchargées et prêtes à s’ouvrir. 7- Programmer un exemple d’application pour le tester avant téléchargement et l’exécution et il est fort demandé de faire un exemple de jeu en réseau puisque ce type est contraint de contenir beaucoup de formalisme et mécanisme à en faire attention lors de la programmation. 7- Le serveur: Dans Social Playground il faudra visualiser et télécharger les jeux depuis un serveur.

Ce serveur aura un dossier et une configuration statique, il aura le même port de connexion que le lient, En plus de ca il frounira aussi les applications demander par les utilisateurs, aussi pour chaque application installé sur le client aura son propres serveur. Nous auront deux sortes de jeux sur Social Playgroud les jeux multi-joueurs par création de partie et les jeu solo par système de score, par manque de temps ces derniers ne pourront pas être finalisé. Conception et architecture du ro’et formalisme, d’un ensemble de diagrammes permettant dès lors que l’on en comprend la signification, de décrire simplement un ensemble de données, d’actions ou de traitements. Contrairement à Merise, UML n’est PAS une méthode d’analyse.

II ne constitue qu’un formalisme libre qui peut être manipulé selon ses souhaits. Il n’y a donc à la base aucun diagramme devant obligatoirement être modélisé avant les autres. La norme UML actuelle comporte 13 diagrammes. Cependant seuls 5 diagrammes nous seront réellement utiles. b- Le diagramme des Cas d’Utilisation : I s’agit d’une mise en forme de toutes les actions que le système doit être capable de réaliser. Il se centre sur l’utilisation que des Acteurs vont avoir du système et est composé d’un diagramme auquel est associé pour chaque ? action » (chaque « cas d’utilisation ») une description complète incluant renchaînement des procédures réalisées pour effectuer l’action. – Le diagramme de Séquences et le diagramme de Collaboration : Ils listent les messages entre les différentes entités du système. Le diagramme de séquence défini leu e r nchainement de manière temporelle alors que le diagramme de collaboration se limite ? lister tout les messages liant deux entités. Il s’agit uniquement de représentations graphiques. d- Le diagramme de Classes : Totalement indispensable quel que soit la méthode utilisée, le iagramme de classes défini la structure interne et les liens entre les différentes classes du système mis en œuvre. Le diagramme d’Etats (diagramme d’états-transitions) : Il décrit les changements d’état d’une entité du système.

Il peut être utile dans de nombreuses conditions ; – sa structure se rapproch nes à ét utile dans de nombreuses conditions ; – sa structure se rapprochant des machines à état, il est possible d’appliquer des règles de simpl’fication qui en sont issues – il permet de décrire par un diagramme les différents états d’un système au cours du temps, de sa création à sa destruction. – Application d’UML aux Social Playground : Dans ce deuxième chapitre, nous étudierons quelques exemples d’application des diagrammes UML pour designer notre Application. Formaliser les fonctionnalités du jeu et en dériver l’architecture du jeu : Lorsque l’on décide de créer un jeu, rune des premières choses que l’on va définir, ce sont les fonctionnalités que possèdera notre jeu.

Dans le cas de notre Social Playground, les fonctionnalités de base depuis le menu de jeu sont les suivantes : – le joueur doit télécharger une application depuis le serveur ? l’aide du client. Le joueur doit pouvoir exécuter une application sur le client. – Le programmeur doit pouvoir insérer l’application dans le programme. A ceci, nous ajouterons pour le besoin de l’exemple le fait que le joueur doit en préalable pouvoir charger le jeu. pour formaliser toutes ces fonctionnalités, le diagramme de Cas d’Utilisations (use case) est tout à fait approprié : Figure 1: Use cases la demande de la liste des applications disponibles sur le serveur, le serveur reçoit la commande et les envois, puis le client affiche la liste à l’utilisateur.

Cutilisateur fait un choix, il choisit l’application qu’il veut élécharger le setueur reçoit ridentifiant de l’application et lui envoie la globalité de l’application. Figure 2:Diagrammeséquences puis un diagramme de collaboration, qui une fois remis en forme nous donnera le squelette de nos classes et leurs principales méthodes. Notre application est basée sur le polymorphisme expliqué dans le chapitre suivant. Au lancement de l’application une fentre s’ouvre cette fenetre se nomme ApplicationWindow a son tour elle fait appel à un panel HmzGIobal ApplicationWindow contient plusieurs composantes Figure 3: Diagramme de Classes Outils et laneaee de dével 0 1