2010-12-04 29 views
-7

bref texte de présentation,Questions générales sur Entity Framework vs Enterprise Library et quelques autres

Mon adresse dans .net a été appelé « innovante », mais je préférerais qu'il soit exemplaire. Fondamentalement, j'ai besoin d'un mentor. Je possède le nom de domaine codeologist.com et je vais vivre à la hauteur de ce nom, mais pour ce faire, j'ai besoin d'un mentor communauté &.

Sur les questions suivantes:

  1. Entity Framework - J'imagine c'est un objet de cartographie-cadre intense d'une usine, tout en conservant l'intégrité et de l'état des objets au sein du système. Au moins, c'est ce que je peux imaginer à environ 15 minutes d'un podcast que j'ai écouté. RTFM Je sais mais est-ce une évaluation générale correcte?

  2. Bibliothèque d'entreprise - Killer. Utilisé la plupart des blocs au moins comme exemples d'applications. Conception guidée par domaine - Quelles sont les astuces pour passer de la pensée comme une ERD/ORM à la conception pilotée par domaine? Avantages contre Cons? Agile contre SCRUM - Y at-il vraiment une différence?

  3. Tests unitaires - La dernière chose à laquelle je pense. Impossible d'obtenir une configuration automatisée du test de l'interface utilisateur Web correctement. Vous avez également besoin d'aide pour les scripts NAnt/MSBuild d'un référentiel VSS 2005. Un exemple complet dans la source serait vraiment sympa, peut-être y compris la planification. TSX - Qu'est-ce qui est considéré comme le strict minimum d'instructions TSQL professionnelles pour le développement de l'entreprise? Comme ROWCOUNT, TRANSACTION, ROLLBACK, les instructions de contrôle de flux, en ligne sql & problèmes de sécurité pour les méthodes CRUD.

  4. Il est envisageable d'intégrer MVC2/3, Entity Framework, Enterprise Library et les frontaux Web SilverLight? Même peut-être Sharepoint?

  5. J'ai demandé à un gars que j'ai rencontré une fois quand devrais-je utiliser Linq, sa réponse était "toujours utiliser la force".

  6. Lors de l'apprentissage d'une nouvelle langue, quels jeux/applications écrivez-vous? Quels sont les bons exercices pour ceux qui sont sur le point de coder? (Nous vous saluons!)

  7. Quels livres recommandez-vous pour la théorie générale de la programmation, l'architecture d'entreprise & analyse commerciale?

Ok probablement personne ne répondra, mais ce sont des questions brûlantes que j'ai eu dans mon intestin et je devais juste obtenir tout cela.

Geek For Life.

+7

Cela ne devrait pas être une seule question. –

+6

downvoted --- 1er: passer au moins une minute à regarder SO pour comprendre comment utiliser cette ressource. 2e: rendez-vous à votre service de blogging préféré et rédigez vos réflexions là-bas. 3ème: retour à SO quotidiennement pour rechercher d'abord des réponses à des questions spécifiques. –

+2

downvoted aussi bien - Si vous voulez réellement obtenir des réponses, demandez-en une par article. Si vous voulez juste évacuer, il y a de meilleurs endroits. – JeffH

Répondre

1

Je ne peux pas répondre à toutes vos questions, mais je vais prendre un coup à certains d'entre eux

  1. (Question 1) Fondamentalement, votre évaluation sonne juste. On pourrait aussi dire que EF «extrait» le SQL qui est par ailleurs nécessaire pour conserver les données dans un stockage persistant (généralement un lecteur de disque).

  2. (Question 7) Oui.Cependant, d'après mon expérience, de nombreux développeurs de logiciels (si ce n'est la plupart) ne peuvent ou ne veulent pas faire face à ces différentes technologies simultanément. Le membre moyen Stack Overflow ne souffre PAS de cette maladie particulière.

  3. (Question 8) Ce type a raison. Les roches LINQ. Chaque fois que vous pouvez remplacer une boucle foreach par une instruction LINQ, votre code devient plus facile à lire et à maintenir. Rappelez-vous que LINQ (Lambdas) peut être utilisé pour beaucoup plus que l'interrogation de bases de données. La syntaxe LINQ pour trier une collection est aussi simple que le tri dans les instructions SQL, mais a l'avantage de pouvoir trier en mémoire. Apprenez LINQ complètement, c'est votre ami.

  4. (Question 9) Je plonge habituellement dans un vrai projet de travail. Puis refactor après avoir abordé quelques choses. Le meilleur apprentissage vient de faire. Vous en apprenez plus en le faisant mal, en voyant le problème et en le rendant juste que n'importe quelle autre méthode que je connais.

  5. (Question 10) Il y a deux livres qui existent depuis longtemps mais qui sont toujours importants.
    Schémas de conception Éléments de logiciel orienté objet réutilisable
    Ce livre est communément appelé le livre «Gang of Four» ou GOF.
    et
    modèles d'entreprise Architecture d'application par Martin Fowler

