2010-07-01 2 views
2

On vient de me demander de décrire l'architecture d'un projet de style dashbaord à grande échelle sur lequel je vais travailler.jQuery développement d'applications Javascript à grande échelle

J'ai déjà travaillé sur une application de cette taille et je suis un peu perdu sur ce qu'il faut dire.

Pourrais-je être pointé dans la direction de tous les articles qui peuvent m'aider à démarrer et j'espère terminé.

J'ai déjà glané les informations suivantes mais je ne suis pas vraiment sûr qu'il décrit l'architecture.

1) Utiliser des classes au lieu des fonctions séparées et chaque classe ou groupe devraient figurer dans leur propre fichier JS

2) Avant la production devrait être une étape de compilation où lesdits fichiers JS sont compilés et minified

3) Step2 ne doit pas contenir tous les fichiers. Jsut les communs commencent

4) Utilisez un chargeur de classe pour charger les classes, les plugins, etc quand ils sont nécessaires. En matière de recherche pourrait fonction getScript jQuery être utilisé pour cela, ou même un chargeur de plugin jQuery:

http://api.jquery.com/jQuery.getScript/

http://www.unwrongest.com/projects/lazy/

Am moyen de se sentir hors de ma profondeur au mois de sorte que toute aide serait massivement apprécié. Soyez honnête, si ce qui précède est competely hors de propos, alors je suppose que je suis dans le mauvais emploi :(

+0

J'accepte toujours les questions auxquelles j'ai répondu. Certains que j'ai demandé dans le passé et n'ont pas reçu de réponse, principalement en raison de la façon dont je leur ai demandé je pense. – RyanP13

+2

Bien qu'il existe un certain nombre de points de vue sur la question, je suis personnellement fortement en désaccord avec les points 3 et 4 de vos pratiques. Surtout pour quelqu'un à ce que je présume est votre niveau de compétence, il serait préférable de charger toutes vos bibliothèques à la fois. De manière réaliste, vos bibliothèques ne seront pas très volumineuses, et charger même de grandes bibliothèques comme les API Google, jQuery ou ses extensions prend un temps négligeable, surtout si vous voulez garder les utilisateurs d'une seule page, de style AJAX . Je ne peux pas vraiment faire de recommandations plus spécifiques à moins que vous n'ayez des questions spécifiques. –

+1

d'accord avec Steve ci-dessus, réduire, combiner et compresser les js dans le cadre du processus de construction/gestionnaire js – redsquare

Répondre

4

Tout ce que vous devez savoir se trouve ici:

http://addyosmani.com/largescalejavascript/

Créer une bibliothèque de composants vaguement quelques communiquer par l'intermédiaire d'un contrôleur d'application (par exemple, un bus d'événements)

2

Je vous recommande d'utiliser ExtJS 4. Ses API et sa méthodologie de développement suivent de près ce que vous attendez de .NET ou Java pour développer un bureau de grande taille. application

La quatrième version répond à chacun de vos quatre points. Il a ...

1) Un système pour définir des classes Java/C# dans Javascript qui fonctionnent presque exactement comme un développeur Java ou C# s'attendrait. 2) Chargement dynamique des ressources. 3) La possibilité de créer un produit final à partir du SDK qui est une version soignée et compressée qui contient exactement ce dont vous avez besoin.

2

Si vous devez faire cela avec du Javascript pur, assurez-vous d'utiliser une architecture de référence dans le travail. Ce que HDave a indiqué ci-dessus est vraiment un bon matériel. Si vous voulez une architecture de référence ready-made comme un code de démarrage du projet, jetez un oeil à BoilerplateJS:

http://boilerplatejs.org

Après quelques projets à grande échelle, j'ai compilé quelques-unes des leçons apprises dans ce cadre. Regardez les échantillons aussi. Certaines des préoccupations que vous avez soulevées sont déjà abordées dans cette base de code, telles que l'utilisation de concepts OO, la minimisation et les optimisations, la conception de modulateurs découplés et bien d'autres encore.