Listen to this story
|
RIFE recently made a comeback since its popular years between 2002 and 2010. Built on the foundations of the original RIFE framework, RIFE2 is a full-stack framework to quickly and effortlessly create web applications with modern Java.
Since its initial release, the Java environment has evolved and many of the original RIFE APIs can now be replaced with pure Java, eliminating the need for XML, or YAML, and allowing for the use of expressive, type-safe code.
Created by Geert Bevin, one of the first Java Champions and speaker at many Java conferences, the new framework retains most of the original features while introducing new ones, for a fraction of the footprint and with even greater developer productivity than before.
According to its creators, RIFE2 requires only 10% of the effort to achieve 90% of the desired results. It is also compatible with other Java libraries and frameworks when needed.
RIFE2’s full-stack design includes intelligent integrations between layers, emphasising practical decisions that prioritise code maintainability and developer productivity.
Some features of this framework include web continuations, bidirectional template engine, bean-centric metadata system, full-stack without dependencies, metadata-driven SQL builders, content management framework, full localisation support, resource abstraction, persisted cron-like scheduler, and continuations-based workflow engine.
An HN discussion raised the question on how RIFE2 compares to other web frameworks in Java, such as Ratpack and Spark. One participant suggested that the major difference lies in RIFE2’s treatment of “continuations” as a fundamental aspect of the framework, which “allows one to build flows around pausing and saving the state of execution, and resuming it with all variables captured at a later time, which opens up neat possibilities.”
On the other hand, the participant pointed out that something like OpenJDK’s Loom framework appears to experience difficulties in its ongoing implementation when compared to RIFE2’s approach.
RIFE2’s source code can be found here.