Dobra ludzie, tu jest inny dla ya:Porady dla początkujących O N-Tier Applications
Zaczynam na świecie apps n-tier. Zrobiłem trochę czytania na ten temat i ogólne porady są takie, że celem aplikacji n-warstwowych jest abstrakcyjne warstwy kreacji funkcjonalności. Tak więc, na podstawie tego, w aplikacji n-warstwowych regularny model:
Data Access -> Business Layer -> Presentation
Ponieważ jestem programistą .NET, myślałem, że w celu zwiększenia integracji z wielu rodzajów klientów (Silverlight Web App lub nawet klient WinForm). Powinienem używać WCF (Windows Communication Foundation) jako usług danych w warstwie biznesowej, aby klienci mogli się z nim komunikować bez względu na jego typ. Ponadto, jestem wielkim fanem NHibernate jako ORM. Więc moja struktura wygląda tak:
Data Access (NHibernate) -> Business Layer (WCF) -> Presentation (WPF, ASP.NET, WinForms
Ok, więc jest to konfiguracja. Jestem totalną nowicjuszką w tego rodzaju podejściu, więc pomyślałem, że mógłbym opublikować tutaj, prosząc o radę na temat tej konfiguracji. Ponadto jestem bardzo zdezorientowany, jak to skonfigurować w rozwiązaniu VS, lubię rozdzielać warstwy w różnych projektach, ale co z abstrakcją obiektów danych (takich jak klient, zamówienie itp.)? Czy umieszczam je w osobnej bibliotece? A co z WCF? Wiem, że grzechem programisty jest przesyłanie klas danych przez kabel do klienta. Jaki jest profesjonalny sposób, aby to osiągnąć?
Dzięki, każda rada byłaby bardzo doceniana.
+1 - dobre pytanie przynosząc kwestie do punktu. Może to być jednak trochę subiektywne. – Lucero
http://stackoverflow.com/questions/1650887/mixing-nhibernate-with-3-tier-developing – Lucero
Lucero, dzięki za odpowiedź. Sprawdziłem już to pytanie, rozwiązuję niektóre z moich wątpliwości, ale niestety bardzo nie podoba mi się jego podejście. Wydaje się, że każdy zdaje się przeciwstawiać eksponowanie obiektów obiektów NHibernate bezpośrednio do WCF, a plakat w rzeczywistości odnosi się do usług WCF do NHibernate, zamiast korzystać z klasy usług mediatora. Z niecierpliwością czekam na zapewnienie abstrakcji i integracji w jak największym stopniu. –