Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Prism 4, command line parametar

[es] :: .NET :: WPF Programiranje :: Prism 4, command line parametar

[ Pregleda: 2545 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Prism 4, command line parametar29.09.2011. u 20:19 - pre 152 meseci
Koristim Prism 4, Unity bootstrapped

Problem je sledece prirode, treba da pokupim neki ID iz komandne linije i taj ID ce biti filter za model, tj ucitace se onaj objekat ciji ID je prosledjen aplikaciji. Posto jos uvek eksperimentisem sa Prismom pretposttavljam da je cupanje command line-a iz modela no-no (uostalom ne bih ni voleo to) pa me interesuje koji je preferred way za ovo?

NApravim servis (IIDSelectorService, IDSelectorService) sa propertijem ID koji cupa iz komandne linij, onda registrujem taj servis, za model napravi konstruktor koji prima IIDSelectorService i pusitm Unity IOC da resolvuje? TO bi ucinilo da je model testable ali zar nece onda IDSelectorService biti platform dependent?
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

ravni

Član broj: 8894
Poruke: 373



+15 Profil

icon Re: Prism 4, command line parametar29.09.2011. u 22:51 - pre 152 meseci
ne znam koju su razlike sto se tice parametara sa komandne linije izmedju platformi, ali mi se cini da si sebi u drugom pasusu dao sasvim dobar odgovor. doduse i sam sam tek zagrebao po tematici DI, ali bih rekao da tako nekako ide.
Citat:
TO bi ucinilo da je model testable ali zar nece onda IDSelectorService biti platform dependent?
mozda nije ni vazno, jer imas interfejs?!
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Prism 4, command line parametar29.09.2011. u 23:11 - pre 152 meseci
Jedino sto me nervira je sto mi se polako gomilaju servisi za raznorazne gluposti i samim tim mi se povecavaju konstruktori na modelima i viewmodelima, al sta da se radi. Navigacija mi je isto malo annoying uradjena narocito ako radis single-module aplikacije.
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

logic_rabbit
Radenko Zec
banjaluka

Član broj: 74458
Poruke: 271
80.87.240.*



+1 Profil

icon Re: Prism 4, command line parametar30.09.2011. u 06:54 - pre 152 meseci
Preporucio bi ti da koristis StructureMap mnogo je bolji od Unity-ija.
Ja sam koristio prije Unity pa sam se razocarao. Prism podrzava da zamjenis kontejner sa nekim drugim.

Ako hoces da smanjis broj parametara u konstruktoru onda mozes da koristis service locator pattern, koji svi nazivaju antipattern i kazu da ga treba izbjegavati jer ti onda kod direktno zavisi od kontejnera.
Evo ti dobar post za to od naseg covjeka :
Link

Ako imas bas previse parametara u konstruktorima, moguce da si prekrsio i single responsibility principle i da trebas odraditi code refactoring.


logic_rabbit (MCAD,MCSD,MCT,MCTS-
Windows development,MCPD)
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Prism 4, command line parametar30.09.2011. u 09:30 - pre 152 meseci
Pa bas zato ih i imam puno :) Aplikacija cupa podatke iz tri baze pa mi skoro svi viewmodeli imaju tri modela i po nekoliko servisa (msgbox, config, lookup tabele za proracune, itd), pretpostavljam da bih mogao da uvedem jos jedan korak izmedju viewvmodela i modela/servisa ali opet ne vidim sta bih postigao sem sto bih kompleksnost viewmodela prebacio na tu klasu, sa druge strane tek bih kombinovanjem servisa u jedan prekrsio SRP i opet mi se isto hvata za odrzavanje. GUI layout sam po sebi nije komplikovan (nalik na outlook) pa mi zato i ova elaborate navigacija ide na zivce, treba mi najosnovnija varijanta, user klikne na item u levom regionu, desni region zameni view sa nekim vezanim za taj item i mislim da cu da batalim Prism navigaciju i da uradim old-style MVVM navigaciju, samo jos da prukljuvim kako da emuliram navigaciju u regionu (tj uklanjanje starog i dodavanje novog viewa a da IOC handluje resolve), jos uvak sam nov u Prismu.

Inace Prism4 je zahtev klijenta, tako da sam se sveo na izbor izmedju Unitya i MEFa (pretpostavljam da je moguce napraviti kakav god hoces base Bootstrapper ali mi to nije cilj za ovaj prvi projekat, vise hocu da otkrijem sta je in-the-box u odnosu na basic MVVM koji mi se ne svidja). Btw, zar nije named registracija tipova i instanci u Unity-u i named resolve u stvari neki service locator pattern? Cak je i resolve na nivou interfejsa service locator pattern samo sto ga ti ne vidis jer ga Unity abstrahuje. Daleko od oka, daleko od uma?
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

logic_rabbit
Radenko Zec
banjaluka

Član broj: 74458
Poruke: 271
80.87.240.*



+1 Profil

icon Re: Prism 4, command line parametar30.09.2011. u 10:31 - pre 152 meseci
Pa vjerovatno je i resolve na nivou interface-a service locator tamo negdje u pozadini, iako nisam gledao kod,
a ovako izgleda kao factory method. :D

Ja nisam Prism odavno koristio, jer mi nije trebala modularna aplikacija, a vecinu drugih stvari koje su valjale u Prism-u mozes naci i u nekom od poznatijih MVVM framework-a npr. EventAgreggator i sl.





logic_rabbit (MCAD,MCSD,MCT,MCTS-
Windows development,MCPD)
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Prism 4, command line parametar30.09.2011. u 10:49 - pre 152 meseci
cek, cek. factory pattern je samo deo price zaduzen za konstrukciju, ali sam IOC (skoro svaki koji sam video) koristi neku varijantu service locatora da bi znao koji objekat da iskoristi za mapiranje i da li da kreira novu klasu ili da iskoristi prethodno kreiranu (per instance, per container, per thread, itd). Ako npr u Unity-u imas singleton (ili per container) on ce biti faktorisan samo pri prvom resolve-u, svaki sledeci resolve je pure service locator, ne? RegisterInstance pristup cak ni ne koristi factory pattern.

Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

[es] :: .NET :: WPF Programiranje :: Prism 4, command line parametar

[ Pregleda: 2545 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.