Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 20729|Răspunde: 1

[ASP.NET] Modelul cadrului MVC este mort

[Copiază linkul]
Postat pe 06.12.2014 22:17:21 | | | |
Modul MVC: Model View încearcă să controleze controllerul, care este modul principal în prezent, folosit ca mod de bază pentru introducerea software-ului serverului pentru a învăța și stăpâni, iar cadrul principal Struts 1/2 JSF Wicket suportă practic modul MVC.

Totuși, odată cu popularizarea continuă a aplicațiilor B/S și Internet, Web 2.0 și un număr mare de aplicații interactive frecvente precum rețelele sociale și jocurile, modul relativ static MVC nu mai este potrivit pentru aplicații extrem de interactive și orientate spre comportament.

Modelarea domeniului DDD acordă mai multă atenție structurii, valoarea entității obiectului și serverului sunt, de asemenea, un fel de diviziune structurală, dar nu subliniază importanța atribuțiilor și comportamentelor obiectului, iar aceasta este singura diferență dintre obiecte și baze de date.

Dimpotrivă,Proiectarea obiectelor: roluri, responsabilități și colaborăriCartea propune că obiectul joacă de fapt un anumit rol, iar rolul este responsabil, iar apoi un anumit comportament interactiv va fi implementat într-un anumit context de scenă, ceea ce a fost discutat pe larg în Jdon:
DCI, model de domeniu, câteva idei pentru evenimente de domeniu
Gândire arhitecturală asincronă: Implementarea modelării domeniului cu Akka

Cartea rezumă cele patru mari dezavantaje ale controlerelor centralizate, iar controlerele MVC aparțin de fapt acestui stil de controler centralizat:

1. Logica de control poate deveni excesiv de complexă. Controlerele pot deveni complicate și este obișnuit ca mulți oameni să scrie cod de business în controlerele Action ale Struts.Toate acțiunile sunt în acțiuni, iar unele acțiuni au aproape mii de linii.

2. Controlorii pot deveni dependenți de conținutul deținătorilor de informații. Controlorii devin dependenți de centrele de date sau baze de date informaționale, controlorii fac multe lucruri, ceea ce înseamnă că obiectele de domeniu fac foarte puțin, iar controlerul nu doar că va face ceea ce la final, ci va decide și lucruri strategice, dar va fi și implicat în aspecte tactice precum modul de a face și implementarea.

3. Obiectele pot deveni cuplate indirect prin acțiunile controlerului lor. Obiectele sunt cuplate indirect prin acțiunile controlerului, un obiect este interogat în controler, apoi copiat pe alt obiect, iar cele două obiecte sunt cuplate împreună.

4. Singura muncă interesantă se face la controler.

Controlerul MVC este un fel de mod Mediator, dar și un controler centralizat, fiind principala diferență față de modul observator: modul Mediator cuprinde comunicarea, în timp ce observatorul descentralizează comunicația, din punct de vedere al comunicării, controlerul are și defectele sale inerente, ușor de devenit un concentrator mare și complet cuplat, toate acestea fiind pentruOONu este tolerat.

Arhitectura DCIEste un concept nou, care a apărut abia recent și privește software-ul dintr-o perspectivă nouă, care coincide și are dreptate în privința designului condus de datorieDDDdezvoltare și îmbunătățire.

DCI este abrevierea Interacțiunilor Contextului de Date, iar contribuția sa importantă este să promoveze conceptul de scene, care nu este menționat în cartea Duty-Driven Development, care doar neagă MVC, expune problemele sale și nu propune alternativeDCIEste arhitectura alternativă a MVC, iar DCI înlocuiește MVC cu scenarii pentru a înlocui controlerele, așa cum se arată în figura de mai jos (imaginea este de acolo).Engleză originală TheDCI Architecture: A New Vision of Object-Oriented Programming):

Scena scoate de fapt unele dintre controalele și modelele din MVC și le reasamblează sub forma unor scene cu personaje. Acesta este un unghi nou, complet diferit de modul MVC, care este mai aliniat cu acest unghiOO

Recent, cineva a ridicat subiectulContext de scenă este un tip nou de obiect, scena nu poate fi doar înlocuităSOAServiciile web pot înlocui, de asemenea, controlerele MVC.

Personal, cred că noua arhitectură ierarhică ar putea arăta așa în viitor:
Vizualizare --> Context ---> Modelul de domeniu ---> componentă/repositoriu

Modul MVC este mort.





Precedent:O colecție de blocuri CAD de podea folosite frecvent este descărcabilă gratuit
Următor:Multithreading-ul pune scalabilitatea într-un impas
Postat pe 07.12.2014 17:23:04 |
Cititul și postarea înapoi este o virtute
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com