mardi 5 mai 2015

What JS Framework Would You Currently Use for a Responsive Web Application with a Backend on the Microsoft Stack as of Today (May 2015)

I know this is a pretty general question and its answer changes constantly, that's why I included the current date in the title.

Application

I have to create a new business application with the main function of keeping an activity log, including log item entry with details, listing activities, some statistics, etc.

Platform

It has to be a web application and be responsive (mobile first), running only on the most recent browsers but on all (or most) platforms (Windows, Linux, Mac, iPhone, iPad, Android devices). It should be responsive (in the old sense of responding quickly and nicely to the user inputs) application but it is not required to be SPA.

Backend Technologies

The backend is fixed to be on the Microsoft stack with Asp.Net, Identity, MVC and in the future Asp.Net vNext.

Frontend Technologies

This is where the question comes in. There is nothing fixed and everything is open. I've almost decided to go for Bootstrap as it seems to provide a lot of nice UI functionalities which have now become almost required. I also think I am going to include jQuery for any JavaScript I have to write myself, not coming from another solution (see below).

I am thinking about an MVC and SPA (partial or full) framework on the frontend and if I should use one. One thing in particular is that I don't have experience with any of the frameworks and it will slow down the development and development speed is a more important factor than creating a purely client based application. Also I have the feeling .net continues to be a much faster development platform than JavaScript although some JS specialists may disagree (but this is probably an experience based opinion).

Frameworks

I looked at those platforms shortly but as I don't have time to learn all of them, I am turning to you for advice, pros and cons of each of them:

AngularJS

AngularJS seems to be one of the favorites and very powerful. There are several problems I see: 1. It seems to be pretty complicated so the learning curve will probably be pretty steep. 2. It seems to be a very good choice for an SPA but what about a partial SPA or even just a responsive web application? It is an MVC of its own and will defy the usage of a powerful backend like .net MVC. 3. With the current status of the framework and the announcement of v.2 but without clear deadlines for its delivery, it becomes a very slippery choice for a brand new application - I cannot wait for v.2 but using v.1 means to have an outdated framework in just several months.

Ember.JS

I don't know a lot about EmberJS but it seems to be an average solution, not overly complicated but also not as powerful.

Knockout.JS

Knockout seems to be a lightweight but also not very capable framework. Still I have the feeling it might be the right one if I don't want to go to full client side MVC and to an SPA. However maybe it will be very restrictive in the future and will not allow any growth and development of the application.

Others

I am pretty sure there are other frameworks and I would like to hear your opinion on them.

So what would you chose today if you had to start such an application and you had the freedom?




Aucun commentaire:

Enregistrer un commentaire