|
Implementer un lecteur PGN en flash par fu****2781 le
[Aller à la fin] |
| Informatique | |
Bonjour, je compte me lancer dans l'implémentation d'un lecteur PGN en flash.
Il ne semble pas y avoir a ma connaissance ce genre de chose.
Par contre je suis un petit peu effrayé par les algorithmes de parsage de fichier PGN. Quelqu'un a t'il des sources à me recommander ou des conseils pour m'aider à coder mon lecteur ?
|
|
Question au passage Pourquoi le choix du flash ? Y a tellement d'utilitaire free en java.
|
|
tout simplement le java c'est un "hasbeen" pour du client web
et puis tu as bcp de soucis de machine virtuelle a gérer ce qui te limite dans tes possibilités graphiques
|
|
Le standard du PGN Dans ma traduction de l'article de Peter Schreiner Le format de fichier PGN se trouve le lien vers PGN Standard
On y trouve les documents au format TXT ou PDF et des utilitaires PGN dont certains avec les sources.
|
|
ce qu'il te faut est le SAN toolkit. En revanche je ne peux pas t'aider sur Flash (jamais utilisé).
|
|
A Furet Le java est hasbeen, mais pour ma gouverne, peux-tu me dire si il y en a d'autres que ceux que je vais citer ?
Mychessviewer, Montreux ou PGNchessviewer. Est-ce que l'applet de Jerome Appendino est gratuite ? Je lui ai déjà poser la question par mail mais il n'a pas répondu.
Merci.
|
|
Lecteur PGN en javascript avec iEchecs l'echiquier en ligne vous pouvez facilement lire un pgn et rejouer une partie. (restriction : pour l'instant le pgn doit être simple : pas de variantes etc..)
Exemple : copier/coller le pgn suivant dans la fenetre d'import/export de iEchecs et hop vous pouvez rejouer la partie :
[Event "Deep Junior / Garry Kasparov"]
[Site "New York"]
[Date "2003"]
[Round "3"]
[White "Kasparov, Garry"]
[Black "Deep Junior"]
[Result "0-1"]
1. d4 d5 2. c4 c6 3. Nc3 Nf6 4. e3 e6 5. Nf3 Nbd7 6. Qc2 b6 7. cxd5 exd5 8. Bd3 Be7 9. Bd2 O-O 10. g4 Nxg4 11. Rg1 Ndf6 12. h3 Nh6 13. e4 dxe4 14. Bxh6 exd3 15. Rxg7+ Kh8 16. Qxd3 Rg8 17. Rxg8+ Nxg8 18. Bf4 f6 19. O-O-O Bd6 20. Qe3 Bxf4 21. Qxf4 Bxh3 22. Rg1 Qb8 23. Qe3 Qd6 24. Nh4 Be6 25. Rh1 Rd8 26. Ng6+ Kg7 27. Nf4 Bf5 28. Nce2 Ne7 29. Ng3 Kh8 30. Nxf5 Nxf5 31. Qe4 Qd7 32. Rh5 Nxd4 33. Ng6+ Kg8 34. Ne7+ Kf8 35. Nd5 Qg7 36. Qxd4 Rxd5 0-1
|
|
autre lecteur PGN javascript voici un autre lecteur en javacript (site en anglais)...
Lutz Tautenhahn LT-PGN-VIEWER
|
|
Bravo Mr fleysour.
Ton site est superbe.
L'applet est très bien aussi.
Ton blog est sympa.
J'ai jeté un oeil sur les ref javascript, c'est
monstrueux ( le drag and drop est impressionnant )
Mais ou trouves-tu le temps de faire tou ça ?
( moi qui n'ai même pas le temps de lire tout ça ! ).
Bravo Bravo Bravo
|
|
ref Boris merci pour les compliments ;-)
|
|
Xborad/WinBoard par Tim Mann est libre et tres performant. Par contre, il est ecrit en C, et donc peut-etre trop "has been".
En tout cas, les algorithmes et la conception ne le sont surement pas.
|
|
Je vois que je ne suis pas le seul que le mot "hasbeen" ait fait rigoler ;o)
|
|
ok, le C est hasbeen ... mais le dites pas trop fort, mes patrons croiraient que je ne fais rien d'efficace de mes journees.
|
|
AJAX : pour être dans le vent ;-) Pour ceux qui s'interessent à la programmation web, un bon article sur la technologie AJAX.
|
|
chaque langage à sa spécificité j'ai pas dit que java était "has been"
j'ai dit que java était "has been" pour du client web et ce probablement car microsoft a bloqué sa progression en fournissant une machine virtuelle en standard vétuste ce qui fait que l'on est limité.
De plus Java a toujours été assez lourd pour les GUI (ca commence à être moins vrai depuis la version 1.5)
le gros avantage du flash pour le client web est une grosse facilité pour developper des interfaces graphiques et animées resizable à volonté (car l'interface est en image vectorielle et non en bitmap) et également un taux de pénétration du lecteur flash beaucoup plus élevé que les machines virtuelles java (90 % des navigateur on le lecteur en version 6)
aujourd'hui tu as 40 % de gars en java 1.1.4 au possibilité graphiques très limités, 40 % avec un JRE > 1.2 et 20 % sans machine virtuelle. ca devient difficile à gérer.
Par contre d'un point de vue serveur Java reste le top et d'un point de vue implémentation accès sur l'optimisation, le C plus proche du langage machine est top.
|
|
Ce que pense Xavier Leroy de la programmation web... A new programming language: what for?
|
|
Java et Flash posent des problèmes de propriété et de portabilité (compile once run many, c'est facile à dire, mais où sont les machines virtuelles pour les processeurs PowerPC, ARM, Alpha ?...). Quand je vois à quelle vitesse se lance un programme écrit en OCaml compilé en bytecode, je me demande ce que Sun met dans la JVM pour qu'elle prenne tant de ressources. Quant à Flash, je me suis laissé dire qu'ils ont réussi à implémenter un ramasse-miettes à côté duquel celui de Sun a l'air bon, autant dire que ce n'était pas gagné. Pendant ce temps, celui d'OCaml marche très bien. Bon évidemment, d'ici qu'on puisse l'utiliser dans ce contexte, il va s'écouler un certain temps... c'est déjà possible côté serveur, cependant.
La présentation de Xavier Leroy m'a rappelé que certains voudraient que la conception d'applications web passe par des algèbres de processus. C'est bien gentil mais il faudrait déjà que les gens se mettent d'accord sur le concept. Je ne sais plus combien j'ai vu passer de variantes de CCS et du pi-calcul, sans compter Lotos ou les exotismes du genre ambient-calcul, mais c'est clairement trop, d'autant qu'à chaque nouveau problème ils introduisent une nouvelle construction dans leur formalisme... L'autre problème est l'utilisation pratique : prouver la correction d'un truc trivial style compteur n'est déjà pas évident, alors un vrai programme... Alors du point de vue théorique c'est très bien, mais pour ce qui est de travailler avec ça, j'ai quelques doutes.
|
|
Nicolaus a même du mal avec le html ;o)
http://homepages.inf.ed.ac.uk/wadler/linksetaps/slides/leroy.pdf
Et il vaut mieux laisser voir l'extension d'un fichier, ici le pdf, lorsque le lien ne mène pas simplement vers une page web.
|
|
non, avec le 'copier-coller' ! ;-)
|
|
@daik Les points que tu soulèves sont intéressants... mais je ne crois pas que le but du Flash soit la rapidité d'exécution ;-)
De plus on s'écarte un peu de la section du forum, qui est avant tout consacré aux échecs.
L'idée de furet est intéressante dans la mesure où cela ne semble pas encore exister.
|
|
"Implementer un lecteur PGN en flash"
Cela semble en effet beaucoup plus accessible que l'inverse : implémenter un lecteur Flash en PGN.
|
|
en lisant daik je mesure la difference entre les informaticiens en entreprise dont je fais parti et les chercheurs/thésards en informatique ...
J'ai l'impression qu'on vit dans 2 mondes différents.
Je veux bien que le OCAML soit un super programme (français qui plus est) d'un point de vue technique.
néanmoins la technique ne fait pas le succès d'une technologie, il faut une bonne dose de markéting ...
|
|
deux mondes différents mais qui se recouvrent quand même. Un langage comme Objective Caml, qui sert de support à la recherche, est aussi utilisé dans l'industrie (par exemple par France Télécom, IBM...), seulement, pas dans des applications utilisées par les gens "ordinaires", de sorte que ça ne se voit guère. Dans l'autre sens, il arrive qu'à la fac on utilise C ou même Fortran (pouah !), surtout quand l'aspect performances est critique (réseaux à très haut débit, calcul scientifique...).
Pour en revenir au sujet initial, si tu veux apprendre les bases de l'analyse lexicale et syntaxique, il y a des livres sur le sujet, par exemple le "dragon" : Compilateurs - Principes, techniques et outils, de Aho, Sethi et Ullmann.
Nicolaus, ça me rappelle une blague de geek à base de : ce matin j'ai programmé un émulateur de calculatrice 4 opérations sur un Alpha 21264, je prévois maintenant de faire le contraire...
|
|
deux mondes différents Ce qui est déplorable dans l'informatique c'est que le monde industriel ne 'voit' pas l'intérêt de faire les choses bien, ils ne voient que des clients. De fait que dans cette communauté, tout le monde sait que 'l'informatique c'est quand ça ne marche pas' et trouve ça normal... Le monde académique n'est pas en reste non plus, en appliquant ses méthodes à la fonction factorielle et en considérant que les problèmes des industriels ne sont pas les leurs et n'ont aucun intérêt.
Par contre, à mon avis, les gens (développeurs et chercheurs) ne sont pas à blâmer (enfin pas tous ;-))... à ce propos l'intitulé du CV de XL (encore!) , 'chercheur informaticien' (et non pas chercheur en informatique) me semble des plus pertinents, on 'sent' bien les aspects théoriques et pratiques sous-jacents.
|
|
Lecteur Flash Au fait, n'y a-t-il pas deja le lecteur bleu-ciel et blancs souvent utilise sur les sites russes (Aeroflot et autes) ou au championnat d'europe actuellement (http://goteborgchess2005.msp.se/live/toma2/toma/rond3/tfd2.htm0.
Je ne conais pas son nom, mais les specialistes surement. En tant, qu'internaute je le trouve tres reussi.
|
|
ref Imagine : lecteur flash dgt C'est le player flash DGT Projects TOMA 1.3
tous les détails sur
DGT Projects
|
|
Toma est un produit (professionnel) reussi. Un bel objectif pour furet. Pourquoi ne pas commencer un projet pour developper un equivalent libre?
|
|
au fait fleysour bravo pour votre site et iEchecs que j'utilse avec plaisir.
|
|
oui je connais TOMA c'est parceque je le trouve un peu léger en fonctionnalité que j'ai commencé ce DEV.
l'idée est de reprendre ce que j'ai déja fait en java pour l'applet de retransmission de la FFE et de faire la partie client en flash en gardant les fonctionnalités de l'applet :
- un chat général et par partie
- le commentaire automatique par un moteur d'analyse
- la possibilité d'ouvrir plusieurs parties en même temps
- un petit diaporama de photos
et en plus rajouter 2-3 trucs sympa :
l'accessibilité depuis n'importe ou quelque soit le firewall (encapsulation dans HTTP)
une interface graphique plus sympa et plus légère grace aux dessins vectoriels
une meilleure compatibilité du fait du lecteur flash plus répandu
il est possible de faire du streaming audio très facilement avec flash mais ca risque d'être dur à gérer avec la bande passante
Après y a une grosse refonte du code serveur avec une architecture J2EE avec des composants Java BEANS
pour l'instant j'ai déja terminé toute la partie algorithmique pgn (en fait l'action script 2 de flash est quasi identique à java ...)
J'avance a petit pas sur l'interface car je découvre flash mais ca conforte mon idée : c'est 100 fois plus puissant que du swing pour faire des interfaces graphiques !
|
|
|