Les outils du développeur PHP

Développer du PHP sur MacOS n’est pas très compliqué et peut se faire facilement sans les logiciels décrits ci-dessous, mais des fois il est bon de gagner en productivité avec des logiciels spécialisés. Voici les outils du développeur PHP !

La base : le serveur Web (LAMP)

Macports - Applications pour MacOSAvoir de commencer à coder, il faut pouvoir exécuter les scripts PHP et avoir une base de données MYSQL qui tourne sur votre MacBook (ou un Imac). De base MacOS est livré avec un serveur web donc APACHE/MYSQL/PHP mais ne voulant toucher au système initial, j’ai opté pour la solution Macports (gratuit)Macports est une sorte d’installateur de logiciels pour MacOS grâce à Macports on va pouvoir installer un grand nombre d’applications qui étaient disponibles uniquement sur Linux. Il est vrai que Macports fonctionne en ligne de commande, ce qui pourrait rebuter un grand nombre de personnes, mais il se révèle assez facile d’utilisation pour peu que l’on connaisse un minimum la console. Je détaillerai plus tard le processus d’installation complet pour un serveur Web avec Macports.

Un logiciel pour coder qui porte bien son nom : Coda

Coda - Logiciel de développement WebPour mes premiers développements, j’étais sous Windows et je j’utilisais NotePad++. Logiciel très performant et très simple à utiliser. En passant du coté d’Apple, j’ai cherché un logiciel pour éditer mes fichiers PHP et sur le conseil d’une amie, je suis tombé sur Coda (payant : 65€). Actuellement on est à la version 2 du logiciel. Et cela a été le coup de foudre instantané ! J’ai été vraiment conquis par le design du logiciel lui-même et par sa facilité d’utilisation. En effet Coda regroupe en un seul logiciel tout ce dont on a besoin pour éditer du PHP/HTML/CSS – pour mettre en ligne ces fichiers via FTP – pour se connecter en SSH sur un serveur web distant. En plus de ces outils Coda inclut de nombreuses fonctionnalités qui sont détaillées sur le blog de Panic, l’éditeur de Coda. J’adore la fonction de ‘Search and Replace’ avec des jokers, la possibilité de mettre des commentaires faisant office de balises de navigation dans le code (par exemple //!fonction 1), les clips qui permettent de mutualiser les bouts de code dont on se sert souvent. Coda permet aussi à des tiers de développer des plugins qui apportent des fonctionnalités complémentaires comme la manipulation de textes (minuscules/majuscules), la minification des scripts JS/CSS ou la possibilité de comparer des fichiers.

Pour ma part, il me serait impossible de coder sans Coda.

Un bon logiciel FTP : Transmit

Transmit - Logiciel FTPDepuis toujours j’utilisais pour logiciel de transfert FTP, Filezilla. Je n’avais jamais eu de problème avec ce logiciel que cela soit sous Windows ou sur MacOS. Mais un jour on a découvert le problème du siècle avec Filezilla, voici l’explication :

-> Sur un site e-commerce dont je m’occupais, on a découvert un jour des injections de code sur de nombreuses pages. Mais impossible de savoir d’où cela venait. On pensait qu’il y avait un porte sur le site ou que c’était notre provider (OVH) qui s’était fait piraté. Le problème c’est que nos fichiers étaient modifiés à la date du piratage et pas de la dernière mise en ligne. Cela est arrivé encore 2 fois sans que l’on puisse comprendre… Un jour j’ai décidé de vraiment analyser le problème est j’en suis arrivé à la conclusion que c’était l’un de nous qui modifiait les fichiers. J’ai donc demandé à tous les utilisateurs de scanner leurs ordinateurs avec un logiciel anti-virus et on s’est rendu compte qu’un poste était infecté par un virus qui récupèrait les données du fichier de configuration de Filezilla (filezilla.xml) qui est en clair, donc non crypté, avec les accès FTP en clair. Donc fin d’utilisation de Filezilla et pour mon cas passage à Transmit (payant : 30€) de l’éditeur Panic (on ne change pas une équipe du gagne). Transmit n’a pas de fonctionnalité transcendante mais il fonctionne très bien, crypte les données personnelles et il est beau. Cependant il prend pas mal de ressources processeur lors de transferts de fichiers. Pour rappel Coda embarque une bonne partie des fonctionnalités de Transmit pour les transferts FTP.

Minifier à la volé : Smaller

Smaller - Logiciel de minification CSS et JS

Minifier les fichiers CSS et JS peut alléger grandement le chargement des vos pages internet. Il est possible de minifier à la volé ces fichiers un par un avec Coda mais le problème est que des fichiers CSS et JS, on en a souvent une multitude et la minification peut devenir un vrai cauchemar. La solution à ce problème est simple : utiliser Smaller (payant : 20$). Avec Smaller c’est très simple, vous prenez un dossier en drag-and-drop et Smaller va créer un fichier .min dans le même répertoire que le fichier sources. Le tour est joué en 1 minute et votre Mac fait le travail tout seul comme un grand ! Il faut aussi savoir que grâce à des plug-in Coda, il est possible d’avoir des outils de minification JS et CSS.

Versionner votre travail avec SVN et Versions

Client SVN Versions pour MacIl se peut que vous ayez besoin de gérer ou versionner vos travaux. L’une des solutions les plus utilisées est SVN. Grâce à SVN vous pourrez travailler à plusieurs sur un même projet ou plus simplement gérer des versions différentes de votre projet. Dans beaucoup de sociétés SVN est utilisé, il est donc bon de savoir s’en servir et de l’utiliser correctement. Pour cela j’ai choisi Versions sur Mac. Il est très épuré et simple d’utilisation. Je n’ai pas eu de problème lors de son utilisation. Les conflits sont bien remarqués et on peut facilement les résoudre. On peut comparer différentes versions d’un même fichier. L’historique des commit est très clair, j’aurai aimé avoir un outils de recherche pour pouvoir naviguer plus facilement au sein des milliers de commit que peut avoir une source. Encore une fois Coda possède aussi un outils de source de contrôle mais, il à l’air lent et pas très optimisé. Je lui préfère Versions. Le soucis avec Versions c’est qu’il est un peu cher 59$ !

Gérer les bases de données MYSQL avec MYSQL Workbench

mysql-workbench-ingnieur-imacPour gérer facilement une ou plusieurs bases de données MYSQL, il existe plusieurs solutions. L’une des première est d’utiliser l’outil PhpMyAdmin (fait en PHP). Il y a vraiment pas grand chose à lui reprocher. Il est très complet et fonctionne très bien. Les mises à jour sont nombreuses et régulières. Cependant j’ai progressivement basculé vers une logiciel comme MySQL Workbench 6. L’organisation de l’affichage des tables ainsi que les informations qui vont avec m’ont plu. La configuration des connexions est simple, la manipulation des données et des tables l’est tout autant. Ce qui est bien avec MySQL Workbench c’est que l’on peut faire de jolies modèles/entités ce qui peut servir. On peut voir le niveau de ressource utilisé utilisé par le serveur MYSQL, et il n’y a rien à dire sur l’éditeur SQL. En plus il est gratuit et multiplateforme.

Sauvegarder les accès avec Evernote

Evernote - Partage de notes

Je ne sais pas si c’est vraiment la meilleure solution pour sauvegarder les accès FTP ou les accès à des interfaces d’administration mais je ne vois pas trop d’autre solution pour partager des notes entre mon MacBook, mon Ipad et mon Iphone. Il existe des logiciels de synchronisation de mot de passe mais ils sont un peu trop rigide. Avec Evernote (gratuit), on copie/colle tout et n’importe quoi et cela va très vite. Il ne faut pas oublier qu’il n’y a pas vraiment de solution ultra sûre pour sauvegarder des informations importantes. Evernote s’est fait piraté il y a peu et j’ai dû ré-initialiser mon mot de passe.

Virtualiser pour avoir Internet Explorer : VMware Fusion

VMware Fusion  - Logiciel de virtualisation

Lorsque l’on développe des sites internet, on a une seule hantise et elle s’appelle Internet Explorer ! Il est vrai que pour les dernières version d’Internet Explorer (à partir de la 8) la prise en charge correcte de l’HTML et CSS fait plaisir et soulage un peu le développeur. Mais quand on doit tester son travail sous IE6 ou 7 ! c’est la galère ! Pour avoir ces environnements Windows/Internet Explorer, j’utilise VMware Fusion (payant : 45€) qui me permet d’avoir des machines virtuelles sous Windows et donc de tester facilement mes travaux. Il y a la solution Paralells (payant : 80€) aussi mais je me suis habitué à Fusion. En tant que développeur il possible qu’on nous demande d’utiliser des logiciels qui n’existent pas sous MacOS et donc la virtualisation avec VMware est la solution la plus simple pour avec les deux environnement en même temps. Je n’ai pas pu tester la solution VirtualBox mais en tout cas elle est gratuite ! Cela peut-être un début.

Share Button

2 commentaires à propos de “Les outils du développeur PHP

  1. Bonjour, je suis tombé sur ton site en recherchant des information sur la Release 3 OVH et j’ai navigué un peu …
    Concernant cet article, je pense qu’il est dommage d’avoir à choisir plusieurs outils payants pour développer alors qu’il en existent qui remplissent le rôle d’au moins trois des points cités dans cet article.
    Je te conseille de tester PHPStorm de JetLab, qui est une bonne perle pour du développement web (par contre pas encore utilisé cet outil sur mac, donc faut prendre mon avis avec des pincettes 🙂 )
    Cordialement,
    Léo

    • Effectivement PHPStorm semble bien, je l’ai déjà téléchargé pour tester. J’avoue que je ne l’ai pas testé à fond mais il est vrai que l’interface m’a rebuté rapidement. Par rapport à Coda 2 cela n’a rien à voir. Mais je pense que tout est une question d’habitude. Il faut trouver son feeling. Par exemple on pourrait coder avec Textwrangler qui m’a l’air très bien aussi. Si on prend un licence individuelle pour PHPStorm elle est payante aussi pour 89€ environ alors que Coda 2 est à 65€ sur le AppStore. Dans l’absolu je suis d’accord plus c’est gratuit mieux c’est. C’est en fonction de ses besoins.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*