7
votes

Bon cadre PHP pour des applications Web entièrement ajax?

Je développe une application Web qui se concentre fortement sur Ajax. Toute l'application est juste sur une page, à l'exception des threads dans les pages traditionnelles afin de pouvoir être indexées.

Je dois donc avoir des codes JS très structurés et je me demande s'ils sont des cadres là-bas qui sont destinés aux applications Ajax.

par exemple. CECONDIGNITER, CakePHP et d'autres personnes, j'ai lu ne vous concentrez pas sur cela. Ils organisent simplement un code PHP régulier selon MVC.

Cause mon code commence à être très désordonné (surtout le code JS) et j'ai vraiment besoin d'une certaine structure ici. Y a-t-il un moyen d'avoir la même structure MVC + OOP en JavaScript? Je n'ai jamais entendu parler de personne en parlant. Même si je mettez des codes JS dans des fichiers séparés, un pour chaque page, par exemple, il y a beaucoup de lignes et je me sens perdu et crunch chaque fois que je dois ajouter de nouvelles fonctionnalités.

serait génial avec des suggestions et des idées comment structurer cela!


0 commentaires

6 Réponses :


1
votes

Vous pouvez consulter Zephyr . Je ne l'ai jamais utilisé moi-même, je sais juste que c'est principalement pour les applications Ajax.


1 commentaires

Concept intéressant, mais malheureusement pas beaucoup d'adeptes et qu'il utilise CPAINT et son développement arrêté 2007.



4
votes

Je pense que vous avez le mauvais état d'esprit à ce sujet.

Les sites ou applications d'Ajax-lourds ne sont pas si différents forment leurs contreparties Web 1.0 dans leurs fondements. Vous avez toujours les mêmes composants de base: demandes http et réponses. C'est juste qu'avec Ajax, vous demandez rarement une page HTML complète. La plupart du temps que vous demandez des extraits de HTML, XML ou JSON.

Donc, juste parce que vous aurez un site Web / une application de 90% + ajax piloté ne signifie pas que vous devez jeter des conventions existantes telles que MVC et rechercher quelque chose de nouveau.

et la plupart des cadres modernes ont beaucoup de choses AJAX cuits au four: ZF, Symfony, Gâteau, etc.

Edit

Je ne connais aucun cadre, PHP ou JavaScript, axé sur ce que vous demandez. Cela étant dit, vous pouvez obtenir quelque chose à regarder JavaScript haute performance: Pourquoi tout ce que vous avez été Enseigné est faux , Conception de la riche expérience Web et Applications AJAX haute performance , même si elles sont âgées de quelques années maintenant.

En outre, envisagez de creuser dans des projets qui sont AJAX lourds et de voir comment ils cochent. Les applications basées sur l'interface utilisateur extjs et jQuery seraient un bon départ.


3 commentaires

Je comprends que, je n'ai pas dit que je voulais jeter la tendance MVC pour le backend, je me demandais comment puis-je organiser le code JavaScript / JQuery à l'avant, car ma demande a eu beaucoup de ce code. J'ai donc besoin d'un cadre PHP Ajax pour cela. Et j'ai trouvé une liste de frameworks PHP Ajax sur le net. Zf est pour Java?


Je vois. Je vais éditer ma réponse pour fournir des informations


Les deux premiers liens sont des annonces



0
votes

Consultez Yii ou Zend Cadre .


2 commentaires

Pourriez-vous brièvement expliquer comment ceux-ci peuvent m'aider avec la communication entre JavaScript et PHP ou la structure du code JavaScript?


Si vous suivez les directives-cadres sur la manière de faire des choses, alors cela fonctionnera simplement. Une réponse JSON est exacte comme une réponse Text / HTML normale que vous obtenez JSON au lieu de HTML. Donc, vous recherchez les avantages d'un cadre normal qui facilite les douleurs des données de demande d'analyse et dressant des réponses appropriées. Si j'ai une application ZF, je peux toujours utiliser mon code de baseBase pour parler à un client sur XML ou JSON. Ce sont juste des transports. Mais le cadre vous aide à vous guider sur la manière de le créer / de l'organiser, ce que vous étiez en premier lieu.



1
votes

Le cadre Symfony est idéal pour AJAX, et ils ont une approche bien pensée impliquant le backend MVC et votre code JavaScript, en particulier les bibliothèques JavaScript populaires telles que JQuery et Scriptaculeux.

Cela vaudrait la peine de lire le temps de lire le Chapitre sur Ajax dans Le didacticiel Symfony Askeet juste pour voir comment quelqu'un d'autre l'a fait. En outre, le CHAPITRE AJAX dans le livre plus ancien Symfony décrit d'autres Utilise outre la fonction de recherche automatique de la recherche indiquée dans le didacticiel d'askeet.


0 commentaires

0
votes

