Overview
This article is all about use framework, get its benefits, and minimize work of the developer.
Currently I am working on one project. Project is in the banking domain. For banking domain, the first thing that one need to focus on the security and functionality rather than the design (UX). But in our case, due to some management decisions and less communication in between client and manager.
The most important thing in software development life cycle is communication. If communication is poor then project may take a long to complete. Anyways our main topic is to whether to use framework or not and when?
Using any framework for project is not mandatory but it is very useful when we want to develop any project in given span of the time or we can say that, in little span of time.
There can be lots of benefits of using framework, one can get it from google. But the question is how development is get faster when one use framework.
We will see this by taking one example.
Let us consider the scenario that, we are working on some project. Let’s named it as “WebAuth”.
WebAuth is simple project which just have very good GUI and will be used to provide authentication to user. First we will see that what are the problem we will face if we not use any framework. It’s plane and simple project created with basic technologies like HTML, CSS, JavaScript and AJAX.
So the project structure we can imagine, will be something like this.
WebAuth
-HTML
-CSS
-JavaScript
-Common files
Here HTML folder will contain all HTML files, CSS will hold all CSS and same for JavaScript and AJAX will be in JavaScript folder. Some common files which we required will be in folder named Common.
The project will work fine, but lots of efforts will be required if not managed this files properly. Because, CSS which will be using for the project, need to give reference path in all the HTML files. Which need to handle properly. This is not the case if project is in ASP.NET or PHP or any server side language. Because in case of asp.net we can have masterPage.master directly. This is not the case here because we don’t have any concept like master page.
One more important and common thing is that, generally software developer is not aware of the design. So one does inline CSS. Which is very much harmful.
If we follow this approach to develop a project, lots of management and properly structured data we have to put in the HTML file. One more thing, if the project which you are developing is banking or any e-commerce like project then you also have to take care of security in the project. Lots of headache here. So ultimately project tends to failure. And here framework comes in to the picture. If we have proper framework ready to use then we just have put the content of the HTML files and use it accordingly. Let’s build our project with some framework. Let’s take Durandal framework. Which is pure JavaScript framework and gives you properly managed structure for project.
Modified folder structure will be something like this
-app
-Views
Will contain all the html pages.
-ViewModel
Will contain all the JS files.
-CSS
-lib
-bootstrap
-durandal
-font-awesome
-jquery
-Knockout
-require
-Index.html
This is proper folder structure for out project.
As we are using durandal, it is framework for single page application. So one more point to our site has been added that, our site is single page application site.
There will be CSS for only one page, index.html because all the pages in app/views will be run in the special div of index.html called “applicaitonHost”. So no need to apply css for all page. It will get applied automatically. (NOTE: all the pages in app/view will start from
tag only.
Now the thing what we have to consider are only XSS and XST. Which can be viewed at the my previous articles.
Conclusion-Proper framework gives you proper structured project. Less headache of css and managing files. So it is very good to use framework.