Technology musings
March 2015

Hybrid Angular SPAs: Avoid the ‘One Tool to Rule Them All’ Approach

Many professional developers tend to use particular stacks. Whether it is the Java, LAMP (Linux, Apache, MySQL, PHP), or .NET technologies, there is plenty with which to work. The trick is to know when and how to step out of your comfort zone.

As the web continues to evolve, a better user experience (UX) with more functionality is expected by our clients. With frameworks such as AngularJS and Knockout, it is easy to deliver a great UX. We are able to provide functionality that rivals many desktop applications, over the web, without any additional installations.

Single Page Applications (SPA) are all the rage these days. SPAs provide a consistent, fluid user interface (UI), and often provide a better UX. By delivering part of the application in smaller JavaScript files, avoiding the dreaded full page post-backs, and taking advantage of client machine processing and browser caching strategies, the user can have a much better experience.

In learning a new technology or methodology, such as SPA with Angular, the difficulty is in avoiding the ‘one tool to rule them all’ approach. Many of the base tutorials will show the use of Angular to develop a single SPA. We have had a great deal of success leveraging our core technologies while adding newer technologies or methodologies where they make the most sense.

We have been working with a hybrid SPA approach. While many of our developers are most comfortable with .NET MVC and WebAPI, we have been able to incorporate mini-SPAs with a great deal of success. We will develop a feature/roll dependent SPA that can be packaged and delivered within a familiar MVC application.

We can still leverage the familiar ASP.NET Identity and OAuth packages to manage security and membership to get off the ground quickly, while providing a rich UX through a collection of mini-SPAs.

This approach seems to work for us, but we would like to hear your thoughts. What kind of approach has worked for you and your teams?

Tagged with: , , ,
No Comments

Leave a Reply

Your email address will not be published.