Up DevForce Resource Center
DevForce Resource Center » Core concepts

Core concepts

Last modified on February 22, 2013 14:59

DevForce is a framework for building and operating Rich Internet Applications (RIAs). DevForce provides the tools, techniques, and libraries to build powerful RIAs fast.

RIAs achieve a rich and responsive user experience by executing substantial portions of application logic on clients that are close to their users. As Internet applications they communicate information between clients and servers elsewhere that provide back-end services and data.

DevForce makes it easier for developers to build rich client experiences and back-end services while minimizing the effort required to put them together. 

How? 

Because DevForce is specifically designed to take advantage of client-driven development.

Client-driven development

RIA applications are user productivity applications. People who make RIA applications—people like you—focus primarily on client-side development because that’s where the users are. The application succeeds only to the degree that end users interact with it efficiently and productively. 

That’s why RIA application developers always build a client application. That’s why RIA programmers try to spend most of their time on client-side development.

Of course their responsibilities do not end on the client. RIA applications depend upon back-end services and data storage. RIA developers need to build those services too and must manage communications between the client application and the server.

If you are a RIA developer, you have to find a way to write and maintain both the front- and the back-end in a way that keeps your productivity high and your focus on the best possible user experience. Every minute spent on infrastructure is a minute better spent building perceived customer value.

DevForce helps keep your focus on the client by:

  • Establishing a uniform programming model for both client and server
  • Encouraging client-side development
  • Minimizing differences between client code and server code
  • Eliminating cross-project code-generation magic
  • Facilitating quick and easy evolution of the entity model
  • Maintaining small, stable service APIs
  • Taking full advantage of LINQ , Entity Framework, and OData technologies

Is DevForce right for you?

DevForce is a great choice for most RIA projects—just take a look at the advantages it provides. DevForce works best in combination with certain technologies and when working on projects with matching design and development goals. 

The sweet spot

  • WPF, Silverlight, or Windows 8 (Store and Phone) apps
  • Many screens for display and input of complex data
  • Entity-oriented architecture that queries and saves sets of related entities
  • Entity models with more than thirty entities
  • Entity Framework  5 to model entities and persist their data
  • Relational database supported by an EF provider as the primary data store 
  • .NET 4.5 on server  (required)

Other scenarios

DevForce can work well in these less common scenarios 

  • Windows Forms clients (with DevForce data binding components)
  • Android, iOS,or WP7 mobile platforms that work with OData
  • ASP.NET and ASP MVC (two-tier on the server, AJAX+OData in the browser)
  • SharePoint 2010 + Silverlight
  • Azure hosting

Maybe not

  • Minimal data entry; mostly a search-and-present application (Bing, Netflix)
  • Application is primarily a service to arbitrary clients (tax code service, Twitter, email)
  • Can’t or won’t use Entity Framework

What's next?

Interested in learning more? Watch a video, take a hands-on quick tour, or dig into the architecture to see how DevForce brings client-driven development to life.

Tours

Videos

Tags:
Created by DevForce on February 14, 2011 11:23

This wiki is licensed under a Creative Commons 2.0 license. XWiki Enterprise 3.2 - Documentation. Copyright © 2020 IdeaBlade