Java Script Single Page Applications

fsdgf

Java Script Single Page Applications

Once upon a time, the web was a place for content — research data, personal websites, encyclopedias and references. Since then it has become a repository for the world’s entertainment, communication, transaction, and wealth of knowledge. Every business has a web presence, everybody has accounts on half a dozen social networks, and if you don’t have an e-mail address, you’re not reading this.

 

We get online to go to work, to stream TV shows and buy music, to do our banking, to find recipes, to discover astrophysics, to share funny news articles with our friends, to download and update our software, to laugh at cats, to do our Christmas shopping, and to do just about everything else.

 

We’ve begun to demand software on more devices than ever — it’s no longer just PCs and Macs. We’ve thrown into the mix Linux OS’s, iPhones and iPads, Android phones and tablets, Windows phones and tablets, BlackBerries, Amazon products…. And then we want to use the same software we know and love just about anywhere, instantly. I need to reconcile my finances from my phone or work computer without worrying about device compatibility and without having to install and uninstall software whenever I need it.

 

  • HTML5 and JavaScript applications may well be the way of the future, since any “smart” device you buy today has at the least a functional web browser. There are a number of advantages to the end user to run software in the web browser:
  • The user doesn’t need to wait for the software to install
  • The user doesn’t need to worry about whether the software is compatible with their device (well, except for IE 8 users…)
  • The user won’t violate any company policy about installing software on a work computer
  • The user doesn’t need to worry about putting their computer at risk by installing software from an unknown publisher
  • The user’s device won’t require excess hard disk space (besides local storage and cookies) or registry edits
  • The user can abandon the application at any time and it won’t burden the user’s device until it is removed
  • But perhaps the coolest takeaway is that the developer writes the program once and it runs almost seamlessly in any environment with a standards-compliant browser. You write your APIs in the server environment of your choice, and the bulk of the software is simply HTML, CSS, and JavaScript — technologies that are hardly new to most developers, have been tried and tested, and are executed 95% the same across the board.

 

It’s certainly not a new idea to provide interactive interfaces on the web. One of the biggest drawbacks for a long time was that websites simply weren’t as capable as installed software, and that’s certainly for the best — certain parts of the user’s computer should be off-limits to the Internet! But it’s that safety feature that creates a sense of trust on the user’s end — how much damage can I do to my computer by accessing a website? The answer is virtually none — as long as you’ve got some sort of standard security suite on your computer, you’re not going to do any damage unless you hit Yes on the suspicious prompts or enter personal information on an untrustworthy site.

 

As many HTML5 features become standard among desktop and mobile browsers, the web is more capable than ever before. We no longer live in the World Wide Web of click – reload – click – type – click – reload. Since Google’s Gmail pioneered AJAX, the web has been enriched with instant interfaces for sending feedback, authenticating, navigating, fetching and submitting data, and more. You can do more and more powerful things with simple technologies. Some companies design whole software applications right in the browser, like Google Docs and Gmail, Outlook.com, TD Ameritrade, Weebly, and hundreds more — not to mention existing giant website applications like Facebook.com are a healthy mix of dynamic navigation and standard page-to-page navigation. Yet another advantage of JavaScript is that you can adapt existing web applications one component at a time.