Firefox 4, Mozilla 2 et Gecko 2

Des nouvelles intriguent, portent à réactions ; des rumeurs courent et vous voulez débattre le vrai du faux. C'est simple : ce forum est dédié à ceux qui se sont laissés tenter par la pomme de la connaissance.
floor-eleven
Arias
Messages : 11
Inscription : 21 janv. 2009, 17:34

Message par floor-eleven »

D'ailleurs, c'est assez drôle de voir la page principale du projet Tamarin et la mise à jour il y'a une semaine.

Avant : "open source implementation of the ECMAScript 4th edition (ES4)"

Maintenant : "open source implementation of the ActionScript 3 language, which is based upon and extends ECMAScript 3rd edition (ES3)"

Je crois qu'il y'a eu tout de même un gros virement de bord dans les intentions du projet. La décision du TC39 à chamboulé pas mal de chose.

Si ES4, lui, est vraiment mort, je me demande comment les décideurs voit l'avenir de javascript et si javascript 2 est aussi mort avec.

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
Zefling
Tyrannosaurus Rex
Messages : 2577
Inscription : 21 déc. 2004, 03:45

Message par Zefling »

Je ne sais pas, mais le JS n'est plus un petit langage comme il l'était il y a quelque année. Et je ne trouve pas qu'il soit très adapter à l'usager très intensif qu'il en est fait sur des gros projets. Mais peut-être que je me trompe.
Mon blog de dév web ― Thème pour le forum Geckozone ― Le clavier Latin-9 fr sous Windows ― Raccourcis clavier pour Firefox
Debian 8 KDE avec Firefox & Nightly
floor-eleven
Arias
Messages : 11
Inscription : 21 janv. 2009, 17:34

Message par floor-eleven »

c'est aussi un point de vue. C'est vrai que si on regarde les avançées d'html 5 et la focalisation sur les vrais appli offline, on aurait surement besoin d'un langage plus puissant et maintenable que javascript dans sa version actuelle.

Je dis pas que le modele objet type prototype est mauvais mais celui de javascript est hyperpermissif pour des raisons historiques je dirais, et ça c'est de moins en moins gérable en fonction de la taille des applis avec cette techno !

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
teoli2003
Animal mythique
Messages : 7580
Inscription : 13 nov. 2005, 09:23

Message par teoli2003 »

Je crois pas à un nouveau langage. Quand on voit qu'il aura fallu 12 ans (1998-2010) pour que le svg soit supporté par les principaux navigateurs. Et encore IE n'a annoncé que cette semaine que ce sera probablement pour IE9!

Il faut donc que les principaux vendeurs se mettent d'accord sur un standard, et vu les causes de l'abandon d'ES4 (principalement parce que MS trouvait qu'Adobe avait trop d'avance sur son implémentation et que cela risquait de plomber Silverlight), cela m'étonnerai que quelque chose d'autre que Javascript puisse s'imposer dans la prochaine décennie.

Sinon Tamarin, existe toujours, mais seulement pour Adobe. Des éléments sont toujours partagés avec TraceMonkey, mais ES4 est mort. Bien sûr cela peut être ressuscité, mais je n'y crois pas: l'optimisation du tracing va occuper Mozilla une bonne partie de 2009.

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5 Ubiquity/0.1.3rc6
La liberté n'est jamais accordée de bon gré par l'oppresseur; elle doit être exigée par l'opprimé (Martin Luther King).
Les convictions sont des ennemis de la vérité plus dangereux que les mensonges. (Nietzsche).
Native Mozillian.
floor-eleven
Arias
Messages : 11
Inscription : 21 janv. 2009, 17:34

Message par floor-eleven »

Effectivement, concernant l'ES4, Microsoft se retrouvait bien défavorisé par rapport à Mozilla avec Tamarin! Sachant qu'a mon avis, l'es4 c'etait l'as3. Adobe c'etait dis qu'ils étaient parti d'es3 et qu'il pouvait normaliser une edition 4 à l'image des évolutions qu'ils avaient apporté à leur implémentation.

L'interet d'adobe était donc de migrer au moins un autre langage pour pas être la seule implémentation d'une norme qu'ils auraient pousser à bout de bras. Et puis si cet autre langage c'est javascript, c'est tout bénéf au vue du nombre de développeurs web qui sont dessus. Leurs clientèle ce serait agrandie !

