MVC režimas: "Model View" bando valdyti valdiklį, kuris yra dabartinis pagrindinis režimas, ir naudojamas kaip pagrindinis serverio programinės įrangos įvedimo režimas, skirtas mokytis ir įsisavinti, o pagrindinė sistema "Struts 1/2 JSF Wicket" iš esmės palaiko MVC režimą.
Tačiau nuolat populiarėjant B / S ir interneto programoms, Web 2.0 ir daugybei dažnų interaktyvių programų, tokių kaip socialinė žiniasklaida ir žaidimai, santykinai statiškas MVC režimas nebetinka labai interaktyvioms ir į elgesį orientuotoms programoms.
Pats DDD domeno modeliavimas daugiau dėmesio skiria struktūrai, jo objekto vertės objektas ir serveris taip pat yra savotiškas struktūrinis padalijimas, tačiau jis nepabrėžia objekto pareigų ir elgesio svarbos, ir tai yra vienintelis skirtumas tarp objektų ir duomenų bazių.
Priešingai,Objektų dizainas: vaidmenys, atsakomybė ir bendradarbiavimasKnygoje siūloma, kad objektas iš tikrųjų vaidina tam tikrą vaidmenį, ir vaidmuo yra atsakingas, ir tada tam tikras interaktyvus elgesys bus įgyvendintas tam tikrame scenos kontekste, kuris buvo išsamiai aptartas Jdon:
DCI, domeno modelis, keletas domeno įvykių idėjų
Asinchroninis architektūrinis mąstymas: įgyvendinkite domeno modeliavimą naudodami Akka
Knygoje apibendrinami keturi pagrindiniai centralizuotų valdiklių trūkumai, o MVC valdikliai iš tikrųjų priklauso šiam centralizuoto valdiklio stiliui:
1. Valdymo logika gali būti pernelyg sudėtinga. Valdikliai gali būti sudėtingi, todėl daugeliui žmonių įprasta rašyti verslo kodą "Struts" veiksmų valdikliuose.Visi veiksmai yra veiksmuose, o kai kurie veiksmai yra beveik tūkstančiai eilučių.
2.Valdytojai gali tapti priklausomi nuo informacijos turėtojų turinio. Valdytojai tampa priklausomi nuo informacinių duomenų centrų ar duomenų bazių, valdytojai daro daug dalykų, o tai reiškia, kad domeno objektai daro labai mažai, o valdytojas ne tik ką padarys, bet ir spręs strateginius dalykus, bet ir kartu su taktiniais klausimais, pavyzdžiui, kaip tai padaryti ir kaip tai įgyvendinti.
3. Objektai gali būti susieti netiesiogiai dėl jų valdiklio veiksmų. Objektai netiesiogiai sujungiami valdiklio veiksmais, valdiklis užklausia vieną objektą, o tada nukopijuoja į kitą objektą, o du objektai sujungiami.
4. Vienintelis įdomus darbas atliekamas valdiklyje.
MVC valdiklis yra savotiškas tarpininko režimas, bet ir centralizuotas valdiklis, tai yra pagrindinis skirtumas nuo stebėtojo režimo: tarpininko režimas apima ryšį, o stebėtojo decentralizuotas ryšys, ryšio požiūriu, valdiklis taip pat turi būdingų trūkumų, lengvai tampa dideliu ir visiškai sujungtu koncentratoriumi, visa tai skirtaOOTai netoleruojama.
DCI architektūraTai nauja koncepcija, kuri tik neseniai atsirado ir žvelgia į programinę įrangą iš naujos perspektyvos, kuri sutampa su pareigomis grindžiamu dizainu ir yra teisingaDDDplėtra ir tobulinimas.
DCI yra duomenų konteksto sąveikų santrumpa, o jos svarbus indėlis yra iškelti scenų koncepciją, kuri nėra paminėta knygoje "Duty-Driven Development", kuri tik neigia MVC, atskleidžia jo problemas ir nesiūlo alternatyvųVBPTai alternatyvi MVC architektūra, o DCI pakeičia MVC valdiklių pakeitimo scenarijais, kaip parodyta paveikslėlyje žemiau (paveikslėlis yra iš).Originalus anglųVBP Architecture: A New Vision of Object-Oriented Programming):
Scena iš tikrųjų iškasa kai kuriuos MVC valdiklius ir modelius ir vėl surenka juos personažų scenų pavidalu. Tai naujas kampas, kuris visiškai skiriasi nuo MVC režimo svarstymo, kuris labiau atitinka šį kampąOO。
Neseniai kažkas jį iškėlėScenos kontekstas yra naujas objekto tipas, sceną galima ne tik pakeistiSOAŽiniatinklio paslaugos taip pat gali pakeisti MVC valdiklius.
Asmeniškai manau, kad naujoji hierarchinė architektūra ateityje gali atrodyti taip: Peržiūrėti --> konteksto ---> domeno modelio ---> komponento / saugyklos
MVC režimas neveikia.
|