Le Meilleur Tableau De Bord De L'Architecture
J'ai besoin de construire un tableau de bord pour une application, le tableau de bord seront différents de dashlets et chaque dashlet peut avoir l'une des choses suivantes:
- Graphiques (JFreeCharts et un peu de Javascript (Graphique)
- Tableau de données à partir de tables
- De données provenant de sources externes
- Cartes
Ce qui peut être une bonne architecture pour ce genre de demande?
Ce que j'ai actuellement à l'esprit est:
- Chaque dashlet doit avoir son propre cycle de vie et lorsque les charges de tableau de bord, il doit juste afficher l'INTERFACE utilisateur de la dashlets initialement.
- Après le chargement de la page chaque dashlet envoie un serveur d'appel (en fonction de son type) pour récupérer ses données
- Après que les données ont été extraites, chaque dashlet (en fonction de son type) rend les données.
OriginalL'auteur ABJ | 2011-07-20
Vous devez vous connecter pour publier un commentaire.
Tout d'abord, il y a beaucoup de front-end des cadres pour vous aider à démarrer. Certaines des plus populaires comprennent:
Un peu de recherche sur Google peut le rendement des avantages et des inconvénients de chaque et je voudrais le poids de vos options en conséquence.
Cela étant dit, le problème de base qui vous pose qui semble similaire à la nôtre. En fin de compte, nous avons construit quelque chose d'un peu différent dans la maison. De nombreux cadres sont optimisés pour l'affichage d'un singulier canonique "vue", basé sur le Modèle traduit par la DB et un Contrôleur pour gérer de petits changements. Un tableau de bord a, en substance, une variété de différents modules qui doivent être en train de faire leurs propres choses comme vous l'avez mentionné dans votre question. En raison du nombre élevé de modules indépendants, j'ai le sentiment que vous pourriez ressentir des douleurs dans certains cadres énumérés ci-dessus.
Je ne peux pas vous dire exactement comment mettre en œuvre un module de l'architecture, mais voici quelques règles de base que nous avons utilisées lors de la conception de la nôtre:
Conception De Module:
Rendu:
Orthogonalité:
De la connexion à backend:
Récursive:
Testable:
Si quelqu'un connaît d'autres cadres, le long de ces lignes, merci de partager!
OriginalL'auteur Evan
Notre application web est basé exactement sur cette architecture et de la production depuis la fin de l'année dernière. Vous pouvez le voir à http://beebole.com
Nous avons juste optimisé les appels à notre propre serveur.
Il n'y a qu'un seul appel pour obtenir le commun des données nécessaires pour la plupart des widgets, chaque fois qu'un écran est chargé.
Alors si un widget de besoin de données supplémentaires, il fait un appel lui-même à notre serveur.
Les widgets externes appeler leurs propres données, mais à un autre serveur.
Une question, si j'ai bien compris, lorsque le chargement de la page, il charge tous les widgets qui font référence à votre propre serveur, avec leurs données? est-ce exact?
Chaque widget est une page web, avec son format HTML, CSS et JS. Une fois qu'ils sont chargés si ils n'ont pas assez de données(déjà disponible depuis le premier appel ou à partir d'autres widgets), ils font un appel à notre serveur.
il serait génial si vous pouviez écrire un tutoriel sur comment créé le tableau de bord pour l'abeille-fût app! son très impressionnant!!
c'est surtout un CSS/DIV combinaison. Inspecter l'un des curseur par exemple, dans les Outils de Dev ou Firefox, et vous verrez comment les DIVs autour sont réalisés. Il n'a pas été facile d'en arriver là, mais le résultat est, je pense, simple à comprendre.
OriginalL'auteur Mic
Je vous déconseillons d'utiliser un web personnalisé cadre, alors qu'il existe de nombreux gratuits.
Comme mentionné dans une autre réponse, le traditionnel style MVC cadres ne sont pas vraiment bien adaptée à votre "tableau de bord" souhaité de style de l'INTERFACE utilisateur. Ils sont mieux utilisées pour la création de statique sites web basés sur les données récupérées ailleurs. Ils ne gèrent pas l'interaction de l'utilisateur bien et vous avez généralement à la main de rouler vos propres AJAX pour faire quelque chose d'utile sans une demande de page.
Une meilleure race de frameworks web à regarder sont le Web 2.0 fraemworks, aussi connu comme les cadres qui vous aider à construire applications web. Il est important de comprendre la différence entre un site web et des applications web. Ils sont généralement différenciés par le dernier étant interactif et de l'ancienne étant la plupart du temps statique. Les sites web qui ont aussi certaines composantes interactives sont encore les sites web. Une bonne façon de penser, il est de se demander "est-ce à se sentir comme une application de bureau?".
Pour le développement d'applications web en Java (JVM) domaine, je voudrais utiliser Vaadin. Il vous permet d'écrire du code Java similaire à Balancer la programmation, avec des événements basés sur les méthodes. Vous pouvez même éviter d'écrire du HTML tout à fait si vous souhaitez par la définition de vos points de vue par programmation. Cela vous permet de unittest votre point de vue logique (dans les applications web, il est plus que d'habitude) ce qui n'est pas possible avec HTML ordinaire, à partir de modèles de cadres de. L'autre principal avantage est qu'il a construit dans les méthodes qui vous permettent d'écrire du code Java pour gérer dynamique, asynchrone fonctionnalités et tout cela se traduit en JavaScript automatiquement. Pas besoin d'écrire des 4 langues différentes lors de l'écriture de votre application web, il suffit d'écrire Java pour tout! L'essayer, c'est un plaisir de travailler avec!
Une autre application web cadre qui reçoit beaucoup d'attention est Ascenseur. Je n'ai pas d'expérience avec elle, mais de nombreux développeurs à qui j'ai parlé ont promu moi. Je crois qu'il utilise des modèles HTML avec du code Java en tant que back-end. Il est aussi apparemment vraiment facile à prendre en main et de votre application web en rotation. Il a également un support intégré pour faire de l'AJAX comme fonctionnalité. La peine de chercher en au moins.
Il y a probablement beaucoup plus de web app cadres qui répondent à vos besoins. Elles ont toutes l'avantage d'être testé, indépendamment mises à jour et sécurisé*. Si vous roulez votre propre cadre de ce projet, vous avez besoin de s'inquiéter à propos de tout vous-même. Écrit un framework web qui n'offre pas quelque chose de nouveau serait encore écrit un autre langage de programmation qui n'est pas novateur, il est juste un gaspillage de temps.
OriginalL'auteur Jesse Webb
Je pense que ce que vous cherchez est plus le long des lignes de gérer ou de contrôler votre tableau de bord. Je suis en train de concevoir quelque chose de similaire. Je vous suggère de regarder sur google app engine, il peut être utilisé pour automatiser et de contrôler ce: https://developers.google.com/appengine/docs/whatisgoogleappengine
Aussi regarder ces open-source des tableaux de bord: https://github.com/twilio/stashboard
OriginalL'auteur KingRao