Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 16-12-2008 09:12:05

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Ext.js avis des pratiquants

Bonjour,

Je me permet de poser ici une question qui n'a pas vraiment de rapport avec Zend.

Je m'adresse aux utilisateurs de la librairie Ext.js 2.0.
Je l'ai pratiqué plus ou moins en travers pour ma culture personnelle, et maintenant face à un projet naissant dans ma boîte, je pourrais me décider à "purchase" et à l'utiliser dans un environnement pro.

Sauf que, je n'ai pas l'intention d'utiliser leur système de layout (même si c'est plutôt pas mal), je ne vais pas mettre en place une interface full ajax.

Je vais plutôt dans un premier temps utiliser des composants parsemés par ci/par là dans mon application. Il s'agit dans un premier temps d'utiliser abondamment leur composant grid que je trouve merveilleux, et certains composants de formulaires, comme les datepickers ou autre.

Mais pour cette utilisation, est-ce vraiment le bon choix ? La librairie n'étant pas forcément très light, et sachant que je ne vais l'utiliser qu'à un très faible pourcentage de son potentiel.
(mais elle est très séduisante cette librairie :p, et j'ai du mal à trouver des composants indépendants qui répondent aussi bien à mes attentes)

Et aussi, avant d'acheter, je voudrais avoir quelques retours positifs et négatifs sur le produit. Et en fait surtout les points négatifs aux quels je risque de me confronter.


Si certains savent m'informer.

Merci.

A+ benjamin.


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#2 16-12-2008 10:00:21

JEDI_BC
Membre
Date d'inscription: 27-10-2008
Messages: 38

Re: Ext.js avis des pratiquants

Je lorgnes aussi sur Ext.js depuis un moment mais l'absence de doc françaises (et d'une doc bien faite surtout) me freine pour son intégration.

Graphiquement j'ai rien vu d'autres d'aussi fini. Par contre concernant la lourdeur de chargement, si c'est pour un site à forte charge, je te conseilles de bien jouer sur la conf apache et mod_expire afin que le navigateur le garde en cache un max wink

Hors ligne

 

#3 16-12-2008 10:04:09

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Ext.js avis des pratiquants

Chez mois trois usages
1) amélioration de L'IHM faite en HTML dans ce cas un script cherche les éléments HTML ayant un attribut particulier et les transforme en composants ETXJS tun table en grid un formulaire en fromPanel etc.
dans ce cas les option sont limités à ce qu'on peut mettre dans un attribut HTML.

2) Intégration de composant dans le code HTML. dans ce cas là on ne place pas d'élément HTML mais un appel à Extjs pour construire le composant. il est alors possible d'avoir toute la panoplie des options du composant.
Necessite de connaitre JS et EXT et pose le problème de performance si on met le code js dans la vue. en effet ce code sera recompilé par la machine javascript à chaque fois. mieux vaut le metre dans un script à part
mais alors comment lui passer les information de la vue. pour répondre à cette question je mets un js dans la vue qui affecte un bout de JSON à une variable js puis je charge le script du composant qui lui utilise cette variable JSON. la vue est donc éclaté en HTML et JS

3) Approche Full AJAX j'ai un projet développé sous cette forme et là EXTJS fait des merveille. mais il faut rester vigilant j'ai bannis le js généré par php pour des raisons de perfs. Mon indexController fournis une vue qui ne contient que le positionnement d'une variable JSON (baseURL entre autre) et ensuite charge les scripts JS tous statiques.
ensuite tout est en AJAX et j'ai des contrôleur spécialisés qui ne retourne que du JSON.
L'application client (ajax) ne communique qu'avec sont propre serveur (pour la sécurité) je serveur ne retourne que des données JSON jamais d'invocation de méthode côté client. Cela permet d'avoir une interface indépendante. si une action doit découler de la réception d'une info c'est un trigger côté client qui le fait

Voila pour l'usage que j'en fais avec quelques collègues
A+jyt

Hors ligne

 

#4 16-12-2008 11:23:17

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: Ext.js avis des pratiquants

Salut,

Pour la doc, ça ne me pose pas de problème. J'ai déjà fait une petite appli avec Ext et ça c'était bien passé.

@sekaijin :

Dans un premier temps ce serait le "2)" pour moi. Si j'ai compris ton astuce pour éviter de recompiler le JS, tu as un script JS dans un fichier JS qui en fonction de ta variable JSON (renseignée dans la vue) charge le bon composant avec les bonnes données ?

Tu rajoutes donc une couche JS entre le HTML et Ext.js et tu dois dans cette couche interpréter ce que la vue demande pour ensuite passer la bonne info à Ext. C'est un peu lourd non ?
Avec les machines d'aujourd'hui, c'est vraiment un frein de recompiler systématiquement le JS ? Sachant que chaque client gère sa propre charge, donc peu importe au niveau du serveur.


A+ benjamin.

Dernière modification par Delprog (16-12-2008 11:24:02)


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#5 16-12-2008 12:03:41

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Ext.js avis des pratiquants

non ce n'est pas ça
si je met un grid dans ma vue je vais faire ça dans une balise script

Code:

proxy = new Ext.data.HttpProxy({
    url: '<?php echo $this->baseUrl ?>Equipement/getMonthEquipement/id/<php echo $this->view->equipement->id ?>'
});
...

imagine que ton composant soit très complexe (j'en ai qui fons plusieurs centaine de lignes de codes
1 ton code n'est pas facile à lire
2 il est transmit à chaque appel
3 il est recompilé à chaque fois

pour éviter ça je fais ça tpijours dans une balise script

Code:

var equipement = {
   baseURL: <?php echo $this->baseUrl ?>,
   equipement: <?php echo $this->view->equipementJson ?>,
};

var moncomposant = new EquipementCpt(equipement);

le code de EquipementCpt est dans un script c'est exactement ce que tu aurais fais dans la vue mais il n'est chargé qu'une fois et compilé qu'une fois

Code:

proxy = new Ext.data.HttpProxy({
    url: Cfg.baseUrl + 'Equipement/getMonthEquipement/' + cfg.equipement.id
});
...

et dans ton contrôleur au lieu de passer ton objet equipement à la vue tu lui passe un Zend_Json::encode($equipement)

Je n'ajoute donc aucune couche supplémentaire.

A+JYT

Hors ligne

 

#6 16-12-2008 12:38:04

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: Ext.js avis des pratiquants

Ok cette fois je comprend mieux.

Par contre tu passes toujours ton objet entier en JSON ? pourquoi ?

Dernière modification par Delprog (16-12-2008 12:38:15)


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#7 16-12-2008 15:29:38

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Ext.js avis des pratiquants

non je passe que les élément dont j'ai besoin
A+

Hors ligne

 

#8 10-02-2010 10:28:02

phifeshaheed
Membre
Date d'inscription: 06-05-2009
Messages: 29

Re: Ext.js avis des pratiquants

sekaijin a écrit:

Chez mois trois usages
1) amélioration de L'IHM faite en HTML dans ce cas un script cherche les éléments HTML ayant un attribut particulier et les transforme en composants ETXJS tun table en grid un formulaire en fromPanel etc.
dans ce cas les option sont limités à ce qu'on peut mettre dans un attribut HTML.

As tu des exemples d'implementation de cette méthode?

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages