Réalisation d’applications Desktop Windows/Mac Os avec PHP
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Réalisation d’applications Desktop Windows/Mac Os avec PHP

  • 5,849 views
Uploaded on

Lorsqu'on commence à maîtriser un langage puissant tel que PHP, on est tenté de l'utiliser pour tout type de programmation, par enthousiasme, mais aussi par souci d'efficacité. ...

Lorsqu'on commence à maîtriser un langage puissant tel que PHP, on est tenté de l'utiliser pour tout type de programmation, par enthousiasme, mais aussi par souci d'efficacité.

Cependant, alors que nous savons tous comment utiliser PHP au travers d’un serveur Web ou en ligne de commande, nous avons beaucoup moins de pratique pour créer une application Desktop, monoposte ou client-serveur, qui plus est, en exploitant l’interface native du système.

En effet, comment fournir un logiciel clé en main avec son installateur ou directement un « .exe » pour Windows ou un « .app » pour Mac OS ? Comment éviter d’avoir à installer successivement Apache, PHP et MySQL, ou du moins ne pas entrer en conflit avec des instances potentiellement déjà présentes ?

Nous évoquerons les différentes réponses existantes, de la plus « Geek » à la plus « RAD » en passant par Flex, Java, GTK2 et d’autres solutions surprenantes.

(Presentation Forum Php Paris 2009)

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
5,849
On Slideshare
5,484
From Embeds
365
Number of Embeds
3

Actions

Shares
Downloads
44
Comments
0
Likes
0

Embeds 365

