Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


DDD NWorkSpace

Postades av 2007-07-02 14:18:54 - Niclas Pehrsson, i forum asp.net generellt, Tråden har 11 Kommentarer och lästs av 759 personer

Hej jag har läst Jimmy Nilsson's Applying Domain-Driven Design and Patterns som säkert flera här känner till, jag är ute lite efter det framework som han visar upp i boken NWorkSpace, vilket utifrån hans blogg han inte ger ut för att att den inte har den kvaliten som han vill för att ge ut den.

Men nu undrar jag om ni känner till något projekt som har den här grundfunktionaliteten?

Jag har kommit fram till att det projektet jag nu skall göra inte fungerar med NHibernate tyvärr eller några av dom liknande framework som finns idag, däremot är jag ute efter ett framework som ger mig interfacen, själva funktionaliteten med transaktioner, query byggar object osv.

Någon med lite tips?


Svara

Sv: DDD NWorkSpace

Postades av 2007-07-02 15:02:56 - Roger Alsing

NWorkspace var/är ju bara en wrapper som jimmy byggt över/runnt andra mappers.

Så vad jag vet så är de i princip bara en fasad för NHibernate
(vet inte om han har stöd för andra mappers på riktigt eller bara i teorin)

så om NWorkspace skulle lösa det du vill , så kan garanterat NHibernate göra det också.


Svara

Sv:DDD NWorkSpace

Postades av 2007-07-02 15:37:45 - Niclas Pehrsson

Hmm, du kanske har rätt, skall ta och se mig om igen.


Svara

Sv: DDD NWorkSpace

Postades av 2007-07-02 19:53:37 - Patrik Löwendahl

Jimmys ideer om NWorkspace var precis som roger säger ett försök att abstrahera bort infrastrukturen.

Dvs tanken var att du inte skulle jobba mot en specifik ORM utan mot ett generellt API som hade providers som implementerade mot olika ORM där NHibernate var en av dem.

Det är ingen ny ide, samma ideer finns i Java sedan innan och just nu tittar Jimmy på om inte LINQ kan vara den abstraktionsnivån över ORM som han letade efter.

Vad är det som gör att NH eller andra ORM inte funkar i ditt scenario?


Svara

Sv:DDD NWorkSpace

Postades av 2007-07-03 09:29:18 - Niclas Pehrsson

Jag tyckte att NHibernate var lite för rörigt och vill inte blanda in det direkt i min applikation.

Men har tänkt över saken och om jag abstraherar bort det på rätt sätt så kan det nog komma att passa ändå.

Det jag var mest emot var att man inte kunde modifiera listorna som hibernate genererar, men om man löser det med någon typ av transportobject's så kommer det också att fungera har jag funderat ut..

Annars så letade jag efter något bra framework med färdigimplemmenterad funktionalitet i Repository, Collection, Factory, Entity basklasserna. Med ett bra designmönster hur dom borde hänga ihop.

Att sitta och läsa i litteratur och försöka få ihop något riktigt bra känns som att uppfinna hjulet så det var väl det jag var ute efter.


Svara

Sv: DDD NWorkSpace

Postades av 2007-07-03 10:49:40 - Patrik Löwendahl

"Annars så letade jag efter något bra framework med färdigimplemmenterad funktionalitet i Repository, Collection, Factory, Entity basklasserna. Med ett bra designmönster hur dom borde hänga ihop."

Det här är precis det din domän måste bry sig om, att försöka hitta ett ramverk som abstraherar bort det här kommer att bli svårt utan du borde snarare leta efter verktyg som hjälper dig isf (vilket jag inte vet om det finns några).

"Det jag var mest emot var att man inte kunde modifiera listorna som hibernate genererar"
Det här förstod jag inte riktigt, hur menar du att det inte går att modifiera listorna?


Svara

Sv:DDD NWorkSpace

Postades av 2007-07-03 11:31:19 - Niclas Pehrsson

Det med listorna menade jag följande.
Man måste ju definera att en lista med t.ex. Kunder skall defineras

IList<Customer> Customers
{
get { return this.customerList; }
set { this.customerList = value; }
}

Medans jag kanske vill ha en CustomerCollection som har metoder som GetByName(string customerName);, men har man ett CustomerTransportObject eller vad man skall kalla det som wrappas av Customer så kan man ju införa det jag vill.

Tråkigt att du inte känner till något bra det var precis det jag var ute efter, hade varit intressant att se hur andras applikationsarkitekturer med NHibernate ser ut.


Svara

Sv: DDD NWorkSpace

Postades av 2007-07-03 16:33:26 - Patrik Löwendahl

Aha, jag förstår. Nej NH löser inte det problemet idag. Däremot gör NPersist det (www.puzzleframework.com) som använder en annan typ av modell.

Det låter mer som du är intresserad av exempel på implementationer än rena ramverk. Det tror jag blir väldigt svårt, om du inte kan hitta en open source produkt som är byggd enligt DDD så finns det nog bara skolboksexempel att tillgå, jag skall sparka lite på Jimmy och se om han känner till ngt.


Svara

Sv:DDD NWorkSpace

Postades av 2007-07-04 09:01:47 - Niclas Pehrsson

Ja jag är ute efter mer sammansatta lösningar än små skolsexempel, jag vill se på hur skolexempel är ihopsatta till en större samling.

Satt och kollade in NHibernate igår lite mer vilket jag nog borde gjort innan jag ställde denna frågan.

Just nu har jag valt att ha transportobject som bara Domänlagret känner till, jag har också mina repositorys i detta lager för att domänentiteterna skall kunna ladda lazy. Jag funderar på att använda NHibernate som enbart en mapper och strunta i dess lazyload funktionalitet för att implemmentera egen, för att kunna ha typade Collections som jag beskrev en UserCollection för att kunna förenkla användadet i lagren ovan som t.e.x
WorkerCollection workerCollection = Company.Workers.GetByLastName("Pehrsson");

Eller tänker jag fel, vill minnas att jag läste i Jimmy's bok att man vill undvika typade collections, minns dock inte varför.

Upptäckte dock att om jag använder mig av transportobject som jag skickar in till mina entiteter så måste jag köra override på Equals() och GetHashCode() och bara vidarebefodra det till mitt transportobjekt. Är det många fler sådana saker man måste tänka på? Eller är detta med att använda transportobjekt bara något som gör min applikation onödigt komplex?


Svara

Sv: DDD NWorkSpace

Postades av 2007-07-04 11:43:50 - Niclas Pehrsson

Har väl nu mer eller mindre kommit fram till att transportobjekt när det gäller NHibernate är onödigt.


Svara

Sv:DDD NWorkSpace

Postades av 2007-07-04 16:13:27 - Fredrik Normén

Varför inte göra följande:

private IList<Customer> _customers; //Mappa och kör Lazy mot denna om så behövs..

public CustomerCollection Customers
{
get { return new CustomerCollection(this._customers)); } //Dependency Injection
}

Se til att din CustomerCollection konstruktor som tar IList<Customer> som argument, använder sig internet av denna list.. Då kan din CustomerCollection Lazy loadas och du kan ha ditt egna interface.

/Fredrik Normén [MVP]
blog: http://fredrik.nsquared2.com


Svara

Sv: DDD NWorkSpace

Postades av 2007-07-05 10:21:26 - Niclas Pehrsson

Japp, precis så jag gjorde :).


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 170
27 953
271 705
546
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies