Your SlideShare is downloading. ×
  • Like
SoftServe - "ASP.NET MVC як наступний крок у розвитку технології розробки Web-програм"
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

SoftServe - "ASP.NET MVC як наступний крок у розвитку технології розробки Web-програм"

  • 1,750 views
Published

Володимир Войтишин (м. Рівне)

Володимир Войтишин (м. Рівне)

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,750
On SlideShare
0
From Embeds
0
Number of Embeds
4

Actions

Shares
Downloads
16
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Volodymyr Voytyshyn
    08/27/2011
    ASP.NET MVC
    as the next stepin web development
  • 2. Goal
    What is ASP.NET MVC?
  • 3. Contents
    • About MVC Pattern
    • 4. ASP.NET Platform
    • 5. Sample Application
    • 6. ASP.NET MVC Project Concepts
    • 7. ASP.NET MVC Key Features
    • 8. MVC vsWebForms
    • 9. Conclusion
  • AboutMVC Pattern
  • 10. History of MVC Pattern
    Concept of MVC is described in 1979 by TrygveReenskaug (Norway)
    One of the first version of MVC is implemented in Smalltallk-80 class library
  • 11. Main Idea of MVC
    Separate view and data source
    View
    Model
    Controller
  • 12. Classic MVC (Active Model)
    View
    Handle view events
    Notify for Changes
    Controller
    Get data
    Model
    Update data
    Data Source
    Mediator
  • 13. Classic MVC (Passive Model)
    View
    Handle view events
    Notify for Changes
    Get data
    Controller
    Model
    Update data
    Data Source
    Mediator
  • 14. MVP
    View
    Handle view events
    Put data
    Presenter
    Update data
    Get data
    Model
    Mediator
  • 15. MVP: Key Differences with Classic MVC
    Presenter knows all about View
    Presenter communicates with data source directly
    Events in Model and View removed
    Presenter implements main presentation logic
    Presenter is mediator between Model and View
  • 16. ASP.NET Platform
  • 17. ASP.NET Web Forms Key Versions
    ASP.NET 4.0
    2010
    ASP.NET 3.5
    2007
    ASP.NET 2.0
    2005
    ASP.NET 1.0
    2002
    ASP
    1998
  • 18. ASP.NET MVC Key Versions
    ASP.NET MVC 3
    2011
    ASP.NET MVC 2
    2010
    ASP.NET MVC 1
    2009
    ASP.NET
  • 19. ASP.NET Components
    Web Forms View Engine
    Razor View Engine
    ASP.NET
    Web Forms
    ASP.NET
    MVC
    ASP.NET Core
    Caching
    Pages
    Handlers
    Roles
    Modules
    Controls
    Profile
    Security
    Globalization
    Master Pages
    Membership
    Etc.
  • 20. Sample Application
  • 21. Concept
    Project name: “Easy Reporting”
    Idea: time tracking system for developers
  • 22. Key Use Cases
  • 23. Components
  • 24. Basic Concepts of MVC Project
  • 25. Typical MVC Project Structure
  • 26. Simple Controller and Action
    ProjectController.cs
    Controller
    Action
  • 27. Simple View
    Index.cshtml
  • 28. Simple Client Page
  • 29. Mediator
    MVC Implementation
    Client
    Controller
    View
    Action
    Model
  • 30. ASP.NET MVC Key features
  • 31. Action Results
    ActionResult – base class of result of an action
    View
    Redirect
    JavaScript
    Json
    File
    HTTP
    Content
    Empty
  • 32. Action Filters
    Filter types:
    Authorization
    Action
    Result
    Exception
    Action Filter
    Action
    Standard filters:
    Authorize
    HttpGet
    HttpPost
    OutputCache
    HandleError
    Action Filter
  • 36. Action Filters: Example
    ProjectController.cs
  • 37. View Engines Concept
    Razor
    ASP.NET MVC
    *.aspx / *.ascx / *.master
    Etc.
  • 38. Passing data into View
    Action
    View
    Model
    ViewData
    ViewBag
    TempData
  • 39. HTML Helpers
    HTML Helper – “server control” in ASP.NET MVC
    Classic HTML Helpers
    Declarative HTML Helpers
  • 40. Partial Views
    Partial view – “user control” in ASP.NET MVC
    Footer.cshtml
    _Layout.cshtml
    Header.cshtml
  • 41. Layout pages and sections
    Layout page – “master page” in ASP.NET MVC
    Section – “ContentPlaceHolder” in ASP.NET MVC
  • 42. Routing
    Controller
    Client
    URL
    Routing Engine
    Action
    Params
    Default route - /controller/action/id
  • 43. Dependency Injection
    IServiceLocator
    MvcServiceLocator
    Setup
    Controller Factory
    Implement
    Controller
    Service Locator Implementation
    Instantiate
    Action Filter
    View
  • 44. Unit Testing
    TestableApplication
    UsingInversion of Control principle
    Can be tested:
    Controllers
    Routes
    Html helpers
    UI Models
    View logic
    Etc.
  • 45. MVC Control Libraries
    Client Side Controls
    JQuery IU
    DOJO
    Etc.
    Server Side Controls
    Telerik
    DevExpress
    Etc.
  • 46. MVC VS WebForms
  • 47. When we do not need MVC?
    I need MVC, because
    … it is better than Web Forms
    … it implements MVC architecture
    … I want to escape from view state
    … I donot want automatically generated id in HTML
    … I want to get full control over HTML
    … I want more friendly URLs
  • 48. MVC Benefits
    Automated testing
    Powerful AJAX client side
    Flexibility, extensibility, clarity
    Easy of learning and easy of using
    Clearly separated client side and server side
  • 49. MVC Disadvantages
    Speed of development (particularly in early stages)
    … but you can win when you make changes in finished product
  • 50. Conclusion
    ASP.NET MVC
    Convenient
    Easier
    Clearer
    Faster
  • 51. Volodymyr Voytyshyn
    5 KnyahyniOlhy Str., Rivne 33000, Ukraine
    Tel: +38(066) 41 83 509
    E-mail: vvoit@softserveinc.com
    voytyshyn@gmail.com
    Skype: voytyshin
    Thank You!
    Copyright ©2011 SoftServe, Inc.
    Contacts