From ad14c7e9fd04e7691e3fa8f12b1c54286de256c1 Mon Sep 17 00:00:00 2001 From: Mathias Schopmans Date: Tue, 4 Apr 2017 09:52:15 +0200 Subject: [PATCH] Add Play Framework --- radar/2017-03-01/play-framework.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/radar/2017-03-01/play-framework.md b/radar/2017-03-01/play-framework.md index 1ef0a9f..a6c3815 100644 --- a/radar/2017-03-01/play-framework.md +++ b/radar/2017-03-01/play-framework.md @@ -4,3 +4,13 @@ ring: adopt quadrant: languages-and-frameworks --- + +The Play Framework is a lightweight (web)application framework for Java and [Scala](https://extranet.aoe.com/confluence/display/knowledge/Scala+Lang) programmers. + +A developer can choose from different modules to include necessary functionality such s accessing http resources, databases, and so on. As a consequence, the developer can choose, and is not distracted by or clobbered with irrelevant things. This approach is considered as minimalistic, but it is easy to include necessary functionality. + +Regarding the architecture, Play is stateless and built on Akka. As a consequence, Play applications have much lower resource consumption regarding CPU und memory and can scale easily. Play manages concurrency without binding a request to a thread until the response is ready. + +With the use of "[Futures](http://docs.scala-lang.org/overviews/core/futures.html)" in your code you can turn synchronous tasks (such as IO or API call to another service) into asynchronous and you can build non-blocking applications. It is recommended to understand the principles Play uses to achieve performance and scalability. + +Play can act as backend service delivering JSON, for esample. For building web applications. the [Twirl](https://www.playframework.com/documentation/2.5.x/ScalaTemplates) template engine enables server-side rendering of html pages. These html pages can include css and java script parts of your own choice.