Liguoblog

jeudi 14 juillet 2005

2 pour 1

J'ai finalement reçu mon laptop hier. Globalement je suis très satisfait. Mis à part quelques petit point au niveau software :

- Dell m'a carrément vendu un ordi infesté de spyware. AOL, Norton antivirus et compagnie était déjà installé en tant que service qui m'ouvre plein de popup pour s'abonner. Bref je vais formatter dans les prochains jours.

- Dans la boite, j'ai le CD de Windows Media Center 2005 alors que c'est le 2002 qui est installé sur la machine ?

- Sinon niveau performance c'est parfait ! 8)


Je l'ai donc reçu hier. Mais bizarrement, j'ai reçu ce matin au bureau exactement la même boite avec le même laptop custom. Évidemment, il ont facturé 2 fois le laptop sur la carte de crédit. Il y a eu une petite erreur quelque part... Bref, je leur retourne le doublon ASAP.

Lire la suite

JSwiff

Je viens tout juste de découvrir l'existance de cette librairie opensource. Elle  est écrite à 100% en Java et elle permet de manipuler des SWF version 7. JSwiff est disponible en deux licenses : GPL et Commercial.

La version actuelle est 0.9. La version première "vrai" version (1.0) devrait être disponible le 1er Août.

Je vais regarder ça de plus près afin d'exploiter ses fonctionnalités dans SAM-UI.

http://www.jswiff.com/

mardi 12 juillet 2005

Flash Player 8 beta

Le premier beta publique du Flash Player 8 est ouvert. C'est ici que ça se passe !

dimanche 10 juillet 2005

Un peu d'optimisation...

J'ai commencé à faire un profiler pour SAM-UI. La tâche de ce profiler est d'observer l'exécution d'une application Flash et détecter les régions chaudes du code. Celles qui pourraient demander de l'optimisation... Le tout sans modifier le code original.

Comment cibler une partie du code en particulier ? Le principe est assez simple.  Au lancement de l'application, on scan de façon récursive l'objet _global afin de cibler les différente classes et packages présents au runtime. Pour chaque classe, on scan son prototype afin de détecter les méthodes. Pour chaques méthodes, on fait un backup de la méthode l'originale, on stock le nom de classe et méthode pour cette partie de code et on exécute le backup tout en calculant le temps d'exécution.

Évidemment tout ceci ralenti l'éxécution du code mais en théorie, tout devrait rester proportionel. Donc ça permet tout de même de cibler les régions chaudes. L'utilisation que je souhaite en faire pour le moment est de :

- afficher l'historique du callstack à n'importe quel moment de l'éxécution.

- afficher des statisques dans un histogramme. Les méthodes/classes les plus lentes, rapides, utilisées, etc... En fonction du temps d'exécution minimum, maximum ou de la moyenne.

Bref mon analyse primaire me disait que c'était surement possible de le faire. J'ai donc essayer ! Les premiers tests que j'ai fait étaient uniquement sur trois classes : Main, Maman et com.Papa.  Le résultat était pas si mal. L'étape suivante était de le tester avec mes packages layout et component qui contiennent beaucoup plus de classes. Le résultat était catastrophique !!! Vraiment très lent, mon ordi a gelé pendant une minute le temps que le Flash Player génère le XML et le renvoie à SAM-UI pour l'afficher dans un JTree. J'avais envie de tout laisser tomber... Puis je me suis dit qu'il y avait peut-être moyen de faire un peu (beaucoup) d'optimisation !

Lire la suite

vendredi 8 juillet 2005

SAM-UI 0.2

Une nouvelle version de SAM-UI est disponible. Voici la liste des changements :

- Réglé le bug d'ajout de symbole à la racine de la librarie.

- Changé les labels "home" pour "path" dans la configuration de projet.

- Ajout d'un champ pour les paramètres optionels.

- Gestion de la commande TRACE() de MTASC. Il y a donc maintenant un serveur socket d'intégrer à SAM-UI (port 12000). Il peut y avoir un nombre infini de SWF connectés à l'application simultanément.

- Dans le console de sortie, lorsqu'on bouge la souris au dessus d'un message de log, un tooltip apparait avec le nom du fichier AS et le numéro de ligne à laquelle le log à été envoyé. (voir screenshot ci-dessous)

Lire la suite

mardi 5 juillet 2005

The Java Language Specification 3rd Edition

Une troisième édition des spécifications du languages Java est maintenant disponible. Il s'agit de LA référence sur les fonctionnalité de Java. À lire absolument par tout les développeurs qui souhaitent connaitres les subtilitées qu'offre ce language.

http://java.sun.com/docs/books/jls/

dimanche 3 juillet 2005

SAM-UI 0.1

De retour du weekend avec une première version (apha) de SAM-UI.  Le but de cette application est de fournir une interface graphique pour manipuler swfmill, ant et MTASC.

Lire la suite