http://lanyrd.com 358
http://www.slideshare.net 4
http://www.linkedin.com 3

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Réalisa'on
d’applica'ons
Desktop
Windows
/
Mac
OS
avec
PHP
  • 2. Réalisation d’applications Desktop Windows/Mac Os avec PHP Lorsqu'on commence à maîtriser un langage puissant tel que PHP, on est tenté de l'utiliser pour tout type de programmation, par enthousiasme, mais aussi par souci d'efficacité. Cependant, alors que nous savons tous comment utiliser PHP au travers d’un serveur Web ou en ligne de commande, nous avons beaucoup moins de pratique pour créer une application Desktop, monoposte ou client-serveur, qui plus est, en exploitant l’interface native du système. En effet, comment fournir un logiciel clé en main avec son installateur ou directement un « .exe » pour Windows ou un « .app » pour Mac OS ? Comment éviter d’avoir à installer successivement Apache, PHP et MySQL, ou du moins ne pas entrer en conflit avec des instances potentiellement déjà présentes ? Nous allons évoquer les différentes réponses existantes, de la plus « Geek » à la plus « RAD » en passant par Flex, Java, GTK2 et d’autres solutions surprenantes.
  • 3. Réalisation d’applications Desktop Windows/Mac Os avec PHP 4D doit supporter PHP
  • 4. Réalisation d’applications Desktop Windows/Mac Os avec PHP 4D et PHP • La société • Réalisation du driver PDO_4D avec Alter-Way • Membre de l’AFUP depuis 2009 • Sponsor du FORUM PHP Paris 2009 • Intégration de PHP 5.3 dans 4D v12 • Le présentateur • Product Manager responsable des technos PHP • Zend Certified PHP Engineer • 10 ans d'expérience sur des projets PHP
  • 5. Réalisation d’applications Desktop Windows/Mac Os avec PHP 4D et PHP
  • 6. Réalisation d’applications Desktop Windows/Mac Os avec PHP Solutions pour applications Desktop
  • 7. Réalisation d’applications Desktop Windows/Mac Os avec PHP Mozilla Prism / Google Chrome • Cache le navigateur • Base de données côté client
  • 8. Réalisation d’applications Desktop Windows/Mac Os avec PHP PHP-GTK • S’appuie sur la librairie GTK • Soutenue par le PHP Group: http://gtk.php.net
  • 9. Réalisation d’applications Desktop Windows/Mac Os avec PHP PHP-Qt • S’appuie sur la librairie Qt • Zend ou Roadsend engine http://www.php-qt.org
  • 10. Réalisation d’applications Desktop Windows/Mac Os avec PHP PHP via Java • JavaBridge • Quercus PHP engine
  • 11. Réalisation d’applications Desktop Windows/Mac Os avec PHP Flex • Adobe http://www.adobe.com/devnet/flex/flex_php.html • AMFPHP
  • 12. Réalisation d’applications Desktop Windows/Mac Os avec PHP 4D v12 • PHP embarqué (5.3) • Base de données intégrée
  • 13. Réalisation d’applications Desktop Windows/Mac Os avec PHP 1 - Développement 2 - Déploiement
  • 14. Réalisation d’applications Desktop Windows/Mac Os avec PHP Développement • Installation de l’environnement • Apprentissage des outils et/ou langages • Design de la base de données • Design de l’interface utilisateur • Données et utilisateur de test • Débogage
  • 15. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation de l’environnement
  • 16. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation de l’environnement • Votre environnement de développement habituel (Zend Studio, NetBeans, PHPEd, PHP Edit, ...) • Préférer le même moteur que celui ...) (Zend Server, XAMPP, WAMP, MAMP, déployé
  • 17. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation de l’environnement • Roadsend PHP, MySQL ? • GTK, PHP-GTK • Votre environnement de développement habituel (Zend Studio, NetBeans, PHPEd, PHP Edit, ...) • Glade
  • 18. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation de l’environnement • Roadsend PHP, MySQL ? • Qt, PHP-Qt • de préférence PDE Eclipse, Qt Designer
  • 19. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation de l’environnement • De préférence NetBeans ou Eclipse • Préférer le même moteur que celui déployé (Zend Server, XAMPP, WAMP, MAMP, ...)
  • 20. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation de l’environnement • De préférence Eclipse (Flex Builder) • Préférer le même moteur que celui déployé (Zend Server, XAMPP, WAMP, MAMP, ...)
  • 21. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation de l’environnement • 4D • Votre éditeur de code PHP habituel (Zend Studio, NetBeans, PHPEd, PHP Edit, ...)
  • 22. Réalisation d’applications Desktop Windows/Mac Os avec PHP Apprentissage des outils et/ou langages
  • 23. Réalisation d’applications Desktop Windows/Mac Os avec PHP Apprentissage des outils et/ou langages • Mozilla Prism (ou un jour Google Chrome) : • tout va bien • GTK, QT: • nouvelle API • nouveaux outils • Java, Flex, 4D : • nouveau langage • nouveaux outils
  • 24. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de la base de données
  • 25. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de la base de données • PHPmyAdmin • Visual Architect pour Eclipse
  • 26. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de la base de données • 4D
  • 27. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de l’interface
  • 28. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de l’interface • Dreamweaver, Zend Studio
  • 29. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de l’interface • GTK - Glade
  • 30. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de l’interface • Qt Designer
  • 31. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de l’interface • Netbeans
  • 32. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de l’interface • Flex
  • 33. Réalisation d’applications Desktop Windows/Mac Os avec PHP Design de l’interface • 4D
  • 34. Réalisation d’applications Desktop Windows/Mac Os avec PHP Données et utilisateur de test
  • 35. Réalisation d’applications Desktop Windows/Mac Os avec PHP Données et utilisateur de test • PhpMyAdmin ? • Formulaire entrée/sortie ? • Flush ? • Utilisateurs & Groupes
  • 36. Réalisation d’applications Desktop Windows/Mac Os avec PHP Débogage
  • 37. Réalisation d’applications Desktop Windows/Mac Os avec PHP Débogage • Débogage du code non PHP • Débogage du PHP • Remontées d’erreurs PHP dans l’outil
  • 38. Réalisation d’applications Desktop Windows/Mac Os avec PHP Déploiement • Publication de l'exécutable • Installation sur les postes utilisateurs
  • 39. Réalisation d’applications Desktop Windows/Mac Os avec PHP Publication de l'exécutable • Mozilla Prism, GTK, Java, Flex : Phar • GTK, QT: RoadSend Compiler • Java : Jar • Flex : AIR • 4D : Compilation Windows et/ou Mac OS
  • 40. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation sur les postes utilisateurs • Mozilla Prism, Java, Flex: au choix Zend Server, XAMPP, WAMP, MAMP • Mozilla Prism : Mozilla Firefox avec plugin Prism • GTK2, QT: MySQL ? • Java : JVM • Flex : Adobe AIR • 4D : Drag & Drop de l'exécutable
  • 41. Réalisation d’applications Desktop Windows/Mac Os avec PHP Installation sur les postes utilisateurs • data Sqlite • fichier data intégré dans le dossier de l’application • data MySQL • Dump import • 4D • data déjà intégré dans le package
  • 42. Réalisation d’applications Desktop Windows/Mac Os avec PHP Comparaison Application Desktop en PHP CRITÈRES PHP + PRISM PHP-GTK PHP-QT JAVA + PHP FLEX + PHP 4D V12 PHP Développement Licence Open source Open source Open source GPL Open source Mixte Commerciale Installation Bien Mauvais Mauvais Convenable Convenable Optimal Apprentissage Aucun GTK + Roadsend + outils QT + Roadsend + outils Java + outil Flex + outil 4D + outil Design base de données Convenable Convenable Bien Convenable Convenable Optimal Design interface Mixte Bien Bien Bien Bien Bien Editeur de code Mixte Convenable Convenable Excellent Bien Mixte Données et utilisateurs test Convenable Convenable Convenable Convenable Bien Bien Débogage Convenable Mauvais Mixte Mixte Mixte Bien Coût gratuit / mixte gratuit / mixte gratuit gratuit gratuit / 214 / 600 / 299 / 999 Déploiement Publication de l'exécutable Convenable Convenable Convenable Convenable Excellent Optimal Installation sur le poste utilisateur Convenable Convenable Bien Convenable Convenable Optimal Niveau d’intégration Mauvais Convenable Convenable Bien Excellent Optimal Coût gratuit gratuit gratuit gratuit gratuit gratuit
  • 43. Réalisation d’applications Desktop Windows/Mac Os avec PHP Faire son choix
  • 44. Réalisation d’applications Desktop Windows/Mac Os avec PHP Faire son choix • Combien de temps puis-je me permettre de consacrer à l’installation et l'appréhension de mon nouvel environnement de développement ? • Quelles autres technologies maîtrise-je en plus de PHP ? • Ai-je besoin d’une base de données, de quelle taille ? • Quelle est la configuration déjà présente sur les postes cibles ? • Dois-je déployer sur un seul ou de nombreux postes ? • Investir dans un produit commercial est-il envisageable compte tenu de l’objectif visé ?
  • 45. Réalisation d’applications Desktop Windows/Mac Os avec PHP Plus d’infos 4D v12 : 1er semestre 2010 http://www.4d.com @amorgaut @amorgaut/fourd @amorgaut/php http://php.net/pdo_4d http://pecl.php.net/pdo_4d