Mais c'est mort...

D'ailleurs Adobe c'est déclaré bon perdant après l'annonce de Brendan Eich sur l'abandon d'es4 pour Harmony. Ils aiment pas la formule mais c'est pourtant vrai, Adobe à perdu cette guerre des standards !

Et donc je suis aussi d'accord avec toi, JS2 est mal barré si on regarde la capacité et l'envie d'adaptation de certains acteurs du marché...

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

floor-eleven a écrit :c'est aussi un point de vue. C'est vrai que si on regarde les avançées d'html 5 et la focalisation sur les vrais appli offline, on aurait surement besoin d'un langage plus puissant et maintenable que javascript dans sa version actuelle.

Je dis pas que le modele objet type prototype est mauvais mais celui de javascript est hyperpermissif pour des raisons historiques je dirais, et ça c'est de moins en moins gérable en fonction de la taille des applis avec cette techno !
Je me permets quand même de te rappeler qu'une grande partie des logiciels Mozilla est écrite en JavaScript, et que si c'était si ingérable que ça, ça se verrait :)

Tout ce qui concerne HTML5 ce sont des améliorations des API du DOM, donc indépendantes du langage utilisé.

En ce qui concerne le langage lui-même, il n'a pas stagné non plus :
- https://developer.mozilla.org/fr/Nouvea ... Script_1.6
- https://developer.mozilla.org/fr/Nouvea ... Script_1.7
- https://developer.mozilla.org/fr/Nouvea ... Script_1.8
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
floor-eleven
Arias
Messages : 11
Inscription : 21 janv. 2009, 17:34

Message par floor-eleven »

Sur le fait que la majeur partie des applis Mozilla soient écrites en javascript, je veux bien une explication, parce que javascript n'est pas du tout fait et ne peut pas écrire de logiciel. En l'occurence, Gecko est écrit en c++ :)

http://en.wikipedia.org/wiki/Gecko_(layout_engine)

Tu vas faire du web avec , des contrôles de site ou des appli web plus complexe (j'entend par là, via un navigateur). On peut prendre exemple sur gmail, ou autre appli google effectivement. Mais ça n'empêche pas que ce langage soit difficilement maintenable.

Après, tu peux conciderer que c'est une question de gout mais pour n'avoir jamais trouvé personne appréciant travailler avec javascript sur un client léger dont la techno serveur est plus riche, je me sens un peu légitime à dire ça. Le premier vrai degugger javascript viens de firebug et n'est pas vieux. C'est pas non plus un langage fait pour de l'objet (oui, on peux en faire mais il suffit de bosser sur de vrai langage objet pour voir que c'est vraiment pas génial). On sent que javascript est fait pour du code simple coté client. Je sais pas si tu as bossé quelques temps avec de grosses appli javascript mais franchement, je trouve que c'est l'horreur !

Et quant aux évolutions javascript jusqu'a la 1.9, c'est tres bien, mais ça n'en fait toujours pas un langage pour grosse appli, parce que ce n'est pas son domaine.

Il n'y a qu'a voir pourquoi Brendan Eich et la TC39 ont choisis de laisser tomber l'es4 : parce que les fonctionnalités indispensables à des langages comme java et très pratique en actionscript sont cnocidéré comme inutile pour javascript parce qu'il faut que ça reste simple.



Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Toute l'interface de Firefox est en XUL et manipulée en javascript.
Évidemment, le moteur javascript derrière est en c++, et agit sur les librairies graphiques du système, mais il n'en reste pas moins qu'il y a beaucoup de javascript :wink:

Message envoyé avec : Mozilla/5.0 (X11; U; Linux x86_64; fr; rv:1.9.0.5) Gecko/2008121623 Ubuntu/8.10 (intrepid) Firefox/3.0.5
teoli2003
Animal mythique
Messages : 7580
Inscription : 13 nov. 2005, 09:23

Message par teoli2003 »

Comme le dit Calimo, toute l'interface de Firefox (mais d'autres applications comme Thunderbird est en javascript.) Bien sûr le cœur (Gecko) est en C++, mais Javascript est un langage à part entière.

D'ailleurs peu à peu des pans entiers de C++ sont remplacés par du JS dans Firefox. Ainsi Places (sqlite est en C), mais l'i/f est JS, le Login Manager a été réécrit en JS, etc.

