Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Wzorce Repository, Unity of Work, Devexpress MVC w architekturze Asp.net MVC

251 views

Published on

Repository, UnityOfWork, Devexpress MVC, ASP.NET MVC Presentaion

Published in: Software
  • D0WNL0AD FULL ▶ ▶ ▶ ▶ http://1lite.top/LSJp5f ◀ ◀ ◀ ◀
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Wzorce Repository, Unity of Work, Devexpress MVC w architekturze Asp.net MVC

  1. 1. Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC Piotr Stola Grupa .NET Politechnika Koszalińska 14-12-2016
  2. 2. Wprowadzenie @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC > piotr.stola@quick-solution.net / @quick_net > niezależny konsultant, programista .NET / C# / Devexpress > tworzymy rozwiązania dla szeroko rozumianego sektor finansowego > od 2014 Devexpress MVP > popołudniami – Mistrz Jedi i Architekt LEGO ;)
  3. 3. Wprowadzenie @quick_net 1 2 3 4 5 6 7 8 Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC Wprowadzenie Architektura ASP.NET MVC Wzorzec Repository Wzorzec Unity of Work Feel the force! Devexpress MVC Pros & Cons Podsumowanie Q & A
  4. 4. Wprowadzenie @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC
  5. 5. Architektura ASP.NET MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC
  6. 6. Architektura ASP.NET MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC Controller View Model
  7. 7. Architektura ASP.NET MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC Model > > > > abstrakcyjne pojęcie reprezentuje poszczególne stany naszej aplikacji POCOs, ViewModels, Domain Models, Data Containers powinien być dostępny na każdym poziomie aplikacji grupowanie obiektów w biznesowe – domenowe zbiory
  8. 8. Architektura ASP.NET MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC View > > > > prezentacja wyników operacji, stanu modelu użytkownikowi w postaci UI odpowiedzialny za interakcję z użytkownikiem, brak logiki biznesowej, widoki powinny zawierać tylko logikę prezentacyjną technologie powiązane : HTML5, JavaScript (JQuery, Angular JS, Knockout JS), CSS, TypeScript, rozwiązania zewnętrzne jak Devexpress MVC > na jeden widok, może składać się wiele niezależnych widoków częściowych – pratial views
  9. 9. Architektura ASP.NET MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC Controller > > > interpretacja akcji użytkownika przetworzenie i operacje biznesowe na obiekcie modelu przekazanie wyników operacji do widoku
  10. 10. Architektura ASP.NET MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC
  11. 11. Wzorzec Repository @quick_net > > > > > Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC warstwa abstrakcji pomiędzy logiką biznesową aplikacji, a warstwą dostępu do danych głównie realizuje implementacje operacji CRUD na warstwie dostępu do danych dzięki implementacji interfejsu Repository możemy w „łatwy” sposób podmienić warstwę dostępu do danych zmniejsza liczbę duplikowanego kodu przez co ogranicza wystąpienie błędów oraz zapewnia łatwość utrzymania kodu istnieje kilka rodzajów implementacji
  12. 12. Wzorzec Repository @quick_net 1 Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC DO OR DO NOT – THERE IS NO TRY
  13. 13. Wzorzec Unity Of Work @quick_net > > > > Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC zarządzanie stanem obiektów, które modyfikujemy, dodajemy, usuwamy z bazy danych zapewnienie transakcyjności operacji współdzielenie kontekstu dostępu do bazy danych pomiędzy repozytoriami i minimalizowanie operacji zapisu najprostsza implementacja Unity Of Work sprowadza się do implementacji metody Save()
  14. 14. Wzorzec Unity of Work @quick_net 1 Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC DO OR DO NOT – THERE IS NO TRY
  15. 15. Wzorzec Unity of Work @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC
  16. 16. Architektura ASP.NET MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC Presentation Buissnes Buissnes Services Data Access ASP.NET MVC DB UNITY OF WORK REPOSITORY REPOSITORY DbContext C V M Common Core
  17. 17. Feel the force! Devexpress MVC @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC
  18. 18. Feel the force! Devexpress MVC @quick_net 1 Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC DO OR DO NOT – THERE IS NO TRY
  19. 19. Feel the force! Devexpress MVC @quick_net > > > > Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC niski próg wejściowy jeżeli chodzi o naukę implementacji szybsza implementacja funkcjonalności w projekcie UI out of the box aplikacja, która jest cross-browser > wsparcie dla JavaScripy i AJAX - Callbacks, TypeScript > wsparcie dla urządzeń mobilnych
  20. 20. Pros & Cons @quick_net + - + - Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC klarowne rozdzielenie zależności i odpowiedzialności w projekcie ograniczenie, spłaszczenie możliwości systemów ORM minimalizacja duplikowanego kodu oraz podniesienie możliwości reużywalności kodu nadmierne rozbudowanie Repository = zmniejszenie uniwersalności + oddzielenie kodu warstwy prezentacji (HTML/JS) od code behind (Controller / Repository) - prawie zawsze systemy ORM mają zaimplementowane obydwa wzorce + dzięki implementacji interfejsu Repository możemy w „łatwy” sposób podmienić warstwę dostępu do danych - zagrożenie pobierania nadmiernej ilości danych do warstwy prezentacji
  21. 21. Podsumowanie @quick_net + + + + Wzorce Repository, Unity Of Work w architekturze ASP.NET MVC Separate of Concerns Repository Unity of Work Devexpress MVC + Model View Controller - DI / Services / Unit Testing / Validation Strategy
  22. 22. Podsumowanie @quick_netWzorce Repository, Unity Of Work w architekturze ASP.NET MVC
  23. 23. QUESTION & ANSWERS Piotr Stola Grupa .NET Politechnika Koszalińska 14-12-2016

×