Je construis des applications comme celles-ci. Mon architecture:

  • côté serveur: zend framework
    Le code PHP est exposé comme un ensemble de services Web JSON-RPC. Les services Web sont implémentés avec Zend_Json_server et ne faites rien de génération HTML (toutes les interfaces internes sont traitées sur le client). Pour cette raison, le code côté serveur est assez limité (interaction de la base de données, gestion de la session et sécurité).
  • côté client: extjs
    Le code est bootstrapped à partir d'une page PHP unique hébergeant le cadre ExtJS, puis chargez de manière dynamique les composants JavaScript en tant que fichiers distincts à la demande. Chaque composant JavaScript appelle un service Web pour initialiser et charger / enregistrer des données. Il existe également des fichiers de traduction spéciaux (générés dynamiquement à partir de PHP) pour corriger les prototypes de classe avec des traductions.

    Dans cette approche, les services Web sont pas renvoyer toute sorte de HTML pré-généré. Ce sont des ponts de données, des records de navette de l'arrière-plan. Toute la construction d'interface utilisateur est effectuée côté client. Zend_Json_Server expose une classe PHP en tant que service (les méthodes de la classe sont les fonctions du service). Cela empêche la conception PHP propre et offre une flexibilité ultime dans l'interface utilisateur. Le front-end mobile est construit autour des mêmes classes que le front-end RIA. Il est également facile de créer d'autres applications sur les mêmes services Web (par exemple une application Windows, une application iPhone, ...). La quantité minimale de code PHP conserve le haut débit du serveur.

    Si j'étais vous, je me concentrerais davantage sur ce que vous utilisez JavaScript que vous utilisez que sur un cadre PHP. Si vous allez tout le monde HOG AJAX (sans repli de base HTML), il n'est tout simplement pas question de faire participer le serveur dans la génération de l'interface utilisateur (il ralentit simplement l'application).


0 commentaires

1
votes

Vous voulez quelque chose de spécial pour Ajax, qui peut s'intégrer dans d'autres cadres? Essayez, cjax: http://cjax.sourceforge.net/examples/ , bon pour Height Ajax, avec des contrôleurs et des itinéraires AJAX.

On m'a dit de mettre plus de détails alors c'est ici ...

Il vous permet d'écrire AJAX du côté PHP, cela vous donne de nombreux outils que vous pouvez utiliser pour rendre votre expérience de développement une conduite en douceur. Il vous enregistre également des tonnes de temps de réinventer la roue

CJAX est livré avec plus de 70 exemples / échantillons / docs et apis qui peuvent vous laisser faire des choses incroyables avec une seule ligne de code, sinon vous prendrait des heures ou des jours, voire des semaines!. Vous savez, le message de réussite habituel, à la lumièrebox, soumettant des formulaires avec Ajax et télécharger des fichiers avec Ajax, vous connaissez - les trucs habituels que vous utiliseriez dans votre application ou votre site Web sont devenus un e-Cosystème de fonctions Ajax.

CJAX consolide tout votre code AJAX en une seule place. Rendre votre code plus sécurisé. CJAX n'a ​​également qu'un seul point d'accès. Rendre votre application ou votre site Web très sécurisé. CJAX vous permet d'utiliser des classes et des itinéraires de vos appels AJAX via un répartiteur pour atteindre votre contrôleur Ajax. Comprend un système de rappel, qui vous permet de faire des demandes AJAX lorsque la page se charge, mais également lorsque vous déclenchez votre demande AJAX une fois sur le serveur, il vous permet d'exécuter plus de code AJAX et d'interagir avec votre application ou votre site Web à partir de votre dos. fin, juste de votre contrôleur. Cela vous donne la liberté d'aller d'avant en arrière, d'une méthode Ajax à l'autre, travaillant en harmonie. Comprend également une manière que vous pouvez maninoncer tous les éléments de la page, à partir de l'arrière-plan, tous effectués dans un appel AJAX.

CJAX est un morceau de machinerie pour construire des fonctionnalités Ajax. Utilise des méthodes non conventionnelles pour pousser les limites en vous permettant d'écrire très peu de courtes lignes de code.

CJAX a la puissance de vous permettre d'appeler et d'utiliser votre JavaScript existant, sans y apporter des modifications. Cela permet vraiment d'exprimer vous-même de la manière dont vous voulez exprimer. Vous avez de l'ancienne ou un nouveau JavaScript personnalisé, exécutez-le avec CJAX - Vous pouvez transmettre des données à vos fonctions existantes, les instançant, directement à partir de l'arrière-plan. Vous utilisez d'autres bibliothèques ou codes 3ème partie - aucun problème. CJAX vous permet d'exécuter et de transmettre des données à l'arrière à partir de l'arrière-plan, vous pouvez les appeler autant de fois que vous le souhaitez, aucune limite, seul le ciel. Vous pouvez passer des chaînes simples, des entiers, des tableaux ou des objets entiers. Devinez quoi, en fait, c'est ce que les plugins de CJAX sont, «plugins» est juste une formalité, mais ce qu'ils sont vraiment - le code personnalisé a couru avec CJAX. Si vous exécutez votre code personnalisé, vous avez déjà construit un plugin CJAX!

Code CJAX est simple facile à comprendre et utilise la convention sur une approche de configuration pour faire le plus, avec moins.

Je vais vous donner quelques exemples: Pagination: http://cjax.sourceforge.net/examples/pagination.php Autocomplete, Uploader Ajax, etc.


2 commentaires

Bien que ce lien puisse répondre à la question, il est préférable d'inclure les parties essentielles de la réponse ici et de fournir le lien pour référence. Les réponses uniquement uniquement peuvent devenir invalides si la page liée change. - de l'avis


Bien sûr, pas un problème