Richard Haddad
Développeur Java et Web
Acces_GitHub Acces_LinkedIn

Programmation

Java
Java 8 MVC Collections Threads Sockets Énumérations Exceptions Gestion XML/JSON Abstraction Interface
JavaScript
POO ECMA6 Canvas
PHP
MVC POO Abstraction Gestion XML/JSON
HTML5 & CSS3
Transition Animation Filtre Media queries
SQL
Transactions

Diplômes
&
expérience professionnelle

2016
logo-diderot

Licence Professionnelle Génie logicielWIP

Préparation d'une Licence professionnelle génie logiciel à l'IUT Paris 16 Descartes.

2015
Avril-Juin 2015
logo-iremos

Stage de programmation web

Stage de 3 mois
Programmation PHP, JavaScript/jQuery, HTML/CSS.
iremos.fr
01 57 63 83 60

Juin 2015
logo-iut

DUT Informatique

Obtention d'un DUT Informatique à l'IUT de Montreuil Paris 8.

2012
Juin 2012
logo-lycee

Bac S option SI

Obtention d'un Bac Scientifique option Science de l'Ingénieur au Lyçée Christophe Colomb de Sucy-en-Brie.

Projets personnels

TimeFlies - Client & Serveur WIP

Présentation d'un prototype. Plein écran conseillé.

TimeFlies est un projet de jeu vidéo conçu par moi-même.
Le projet est composé de plusieurs parties :

  • Le client, possédé pour le joueur
  • Le serveur, installé à mon domicile (hébergement OVH envisagé à terme)
  • L'éditeur de cartes, utilisable par le client pour créer ses propres cartes
  • Le site web, accessible par tous comme portail

La conception a débuté en septembre 2014. Le développement en avril 2015.
Pour le moment aucune date de release n'est fixée, un prototype jouable pourrait néanmoins être envisagé pour l'année 2017.

Je considère TimeFlies comme étant mon projet le plus ambitieux (et de loin) et avec le plus long développement prévu. Le projet ne présente pas de grandes difficultés, juste un temps de développement (très) long.

Je réfléchi à porter le client, actuellement fait en Java/FX8 (précédemment avec LibGDX), vers les technologies web (ReactJS notamment) afin de faciliter la conception de la vue (grâce au CSS notamment) et faciliter le déploiement web.

Description brêve du jeu

TimeFlies est un jeu multijoueur de type Tactical-RPG en vue isométrique (similaire aux jeux Ankama: Dofus, etc).
Il cherche(ra) à se démarquer par l'exclusivité de la partie combat, de l'absence d'aléatoire, et de la mise en valeur de la rapidité de reflexion et d'action du joueur.

Technique

Le client est conçu en Java (1.8) avec le framework LibGdx (portage en techno web prévu). Le développement suit le pattern MVC.

JavaJavaFXLibGdxMVC

TimeFlies - Le site web

timeflies_site

Le site a été conçu afin de fournir des informations sur la conception du jeu TimeFlies, ainsi qu'un accès aux différentes versions alpha et bêta.

Description

Il permet le tri entre les différents articles disponibles selon des critères choisis par l'utilisateur.
Le site permet également de déposer des commentaires sur les articles, de les "liker", de discuter avec les développeurs.

Côté développeurs, ces derniers peuvent ajouter de nouveaux articles (avec éventuellement un sondage), supprimer des commentaires, modifier des articles, les supprimer, etc.

Technique

timeflies.fr a été conçu en PHP côté serveur en suivant le pattern MVC. La partie connexion/inscription, la gestion des articles, les commentaires sont géré par le PHP (et la base donnée, en PostGreSQL).

La partie client, en plus des habituels HTML/CSS, utilise une version modifiée de Bootstrap (pour le css surtout).
jQuery est également utilisé notamment pour le tri dynamique des articles.

PHPjQueryBootstrapPostGreSQLMVC

TimeFlies - L'éditeur de carte

Le jeu TimeFlies s'appuyant sur des cartes stockées dans des fichiers, il était rapidement nécessaire de concevoir un éditeur de carte, à la fois pour moi, développeur, mais aussi pour les futurs joueurs, afin qu'ils puissent créer leurs propres cartes et les partager.

Certaines fonctions secondaires de l'éditeur doivent encore être intégrées.

Description

L'éditeur est séparé en 6 modules :

  • La fenêtre principale, où est affichée la carte
  • Le module des outils, où les actions générales peuvent être exécutées (créer une carte, ouvrir, ...) ainsi que les actions graphiques (placer une tuile, remplir)
  • La liste des cartes ouvertes, un simple clic suffit de passer d'une carte à l'autre
  • Les tuiles plaçables. L'utilisateur choisi la tuile qu'il veut placer sur la carte
  • Les calques, où l'utilisateur peut masquer/afficher le fond, les tuiles, la grille ...
  • Les propriétés de la carte, comme le nom, la version, le nombre de joueurs, d'équipes, etc...

Technique

L'éditeur a été conçu en Java8 avec JavaFX8. Le développement a suivi le pattern MVC.

JavaJavaFXMVC

Vidéothèque

Vidéothèque est un projet de media center connecté conçu par moi-même en environ 1 mois.
La particularité principale de ce media center est de lier les films et séries de l'utilisateur aux données du site web senscritique.com. Ainsi l'utilisateur a accès à l'ensemble des informations de l'oeuvre, tel les personnes ayant travaillés dessus (réalisateur, etc) ainsi que les actions de l'utilisateur sur son compte SensCritique (note donnée à l'oeuvre, etc).

J'ai prété une attention particulière à l'apparence de l'application ainsi qu'à son ergonomie.

Description

Cette vidéothèque permet la lecture, via un lecteur externe, de fichiers vidéo ayant préalablement été spécifiés au programme. L'utilisateur a ensuite accès à l'ensemble de ses oeuvres sous forme d'une bibliothèque listant de manière visuellement agréable les différents films et séries.
L'utilisateur peut alors accéder à la fiche de chaque oeuvre qui sera composée des données récupérées sur le site senscritique.com ainsi qu'un accès aux différents fichiers de l'oeuvre.
L'utilisateur peut également se connecter avec ses identifiants senscritique.com afin d'obtenir plus d'informations sur chaque oeuvre (ses notes notamment).

Technique

L'application est conçu en PHP, Javascript, HTML5, CSS3, et utilise jQuery. L'utilisation de fichiers JSON me permet de ne pas utiliser les bases de donnée habituelles.
Son déploiement en application desktop est possible grâce au framework PHP Desktop (pour Windows uniquement).

PHPJavaScriptjQueryHTML5CSS3

Transanimation

Dans le but de concevoir des court-metrages animés j'ai développé le prototype d'un moteur d'animation 2D.

Description

Le fonctionnement du moteur suit une logique simple.
Les différentes entités (personnages, caméras, ...) sont créées en amont.
A chacune d'entre-elles une liste d'actions leur est affectée, chacune de ces actions devant être exécutée à un temps T.
Enfin, le programme lance l'animation, et les actions se lancent comme prévue.

Technique

Le programme utilise Java8 avec JavaFX8.

JavaJavaFX

-WTG- Jack

Pokemon ! Conçu seul en quelques jours afin d'essayer un système de mapping via des tuiles.
Baladez-vous dans tout Bourg Palette ! Il y a même un dresseur !

Description

La partie exploration est fonctionnelle (on ne peut pas entrer dans les maisons cependant). Il reste les combats à gérer, et quelques menus.

Technique

Le programme utilise Java8 avec LibGDX et Gradle. La map est chargée depuis un fichier .tmx créé avec le logiciel Tiled Map Editor.

JavaLibGDXGradle
site

Ancien portfolio

La précédente version de ce portfolio était bien différente. J'avais conçu le site sous la forme d'un jeu de platforme où le joueur pouvait intéragir avec les éléments de chaque page en cliquant dessus.
Le site possède donc 6 tableaux représentant à chaque fois des environnements hauts en couleur.

Le site ayant été conçu pendant ma première année de DUT, j'ai préféré en refaire un plus facile à parcourir.

PHPJavaScriptHTML5CSS3
speech

Speech WIP

Speech est un analyseur de son audio. Il mesure et affiche en temps réel le volume et le spectre audio du son entré par le micro de l'utilisateur. Il affiche également quelques données utiles comme les bornes et la moyenne du volume. L'utilisateur peut également enregistrer sa voix.

A terme je souhaite lui faire faire de la reconnaissance vocale rudimentaire.

JavaJavaFXMVC
ide

IDE & son langage

Avec l'aide d'un ami nous avons développé un IDE et son langage. Cet IDE permet de concevoir une fiction intéractive via un code à la syntaxe simple.

L'IDE gère la coloration syntaxique, la création et suppression de projets, et la compilation. Dans ce dernier cas une fenêtre s'ouvre avec la fiction qui démarre.

JavaJavaFX
ocity

OCity

OCity est un jeu fait en PHP/JavaScript où le joueur doit créer sa ville, gérer ses ressources (argent, eau, électricité) afin de faire grandir sa population.

La ville est affichée à la façon d'un SimCity et le joueur peut cliquer directement sur les cases des batîments et terrains afin de construire, améliorer, ou détruire des batîments.

PHPJavaScriptMVC

Infiltrator

Hébergé par Scirra Arcade

Prototype jouable d'un jeu conçu avec le logiciel de conception de jeux vidéo Construct 2.

Me contacter