The Rise of Front-End Technology
Due to this phenomenon, user expectations have significantly grown. We no longer evaluate a web application based on its practicality alone, but we also consider its appearance, responsiveness, animations, and overall experience. As a result, web developers are now starting to rely on front-end technologies more than ever before.
Unfortunately, most technologies fulfill only half of the requirement, meaning they are designed specifically for one side; either the client-side like AngularJS or Bootstrap for delivering a fancy look & feel, or the server-side like the JSF, which focuses primarily on data integration. Either way, you would have to deal with one side completely on your own, as well as the communication between the two sides by yourself. Consequently, in the attempt to minimize losses, developers face a difficult decision in choosing which side.
Combine Existing Rich Front-End Technology with Server-Side
ZK 8 is created to present developers with an ideal solution: combine the strengths of both sides. It aims to leverage the advancing client-side power with client-side command binding and template injection while still allowing you to enjoy the equally important server-side integration and security. In short, with ZK 8 you can stay true to your Java roots, but also effortlessly keep up with the ever-evolving world of front-end technologies.
Template injection is done by the introduction of shadow components – a pure server-side reusing mechanism. The shadow components can easily turn HTML pages created by a web designer into a dynamic web page with data binding. Using shadow components is similar to using standard ZK UI components through MVVM approach. By manipulating the shadow components, developers can inject different HTML templates based on the given condition.