Lorsqu'on a plus besoin d'écrire du JS caviardé pour fonctionner sur x navigateurs différents utilisant tous un dialecte de l'EcmaScript, mais que l'on peut utiliser toute la puissance de Javascript, c'est un langage très performant.

Et moi qui programme toute la journée en C++/Java je n'hésiterais pas une seconde à travailler en Javascript pour une application multiplateforme. Ce sont les limitations de XUL qui sont contraignantes, pas celles de JS.

Message envoyé avec : Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2a1pre) Gecko/20090124 Minefield/3.2a1pre
La liberté n'est jamais accordée de bon gré par l'oppresseur; elle doit être exigée par l'opprimé (Martin Luther King).
Les convictions sont des ennemis de la vérité plus dangereux que les mensonges. (Nietzsche).
Native Mozillian.
floor-eleven
Arias
Messages : 11
Inscription : 21 janv. 2009, 17:34

Message par floor-eleven »

Ah ok pour xul/JS, du coup, mon laïus sur l'utilisation faite de js est un peu naze, dsl :).

Je n'avais pas pensé a Xul ne connaissant pas du tout cette techno. Maintenant, je suis scié parce que tu dis Téoli, en temps que dev c++/java !

Je serais très intéressé de savoir ce que tu apprécies sur ce langage. Qu'est ce qui te ferait choisir ce langage par rapport à du java ou du c++..

Personnellement, je travaille essentiellement sur du java/j2ee en mixant web et client lourd Swing, et donc je fait du javascript dans le cadre de controles de surface. La depuis Firebug, ça change la vie mais sinon, le fait de bosser en procédurale j'ai du mal. Après je sais pas si avec Xul, il y'a un modele MVC, si le système d'événement est assez puissant pour implémenter un pattern observateur, s'il y'a un système d'exception ou équivalent... et puis voilà, faudrais que je regarde comment vous faite de l'objet de manière exploitable parce que faire un logiciel en procédural, j'aurai du mal.

Parcontre, je dis pas que je choisirai du java, mais plutôt de l'ActionScript via Flex ou Air, je trouve que la direction qu'a pris l'as, les classes (non prototype), packages, Modele d'event, et puis les nombreux outils pour manipuler, images video, sons, textes, xml et n'importe quel protocole réseau via les Sockets. Le fait que le flash player commence à utiliser le GPU. Mais bon, les goûts et les couleurs..

Enfin bref, en fait je suis preneur d'exemple qui me montre le potentiel de javascript. Faudrais que je chope les sources d'un gros projet Xul pour être fixé :)
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

floor-eleven a écrit :Sur le fait que la majeur partie des applis Mozilla soient écrites en javascript, je veux bien une explication, parce que javascript n'est pas du tout fait et ne peut pas écrire de logiciel. En l'occurence, Gecko est écrit en c++ :)

http://en.wikipedia.org/wiki/Gecko_(layout_engine)
Gecko n'est pas l'application, c'est la plateforme. La seule raison pour laquelle on peut avoir envie d'écrire des parties des logiciels Mozilla en C++ ce sont les performances. Et c'est ce qui est en train de changer drastiquement avec les nouvelles implémentations de JavaScript.