5

Ok, nous allons voir.

1) Entity Framework - c'est principalement un ORM (Object-Relational Mapper). L'idée d'EF est en fait un peu plus ambitieuse que cela; le vrai but est de créer le cadre de modélisation uber-be-all pour tous les types de données (c'est EDM) et ensuite fournir un logiciel qui implémente et supporte ce modèle (EF). En pratique, cependant, c'est un ORM.

2) Euh, y a-t-il une question ici?

3) Courez, ne marchez pas, pour acheter Eric Evan's Domain Driven Design. C'est le livre qui définit le vocabulaire DDD que tout le monde utilise aujourd'hui. Vous voulez savoir ce qu'est vraiment un dépôt? C'est ici.

4) Enfer oui. Agile est les idées incarnées dans le Agile Manifesto. Ce sont les principes sous-jacents. SCRUM est une méthodologie particulière (bien, cadre méthodologique) qui est conforme à ces principes. Il y a beaucoup de méthodes agiles (Extreme Programming et Crystal Clear en sont deux exemples), mais elles partagent toutes les mêmes principes sous-jacents.

5) Eh bien, ce devrait être la première chose à laquelle vous pensez, mais vous devriez faire de la conception pilotée par les tests, pas des tests unitaires. TDD est une activité de conception/développement, Unit Testing est une activité de test. Test de l'interface Web est une douleur, accordée. Bien que votre question soit un peu vague et ressemble à plusieurs parties. Vous pourriez vouloir diviser celui-ci en questions distinctes et plus spécifiques.

6) Je ne suis pas vraiment un type SQL, mais je suis allé assez loin avec juste les bases - SELECT est remarquablement compliqué juste pour les débutants. Bien que je sois d'avis que si vous avez besoin de logique conditionnelle ou de boucles dans vos sprocs TSQL, quelque chose a terriblement mal tourné. Il vaut mieux vraiment comprendre la théorie - le modèle relationnel, les formes normales, les différents types de données et leur comportement.

7) Oui, pour la plupart d'entre eux. Chacun joue un rôle différent dans la pile du logiciel.En supposant que vous faites un client de style RIA, l'application Silverlight est exécutée dans le navigateur fournissant l'interface utilisateur, communiquant avec un serveur Web qui répond via un site MVC. Entlib est utile dans la mise en œuvre de cette application MVC. Si vous utilisez Silverlight, vous utiliserez probablement EF pour l'accès aux données. Vous pouvez également l'utiliser pour frapper la base de données dans l'application MVC. Sharepoint peut être un peu problématique - c'est aussi un truc de serveur web, donc vous pouvez le considérer comme un concurrent pour l'application MVC. Mais vous pouvez également l'utiliser comme un magasin de données.

8) Les roches LINQ. C'est une façon différente de penser à certains problèmes liés à la gestion de la séquence de données. Ce que j'aime à ce sujet, c'est qu'il est très composable - vous pouvez filtrer, transformer et exploiter les données de plusieurs façons, et transmettre ces choses et faire plus de filtrage/transformation en cours de route. De plus, le langage nécessaire à l'implémentation de LINQ a apporté une tonne de nouvelle puissance à C#/VB.NET, ce qui est vraiment très cool.

9) Bonjour le monde est toujours utile juste pour vous assurer que vous avez la chaîne d'outils éditeur-compilateur-débogueur cloué et fonctionnant. Après cela, j'ai tendance à plonger dans ce que je ressens. Quand j'ai essayé Silverlight pour la première fois, j'ai fait un petit jeu. Je peux faire un petit analyseur. Ou essayez simplement de jeter quelques fenêtres sur l'écran. Je n'ai pas de nouveau projet standard.

10) Convenu des recommandations pour Design Patterns et POEAA. Je recommande également fortement The Pragmatic Programmer par Hunt et Thomas. Ce n'est pas sur la théorie de la programmation, c'est sur l'artisanat du logiciel de construction.