2009-07-27 5 views
1

Mise à jour: Cette question a été inspirée par ma plus grande quête pour la cartographie ontologiquement l'ensemble de l'architecture des systèmes logiciels enchilada. I've written a blog post about it, et j'espère que cela aidera à clarifier ce que je suis après. De nombreuses structures et piles pilotées par des événements ont trop de variations pour que ma petite tête puisse se déplacer. Y a-t-il quelque part des ressources qui définissent les grandes lignes d'un modèle d'événement d'application raisonnable, quels sont les événements qui se produisent et quels déclencheurs sont les plus courants? J'ai mon propre framework avec un plugin et une architecture événementielle, mais je veux l'ouvrir et, en tant que tel, je voudrais me rapprocher d'un terrain commun pour ne pas aliéner les gens.Application/MVC Modèle d'événement

Donc, pour clarifier; ceci est pour une application, ce qui signifie configurer l'environnement, les dépendances, les sources de données (comme les bases de données), et être un framework MVC configurant le modèle, la vue, lançant des contrôleurs/actions et dans l'interface graphique différentes étapes de l'interface (en-tête, contenu, colonnes, etc.).

Des idées? Pensées? Pointeurs? (Et je l'ai fait neutre langage et plate-forme à ce stade)

Répondre

3

J'ai lu votre article de blog, dont j'ai trouvé une lecture extrêmement intéressante, mais ... cette question ne semble pas refléter l'ampleur du problème que vous présentez ici.

Ce que vous cherchez est très abstrait et théorique.Ce que je veux dire, c'est que si vous attachez une de ces idées à la technologie actuelle, vous vous retrouverez coincé avec. C'est pourquoi beaucoup d'entre nous hésitent à utiliser un cadre. Surtout les produits «ré-étiquetés» prétendant soudainement se conformer à la tendance. Nous choisissons principalement sur la base de ce qui semble être nécessaire pour atteindre un résultat prédéterminé.

Les cadres (ou les outils en général) qui ciblent le domaine de l'architecture d'application se distinguent principalement par l'importance de la responsabilité pour laquelle ils sont conçus. Le printemps, par exemple, ne traite que du concept de découplage et est donc facilement adopté et utilisable dans de nombreuses situations. La qualité de tout cadre est exprimée en termes de comment les concepteurs de tels cadres ont pu garder leurs produits dans les limites de cette responsabilité. Certains produits de bout en bout feront exactement le contraire, les générateurs de code étant parmi les «pires» d'entre eux.

Pour répondre à votre question en haut de cette page, je ne pense pas qu'il existe un cadre qui fasse ce que vous voulez en ce moment et je ne pense pas qu'il existe un seul modèle de fonctionnement des applications (devrait). Gardez à l'esprit que le domaine de l'architecture d'application traite plus de la technologie que des concepts. En d'autres termes: Si cela fonctionne et répond aux exigences, alors vous avez à peu près terminé. Cela dit, vous pourriez trouver quelque chose de valeur dans les systèmes basés sur des agents.

0

Je voudrais jeter un oeil à Spring pour Java, et le module XT Framework Spring (http://springmodules.dev.java.net/docs/reference/0.9/html/xt.html), qui prend en charge apparemment l'architecture axée sur les événements, comme le démarrage points. Spring dispose d'un framework MVC (incluant le routage conventionnel vers les contrôleurs), d'une configuration db (pour Hibernate, en particulier), ainsi que d'une prise en charge complète de l'injection de dépendances. Il existe également un mécanisme au printemps pour modulariser vos applications Web, appelé Spring Slices. Et il peut être intégré à Jersey pour construire des applications RESTful.

(Malheureusement, j'ai essayé de fournir des liens vers tout, mais ce lieu ne laisse passer que les nouveaux utilisateurs postent un seul lien. Vous aurez à faire quelques googler :))

+0

Merci pour la réponse, mais je ne veux pas être lié à une technologie, une entreprise ou une ligne de pensée. Je suis après les événements (noms, valeurs, déclencheurs, actions, etc.) mais ce n'est pas lié. J'ai édité ma question pour refléter ceci, avec un pointeur vers mon article de blog. – AlexanderJohannesen

1

Heh. La plupart des développeurs choisissent le cadre principal pour lequel ils aiment les outils et s'en tenir à lui. C'est généralement la stratégie gagnante. Je sympathise avec votre désir de ne pas épouser un seul fournisseur. Gardez à l'esprit cependant que, dans le développement de votre propre framework, vous allez de toute façon être lié à un fournisseur unique. :-)

Y at-il quelque part des ressources qui définit les grandes lignes d'un modèle d'événement application raisonnable, quels événements il y a, et les déclencheurs les plus courantes?

Je ne pense pas. D'après ce que je vois, il y a deux sortes de modèles: ceux avec un cadre réel avec lequel vous pouvez faire un dialogue de saisie de données, et les méta-méta-modèles abstraits qui sont optimisés pour la modélisation eux-mêmes. Essayez d'examiner quelques cadres actuels qui ont une bonne documentation en ligne et faites une référence croisée à la terminologie principale dans une feuille de calcul. C'est un exercice intéressant.

+0

J'ai mis à jour mon article de blog (lien en haut) avec un peu plus de ce que vous suggérez. Quelle douleur cela s'avère être. :) Je suis heureux avec quelque chose de plus méta et le remplir, cependant, mais on pourrait penser qu'il y a eu beaucoup de travail dans ce domaine. En ce qui concerne mon propre framework, je crée un framework basé sur Topic Maps où cette définition de modèle d'événement fera partie d'une ontologie ouverte partageable pour tous, à condition que d'autres soient prêts à prendre quelques étapes supplémentaires et à faire l'ontologie -thang avec leurs propres cadres. Hmm. J'en doute. Merci d'avoir répondu. – AlexanderJohannesen