Created
September 10, 2015 15:24
-
-
Save Ivanknmk/980447a282517fea7b7b to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Proposed stack: Playframework + AngularJS | |
Frontend : AngularJS | |
Angular is client side framework to develop web applications. It aims to simplify both the development and the testing of such applications by providing a framework for client-side model–view–controller (MVC) and model–view–viewmodel (MVVM) architectures, along with components commonly used in rich Internet applications. | |
Advantages: | |
High Re-usability – The back-end code only needs to spit out JSONs. There could be n number of clients for the same service who would be consuming these JSONs on the webapp level as well as mobile. | |
Development is fast and simple. | |
Front end can be tested in isolation from the back end and is easy to test. | |
Good for apps that have highñy interactive client side code. | |
Dependency injection. | |
The front end is totally independent of the back end and the back end can be swapped out to a different language. | |
Many built in features, from a DOM normalization API in jqlite to a promises API via $q, to Ajax support via $http. | |
Maintained by Google and a very active community. | |
Uses standard HTML | |
Backend: Playframework | |
Playframework is a web framework with focus on productivity and is stateless by default. Is supported by large companies like Typesafe and Linkedin. | |
Advantages: | |
Dramatically improved developer productivity. | |
Make a change, refresh the page, see the change. Hot reload for all Java code, templates, config changes, etc allows you to iterate much faster. This is available in many dynamic languages, but no other Java framework we've seen comes close. | |
Flexible. | |
Just about everything in Play is pluggable, configurable, and customizable. | |
Modern stack. | |
Servlets and the many frameworks built on them feel like they've fallen behind the times. Play is an MVC stack on top of Netty and Akka and has built-in support for most tasks you'd need in a modern web framework: REST, JSON/XML handling, non-blocking I/O, WebSockets, asset compilation (CoffeeScript, less), ORM, NoSQL support, and so on. | |
Java (and Scala). | |
Use reliable, type-safe languages and leverage JVM performance to scale to many users and many developers. Also, you can leverage the huge Java community, strong IDE/tooling support, and tons of open source libraries. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment