Foldere sau proiecte într-o soluție Visual Studio?

voturi
27

Când spliting o soluție la straturi logice, atunci când este cel mai bine să utilizați un proiect separat, peste doar gruparea printr-un dosar?

Întrebat 04/08/2008 la 23:00
sursa de către utilizator
În alte limbi...                            


7 răspunsuri

voturi
17

În mod implicit, întotdeauna doar crea nou director în cadrul aceluiași proiect

  • Vei primi un singur ansamblu de (fără suplimentare de gimnastică ILMerge)
  • Mai ușor de umbri (pentru ca va avea tipuri și metode mai puțin publice, în mod ideal deloc)

Separarea codul sursă în mai multe proiecte are sens doar dacă ai ...

  • Au unele porțiuni ale codului sursă, care fac parte din proiect, dar nu dislocabile în mod prestabilit sau la toate (teste unitare, plugin-uri suplimentare etc.)
  • Mai mulți dezvoltatori implicați și doriți să trateze munca lor ca cutie neagră consumabil. (Nu foarte recomandat)
  • Dacă se poate separa în mod clar proiectul în straturi / module izolate și doriți să vă asigurați că acestea nu pot consuma eco- interne membri. ( De asemenea , nu este recomandat , deoarece va trebui să decidă ce aspect este cel mai important)

Dacă credeți că anumite porțiuni din codul sursă ar putea fi reutilizabile, încă nu-l crea ca un nou proiect. Doar așteptați până când va dori cu adevărat să-l reutiliza într-o altă soluție și izola-l de proiect original, după cum este necesar. Programarea nu este un lego, reutilizarea este de obicei foarte dificil și de multe ori nu se va întâmpla conform planului.

Publicat 04/08/2008 la 23:45
sursa de către utilizator

voturi
8

Separarea caracteristici în proiecte este de multe ori o optimizare arhitectura YAGNI. Cât de des ați refolosit acele proiecte separate, într-adevăr? Dacă nu este un fenomen frecvent, te complicând dezvoltarea ta, să construiască, implementare și mentenanță pentru reutilizare teoretică.

Prefer separarea în dosare (folosind namespace corespunzătoare) și refactoring pentru a separa proiectele cand ai o viata reala de utilizare reutilizare caz.

Publicat 17/08/2008 la 18:35
sursa de către utilizator

voturi
6

Denny a scris:

Eu personal simt că în cazul în care codul reutilizabil este împărțit în proiecte este mai simplu de a folosi alte locuri decât în ​​cazul în care este doar în foldere.

Chiar sunt de acord cu acest lucru - dacă se poate reutiliza, ar trebui să fie într-un proiect separat. Acestea fiind spuse, este, de asemenea, foarte dificil de a reutiliza în mod eficient :)

Aici, la SO, am încercat să fie foarte simplu, cu trei proiecte:

  • Proiectul Web MVC (care face o treabă bună de straturile de separare în dosare în mod implicit)
  • Baza de date de proiect pentru controlul sursei de DB noastre
  • teste de unitate împotriva MVC modele / controlere

Nu pot vorbi pentru toată lumea, dar eu sunt fericit cu cât de simplu ne-am păstrat - într-adevăr viteze construiește de-a lungul!

Publicat 04/08/2008 la 23:42
sursa de către utilizator

voturi
4

Eu fac de obicei un proiect pentru GUI un proiect pentru logica de afaceri pentru un proiect de acces la date și un proiect pentru teste unitare.

Dar, uneori, este prudent să aibă o separare bazată pe servicii (dacă utilizați o arhitectură orientată pe servicii) Cum ar fi autentificare, vânzări etc.

Cred că regula de degetul mare pe care am de lucru de pe este că, dacă se poate vedea ca o componentă care are o separare clară a preocupărilor apoi un alt proiect ar putea fi prudent. Dar aș crede că dosarele versus proiecte ar putea fi doar o preferință sau filozofie.

Eu personal simt că în cazul în care codul reutilizabil este împărțit în proiecte este mai simplu de a folosi alte locuri decât în ​​cazul în care este doar în foldere.

Publicat 04/08/2008 la 23:14
sursa de către utilizator

voturi
0

Eu chiar cred că este mai bine să împartă proiect la fel de bine, dar totul depinde de mărimea proiectului și numărul de persoane care lucrează pe ea.

Pentru proiecte mai mari, am o serie de proiecte pentru

  • acces la date (modele)
  • Servicii
  • în față
  • teste

Am primit modelul de la Rob Connery și cererea sa ... magazinului pare să funcționeze foarte bine.

MVC-storefront

Publicat 16/09/2008 la 00:45
sursa de către utilizator

voturi
0

Dacă te duci pentru a crea mai multe proiecte, asigurați-vă că toți cei care se adaugă codul de la soluția este pe deplin conștient de intenția lor și de a face tot posibilul pentru a-i să înțeleagă dependențelor dintre proiecte. Dacă ați încercat vreodată să rezolve mizeria atunci când cineva a intrat și a adăugat referințe care nu ar fi fost acolo și a scăpat cu el de câteva săptămâni veți înțelege acest punct

Publicat 10/09/2008 la 22:36
sursa de către utilizator

voturi
0

Separarea codul sursă în mai multe proiecte are sens doar dacă ai ... ... Mai mulți dezvoltatori implicați și doriți să trateze munca lor ca cutie neagră consumabil. (Nu foarte recomandat) ...

De ce nu este recomandat acest lucru? Am găsit un mod foarte util pentru a gestiona o aplicație cu mai multe devs care lucrează pe porțiuni diferite. Face Checkins mult mai ușor, în principal, prin eliminarea practic îmbinări. Foarte rar vor două devs trebuie să lucreze pe același proiect, în același timp.

Publicat 17/08/2008 la 18:19
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more