Question

Pouvez-vous suggérer quelques bonnes framework MVC pour perl -- je suis conscient de l'est catalyseur

Le besoin est d'être en mesure d'exposer des services sur le perl infrastructure qui peut être appelée par Java/.Net applications de manière transparente.

Était-ce utile?

La solution

Je vais vous dire maintenant que le Catalyseur est de loin la meilleure réputation parmi les développeurs Perl en termes de développement rapide d'applications MVC.

En termes de "pur" MVC je ne suis pas sûr qu'il y a même que de nombreux "mature" ou au moins prêt à la production de solutions de rechange.

Si Catalyseur ne semble pas juste pour vous, alors vous peut appuyer sur le cadre léger CGI::Application pour répondre à vos besoins ou de prendre un coup d'oeil à certains des moins connus MVC, frameworks comme PageKit et Arbre de mai.

Autres conseils

Depuis ce vieux thread surgi, je vais parler de deux nouveaux ajouts à la Perl MVC monde:

  • Danseur (CPAN) qui est fortement influencée par Ruby Sinatra, connu pour être très léger
  • Mojolicious (CPAN) qui est écrit par le développeur à l'origine de Catalyseur à utiliser ce qu'il a appris là-bas, il n'a pas non essentiels dépendances, très modernes, objets internes (HTML5/CSS3/Websockets, JSON/XML d'analyseurs, de son propre UserAgent/moteur de template)

(N. B.J'ai utilisé Mojolicious plus de Danseur, et en tant que telle si j'ai raté quelques caractéristiques de la Danseuse que j'ai énumérés pour Mojolicious alors je m'excuse à l'avance)

Une autre alternative en plus de celles déjà mentionnées, c'est la Continuité;cependant, il est (comme le nom implique la poursuite plutôt que le MVC dans le sens typiques.Pourtant, il est intéressant de mentionner parce que c'est l'un des meilleurs Perl frameworks web.

Cela dit, j'aime Catalyseur beaucoup mieux que toutes les autres solutions.Et c'est toujours de mieux en mieux tout le temps!L'inconvénient est que les préférés de codage des approches continuent d'évoluer à un niveau plutôt pressés clip – mais pour les deux dernières versions, l'accent a été mis sur la compatibilité de l'API, de sorte que le fardeau est maintenant essentiellement mentale plutôt qu'administratives.Le prochain port de l'intérieur à l'Orignal, en particulier, est prête à fournir certaines prestations excellentes.

Mais l'argument le plus solide en faveur de Catalyseur, de l'OMI, est l'enchaînement de répartition.Je n'ai rien vu de semblable dans tous de web-framework-dom, et c'est un excellent outil pour garder votre code aussi SEC que possible.Couples bien avec une autre grande chose que Catalyseur fournit, à savoir uri_for – une méthode qui prend un contrôleur et un tas d'arguments et construit alors une URI qui distribue à cet endroit, qu'elle renvoie.Ensemble, ces installations signifie que vous pouvez structurer votre URI de l'espace de quelque manière que vous le jugez à droite, mais dans le même temps, la structure de vos contrôleurs afin d'éviter la duplication de la logique, et garder modèles indépendants de la structure de l'URI.

C'est tout simplement génial.

Détacher des observations faites par d'autres:Le catalyseur (qui a plus ou moins fourche d'Arbre de mai) est de loin le plus complet et le plus robuste d'entre eux.Il y a un livre par Jonathan Rockway qui va certainement vous aider à venir à bout avec elle.

En plus des "Enchaînés' envoi, de l' :Regex (et :LocalRegex) dépêche de méthodes fournissent une énorme flexibilité.La dernière application que nous avons construit ici et supporte un grand nombre de divers-à la recherche des URLs par le biais d'une poignée de sous-marins à l'aide de :LocalRegex.

J'ai aussi particulièrement aimé le fait que vous n'êtes pas limité à un particulier de templating de la langue ou de la base de données.La liste de diffusion (et le livre), les deux ont une préférence pour le Modèle::boîte à outils (comme je l'ai fait), et DBIx::Class (nous continuons à utiliser la Class::DBI), mais vous pouvez utiliser à peu près tout ce que vous voulez.Catalyseur est merveilleusement agnostique de cette façon.

Ne soyez pas rebutés par le fait de Catalyseur semble exiger la moitié de CPAN comme des dépendances.Une fois que vous l'obtenir vers le haut et en cours d'exécution, il est une machine bien huilée.Il a atteint un niveau de maturité maintenant que, une fois que vous vous confrontez avec elle, vous trouvez qu'il 'se fond dans le fond".Vous passez votre temps à résoudre les besoins de l'entreprise, ne se battent pas avec les outils que vous utilisez.

Il fait ce qu'il indique sur l'étain.Catalyseur++

Joue avec Accroupie depuis quelques jours et je dois dire qu'il a l'air très prometteur et amusant à utiliser.

Son micro webframework (ou web microframework ;-) et est fortement influencée par Camping ce qui est écrit en Ruby.

NB.Accroupie (& Camping) n'ont pas de modèle de composants inclus dans le cadre.Voici les auteurs des commentaires sur les modèles... "Les modèles?Le monde entier est votre modèle.;-) J'ai toujours été ambivalent sur la définition de la politique ici.Utilisez ce qui fonctionne pour vous"

Il est également CGI::, qui est une Application de plus, comme les entrailles d'un cadre.Il permet à une personne d'écrire de base de CGI et de la colle bits sur elle pour la rendre aussi personnalisé qu'ils le souhaitent.De sorte que vous pouvez utiliser pratiquement aucun des modules, ou juste au sujet de tout le monde sous le soleil.

Catalyst est le chemin à parcourir.Il est également Jifty, mais (la dernière fois que j'ai regardé), il était horrible de la documentation.

Si vous êtes déjà au courant de Catalyseur, alors je vous recommandons de vous concentrer sur elle.Il est mature, bien documenté, et a une très grande base d'utilisateurs, la communauté et la collection de plugins.

Pour votre problème, je prendrais un coup d'oeil dans Jifty::Plugin::REST qui permet l'accès à des modèles et des actions à l'aide de différents formats.

Laissez-moi juste dire que Jifty n'ont pas terrible de la documentation.Cependant, la plupart de la documentation est la documentation de l'API, mais il y a très peu de bruit la liste de diffusion qui donne des conseils utiles et des liens vers des applications.

Wiki à http://jifty.org/ est une autre ressource qui a de bits utiles.

Si votre objectif est de faire de la vidéo store (mon préféré de référence pour 4GLs et CRUD cadres) dans l'après-midi, il vaut vraiment le détour!

Une autre des options est Portique lorsqu'il est utilisé conjointement avec le BigTop module il peut réduire le temps qu'il faut pour construire un CRUD sites.

Il y a aussi Clearpress qui je peux recommander comme une base de données utile soutenu application.Il a besoin de moins de dépendance que le Catalyseur.Nous avons écrit quelques grandes applications avec elle, et je lance un badminton échelle du site web de l'utiliser.

J'ai construit avec certaines applications Varech, il est facile à apprendre et très utile.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top