Archive pour la catégorie ‘Quelques trucs sur...’

Quelques trucs sur PHP #3

Dimanche 9 mai 2010
Auto-complétion du code avec PDT

PDT est un IDE pour PHP basé sur Eclipse relativement performant. Notamment il permet l’auto-complétion de code, ce qu’on n’a que rarement avec des éditeurs plus légers.

Sous certaines conditions (notamment avec le plugin SVN), l’auto-complétion n’est pas activée par défaut. Il y a peut-être moyen de le régler dans le labyrinthe qui sert de système d’options à Eclipse mais sinon, un moyen simple reste d’ajouter la ligne suivante dans la section natures du fichier .project du projet :

<nature>org.eclipse.php.core.PHPNature</nature>

Flux RSS et format de date

Pour formater une date en vue de générer un flux RSS, il y a plusieurs méthodes :

  1. chercher le détail du format sur le net et l’appliquer… c’est possible mais risque d’erreur.
  2. utiliser le format ‘r’ qui renvoie le bon format.
  3. utiliser la constante DateTime::RFC822… sauf que là le flux ne sera pas forcément valide et qu’il y aura potentiellement des problèmes avec certains agrégateurs.

Préférez donc la seconde solution, celle-là en principe elle marche (et en bonus c’est la plus compacte, que demander de plus ?).

Méthodes privées en PHP 5.1.6

Le principe d’une méthode privée c’est d’être interne à la classe et aucunement visible ou surchargeable depuis une classe qui l’étend (contrairement à une méthode protégée). Cependant dans certaines versions de PHP, dont la 5.1.6 (je ne sais pas quand exactement il a été corrigé mais il n’est plus présent dans les dernières 5.2.x), permet de surcharger les méthodes privées d’une classe… Ça peut arriver involontairement et ne prête pas à conséquence, sauf quand par la suite vous tentez d’exécuter votre script sur une version corrigée de PHP et là c’est pas évident de comprendre pourquoi tout d’un coup on ne passe plus dans la surcharge !

L’angoisse de la page blanche #2

J’évoquais ici le fait qu’on risquait une page blanche sans autre forme de procès en déclarant deux fois une même méthode dans une même classe et en voici un autre : déclarer comme abstraite une méthode d’une interface.

C’est peut être une déformation due au fait qu’on me l’a présenté comme ça lors de mes premiers cours de programmation objet Java mais pour moi une interface c’est pousser à l’extrême le concept de la classe abstraite : toutes les méthodes sont abstraites (et on n’a pas de champs). En Java, il me semble bien me souvenir que dans le cas d’une interface, le mot-clé abstract sur une méthode est facultatif (vu que de toutes façons toutes les méthodes d’une interface le sont). Eh bien en PHP il n’est pas facultatif mais interdit. Sinon, page blanche (du moins sous certaines versions/configurations) et bon courage pour retrouver l’erreur \o/

  • Print this article!
  • Turn this article into a PDF!
  • E-mail this story to a friend!
  • Facebook
  • Twitter
  • del.icio.us
  • Digg
  • Google Bookmarks
  • BlogMemes Fr
  • Wikio FR
  • Netvibes

Quelques trucs sur Mac OS #1

Dimanche 19 juillet 2009
Comment saisir certains caractères ?

Certains caractères sont bien compliqués à saisir sur un mac et notamment pas forcément visibles sur le clavier (de mon macbook pro en tous cas, pour les autres j’en sais rien). Or quand on fait de développement, c’est caractères sont très souvent utiles :

  • ~ (la tilde) : alt+N
  • { (l’accolade ouvrante) : alt+(
  • } (l’accolade fermante) : alt+)
  • [ (le crochet ouvrante) : alt+shift+(
  • ] (le crochet fermante) : alt+shift+)
  • \ (le backslash ou antislash) : alt+shift+/
  • | (la barre) : alt+shift+L
Faire une capture d’écran

Je ne sais pas si par hasard les iMac ont une touche équivalente à “Impr. ecran” qu’on trouve sur PC mais en tout cas ce n’est pas le cas du MacBook pro. Leopard permet de capturer soit tout l’écran (cmd + maj + 3), soit une sélection (cmd + maj + 4), soit une fenêtre (cmd + maj + 4 puis espace). Dans tous les cas la capture sera automatiquement enregistré en PNG sur le bureau.

Forcer l’éjection du CD depuis un terminal

Après insertion, mon CD n’apparaissait pas dans l’interface (ni dans iTunes, ni dans le finder). Une courte recherche sur Google m’a sorti une panoplie de solutions possibles, la plus simple (et qui a marché dans mon cas) était de forcer l’éjection depuis le terminal via la commande drutil eject.

  • Print this article!
  • Turn this article into a PDF!
  • E-mail this story to a friend!
  • Facebook
  • Twitter
  • del.icio.us
  • Digg
  • Google Bookmarks
  • BlogMemes Fr
  • Wikio FR
  • Netvibes

Quelques trucs sur l’iPod Touch #2

Vendredi 10 avril 2009
Faire une capture d’écran

C’est simple : il suffit de cliquer simultanément sur le bouton du menu (le rond en bas) et le bouton d’allumage (en haut sur la tranche) pour déclencher un petit flash signalant qu’une nouvelle capture d’écran vient d’être envoyée dans l’application de gestion des photos.

Placer le curseur dans un texte

Pas évident de placer précisément le curseur dans le texte d’une application comme Notes ou Mail. Du moins quand on ne connait pas ce petit truc : en gardant le doigt immobile sur l’écran pendant quelques secondes, une loupe apparait au dessus du doigt permettant d’effectuer le positionnement.

