When comparing Play Framework vs Beego, the Slant community recommends Play Framework for most people. In the question“What are the best backend web frameworks?” Play Framework is ranked 8th while Beego is ranked 11th.
Ranked in these QuestionsQuestion Ranking
Pro Interoperable with Java
It's like Java, but more Haskell-y.
Pro Good documentation and a great community
Play has quite a large community which provides numerous tutorials and videos related to developing with Play.
The Play official documentation covers many things, such as the framework itself but also specific stuff such as Akka, SBT and Netty.
There are also many big companies that base their main sites around Play, one of them is LinkedIn which provides third-party documentation on a regular basis.
Pro Asynchronous Core
Pro Play is an extensive ecosystem
Play uses Akka for concurrency, Scala for a templating engine, Netty as a client-server framework and SBT (Simple Build Tool) for building. And they all come out of the box.
Play also comes with the option to scaffold your applications. Play is an all-embracing ecosystem designed to increase developer productivity and shorten development times.
Pro Simple for beginners
Play is very simple to get started. The documentation is very helpful for beginners and advanced users alike and the official website has a great "Getting Started" tutorial to begin developing with Play.
Pro Readable code
Play framework's convention over configuration methodology makes most Play projects have a very similar structure. This means that the code written for the framework is very readable. This enables a developer to switch between applications without having to relearn the ecosystem for every project. The built-in templating system also helps with code and makes it possible to have a very low count of lines of code.
Pro Good Websocket Support
Pro Can use Java, one of the most widely known languages
Java is one of the most widely known languages, so people coming from that background can jump right in and not have to learn a new language syntax.
Pro Built-in tool which watches for changes
Beego has a built-in tool which watches the code for changes. This tool (called bee tool) can be configured to run any task once the code changes. It can run tests or reload and rebuild the whole project.
Pro No need to find and install external libraries
Beego is a "batteries included" web framework, which means that a lot of features already come out of the box. This way you don't have to spend time and find third-party libraries to integrate to the framework for most of the tasks you need to complete.
Pro Built in ORM
Beego's eloquent ORM is a simple and fast Object-Relational Mapping which helps with organizing the application's database. Beego examples and documentation all use the beego ORM. No need to learn to use and integrate another ORMs API.
Pro Auto testing
Con Not as many resources to learn
Other languages and frameworks have countless tutorials, books, moocs, etc. Java and Play does not have nearly as much.
Con Backward incompatibility
The jump from Play 1 to Play 2.x caused a lot of confusion. While it is important to have some kind of evolution, sometimes it causes backward incompatibility which can create some problems. It makes tutorials or modules made for the old version obsolete. This can make it hard for beginners to find useful resources. The template engine which used Groovy now uses Scala.
Con Non-idiomatic code
Con Builds may fail silently
Sometimes even though a build has failed, the pages will still render. Apparently it caches a previous build when the current one has a problem. This can be a frustrating though because it leaves you wondering why the page you are working on stopped working out of the blue.