Tiens, un exemple que j'ai découvert aujourd'hui :
http://ejohn.org/blog/ocr-and-neural-ne ... avascript/
Tu vas faire du web avec , des contrôles de site ou des appli web plus complexe (j'entend par là, via un navigateur). On peut prendre exemple sur gmail, ou autre appli google effectivement. Mais ça n'empêche pas que ce langage soit difficilement maintenable.
Il ne tient qu'à toi d'utiliser des bibliothèques correctes dès le départ, il y en a de plus en plus.
Une petite liste : http://en.wikipedia.org/wiki/Comparison ... frameworks
Le premier vrai degugger javascript viens de firebug et n'est pas vieux.
Venkman existe depuis des lustres.
C'est pas non plus un langage fait pour de l'objet (oui, on peux en faire mais il suffit de bosser sur de vrai langage objet pour voir que c'est vraiment pas génial).
Objet ne veut pas dire forcément dire classe. Les langages à prototypes sont différents c'est vrai, il faut un peu s'habituer, mais ce ne sont certainement pas de « faux » langages.
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
floor-eleven
Arias
Messages : 11
Inscription : 21 janv. 2009, 17:34

Message par floor-eleven »

J'ai p-e à faire plus de javascript pour comprendre mais je ne pense pas que la seule raison de faire du c++ soit les performances.

Ok, Mozilla fait le choix de migrer du code vers javascript mais à par eux, les exemples ne sont pas légion. Il veulent imposer Firefox en temps que plate-forme de développement avec Xul/js autant qu'Adobe et MS veulent imposer leurs technos RIA, ce n'est pas ettonant qu'ils veulent donner l'exemple.

Bon oki, grace à Mozilla et XPComm, on peux faire beaucoup de chose en js maintenant, mais pour moi, js n'as pas été conçu pour ça.

Et puis l'objet prototype est une chose, le prototype selon Js en est une autre, comme je le disait précédemment, il est hyperpermissif et je doute de voir un spécialiste s'avancer sur le potentiel Objet de Js. Je reste convaincu que c'est pas fait pour. Les objets en js ressemblent plus à des tableaux associatifs !

J'ai découvert lisaac avec un collègue qui bosse dans l'equipe de sonntag et là, j'ai compris ce que c'etait que le proto ...

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
teoli2003
Animal mythique
Messages : 7580
Inscription : 13 nov. 2005, 09:23

Message par teoli2003 »

Zieute: https://developer.mozilla.org/en/Mozill ... rcurial%29


Message envoyé avec : Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2a1pre) Gecko/20090124 Minefield/3.2a1pre
La liberté n'est jamais accordée de bon gré par l'oppresseur; elle doit être exigée par l'opprimé (Martin Luther King).
Les convictions sont des ennemis de la vérité plus dangereux que les mensonges. (Nietzsche).
Native Mozillian.
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

floor-eleven a écrit :Ok, Mozilla fait le choix de migrer du code vers javascript mais à par eux, les exemples ne sont pas légion.
Il y en a plus que tu ne le crois.
https://developer.mozilla.org/en/XULRunner_Hall_of_Fame
https://developer.mozilla.org/en/List_o ... plications

« Il n'a pas été conçu pour ça » ne veut pas dire grand chose. On peut utiliser à peu près n'importe quel langage pour faire n'importe quoi.

Un vieil article de Douglas Crockford (2001) : JavaScript: The World's Most Misunderstood Programming Language et sa suite en 2008.
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
floor-eleven
Arias
Messages : 11
Inscription : 21 janv. 2009, 17:34

Message par floor-eleven »

Bon oki, je me suis avancé sur un sujet que je ne connais pas :). On peux effectivement, faire beaucoup plus de chose en js que je ne pensais.

Parcontre Benoit, « Il n'a pas été conçu pour ça » veut, bien sur, dire quelque chose !

Tu ne vas pas faire un site web en assembleur, mais ouais pourtant tu pourrais.... ce serait un des trucs les plus tordu jamais fait !

Bon bah là, en moins exagéré, c'est pareil. Un langage conçu pour du web qui migre vers le monde du logiciel parce qu'on cible une population de développeur web, ça se fait mais c'était pas fait pour ! (Crockford rajoute aussi justement que le navigateur devient une plate-forme logicielle importante et que javascript étant déjà majoritairement sur ce marché, son choix se justifie)

Quant à la liste d'application basé sur du code Mozilla, c'est pareil. Beaucoup veulent fournir un moteur de scripting pour étendre aux développeurs les fonctionnalités de leurs outils. On parle de scripter un pdf par exemple, donc évidemment qu'on allait pas demander à faire du c ou du java pour faire ça !
Et du coup, ça servait à rien de reinventer la roue, le moteur javascript de mozilla est tres bien !

Donc faut pas confondre: choisir de faire un logiciel en javascript, et choisir le javascript pour permettres aux utilisateurs d'étendre les fonctionnalités ou d'automatiser l'outil développé !

Et la pour le coup, "ça veux rien dire" de mettre un grand nom dans une page sans définir dans quelle mesure il utilise javascript !

Enfin bref, JE RECONNAIS ne pas connaitre assez javascript pour en parler avec vous, mais faut que t'arrête d'être aussi agressif quand on critique ton langage de prédilection Benoit !


Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
Dernière modification par floor-eleven le 25 janv. 2009, 12:38, modifié 1 fois.
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Bing [Bot] et 2 invités