iPod Touch/iPhone - loupe

iPod Touch/iPhone - loupe

L’air de rien ils ont prévu pas mal de choses et une fois qu’on le sait on se demande pourquoi on n’a pas pensé à essayer plus tôt tellement c’est évident :p

Savoir où mène un lien dans Safari

Sur l’iPod, pas de barre d’état pour voir où mène un lien avant de cliquer dessus… pourtant, dans certains cas c’est intéressant de pouvoir vérifier qu’on va bien là où on croit aller. Pour cela il suffit de maintenir quelques secondes le doigt sur le lien en question, une infobulle apparait alors avec l’URL du lien. Ensuite, deux solution : relever le doigt pour suivre le lien, glisser le doigt hors du lien pour fermer l’infobulle sans suivre le lien.

  • Print this article!
  • Turn this article into a PDF!
  • E-mail this story to a friend!
  • Facebook
  • Twitter
  • del.icio.us
  • Digg
  • Google Bookmarks
  • BlogMemes Fr
  • Wikio FR
  • Netvibes

Quelques trucs sur Javascript #1

Jeudi 26 mars 2009
Packed VS minified

Il existe deux méthodes couramment utilisée pour alléger les javascripts :

  • En les “compactant” : le code est alors ré-écrit en une version nettement plus compacte et surtout nettement moins lisible.
  • En utilisant jSmin : là le script est juste allégé de tous ses commentaires et espaces superflus. Il est moins compact mais reste cependant relativement lisible.

En général la version “compactée” est environ un tiers moins lourde que la version “minifiée” mais en contrepartie, l’exécution est presque deux fois plus lente. Et donc le ressenti côté utilisateur est nettement dégradé dans la version compactée. La version minifiée est donc en général préférable, d’autant que pour le debug c’est nettement plus pratique !

La fonction parseInt

Cette fonction permet, comme son nom l’indique, de convertir une chaine en entier. A priori rien de bien compliqué. Son deuxième paramètre permet de spécifier la base dans laquelle on se place. Rien de compliqué non plus.

Là où ça peut un peu plus surprendre si on lit la doc trop rapidement, c’est qu’en l’absence du deuxième paramètre, si la chaine commence par un zéro, la conversion se fait en octale, soit en base huit et non dix. Cette fonctionnalité semble être dépréciée mais elle est toujours prise en compte.

On a donc les résultats suivants :

  • parseInt("000") -> 0
  • parseInt("001") -> 1
  • parseInt("002") -> 2
  • parseInt("003") -> 3
  • parseInt("004") -> 4
  • parseInt("005") -> 5
  • parseInt("006") -> 6
  • parseInt("007") -> 7
  • parseInt("008") -> 0
  • parseInt("009") -> 0
  • parseInt("010") -> 8
  • parseInt("011") -> 9
La console d’erreur de Firefox

Dans un contexte d’extension (ou au moins dans un contexte signé il me semble), il est possible d’écrire des messages dans la console d’erreur de Firefox via JavaScript.

Par contre (du moins dans certaines versions), tenter de loguer un message vide fait planter la console. Elle continue à accumuler les message mais il faut la fermer et la rouvrir pour les voir. Chose très agaçante quand on ne sait pas d’où ça vient…

  • Print this article!
  • Turn this article into a PDF!
  • E-mail this story to a friend!
  • Facebook
  • Twitter
  • del.icio.us
  • Digg
  • Google Bookmarks
  • BlogMemes Fr
  • Wikio FR
  • Netvibes

Quelques trucs sur l’iPod Touch #1

Mardi 10 mars 2009

Quelques petits trucs que je n’ai pas trouvé tout de suite sur mon iPod Touch (et qui valent aussi pour l’iPhone).

Ré-organiser les applications

Pour activer le mode permettant de réorganiser les applications, il suffit de maintenir le doigt posé sur l’une d’elles durant quelques secondes. Les icônes se mettent alors à “flotter” et sont déplaçables par simple glissade. On peut également les déplacer d’une page à l’autre mais c’est assez laborieux… Dans ce mode on peut aussi supprimer les applications télécharger, par contre impossible de supprimer ou ne serait-ce que masquer les applications présentes par défaut.

Stopper la musique ou changer de morceau alors que l’iPod est verrouillé

C’est dans le manuel utilisateur, mais qui lis les manuels utilisateurs jusqu’au bout ? Pas moi en général…

Donc il est possible d’accéder aux fonctions lecture, pause, piste suivante et piste précédente alors que l’iPod est verrouillé. Pour faire apparaitre ces options, il suffit de double-cliquer sur le bouton de menu principal. Voilà qui m’évitera de retaper mon code à chaque fois ^^

Des caractères cachés !

Un truc que je viens d’apprendre aujourd’hui, ce qui me permet de clôturer cet article avec un troisième point et donc de le publier (les deux autres étant en attente depuis bien longtemps) : certains caractères apparemment absents du clavier de l’iPod Touch et de l’iPhone sont en fait disponibles en maintenant le doigt quelques secondes sur un caractère “approchant”.

Par exemple les accents sont accessibles sur les lettres associées (a,e, i, o, u), mais on trouve également la cédille sur le c, les signes inversés (pour l’espagnol notamment) sur les points d’interrogation et d’exclamation, d’autres symboles monétaires sur l’€… Bref, pas mal de choses qui peuvent manquer si on ne connait pas le truc.

  • Print this article!
  • Turn this article into a PDF!
  • E-mail this story to a friend!
  • Facebook
  • Twitter
  • del.icio.us
  • Digg
  • Google Bookmarks
  • BlogMemes Fr
  • Wikio FR
  • Netvibes