1. ZK supports XML-like ZUML and modern MVC/MVVM design patterns built-in support providing better separation of the UI code with better re-usability and better test-ability
2. ZK integrates better with legacy apps (ZK JSP Tags/wrapping as JSF component)
3. ZK supports large concurrent users with superior performance and less memory consumption
4. ZK has more advanced mega components such as ZK Spreadsheet/Pivottable
5. ZK integrates with 3rd party JS libs easily because its client side is based on jQuery
6. ZK supports Responsive design using the same code base for PC and tablet/mobile
7. ZK supports modern Bootstrap-like themes for styling ZK components
8. Everything in Vaadin is provided in ZK but the reverse is not true (For eg. Responsive Design support and build in support for Twitter Bootstrap comes to my mind)
1. At the very low level you can customize ZK's UiFactory and completely control how to create components. Refer [here](http://books.zkoss.org/wiki/ZK_Developer's_Reference/Customization/UI_Factory) for UiFactory
2. If you are using MVC you could use a custom Renderer to dynamically create UI components based on certain information in the model
3. If you are using MVVM you could use children binding over a Map, and then use the property name (key) to determine the widget by some convention or the type of the value
to generate a UI from a map.
2. ZK integrates better with legacy apps (ZK JSP Tags/wrapping as JSF component)
3. ZK supports large concurrent users with superior performance and less memory consumption
4. ZK has more advanced mega components such as ZK Spreadsheet/Pivottable
5. ZK integrates with 3rd party JS libs easily because its client side is based on jQuery
6. ZK supports Responsive design using the same code base for PC and tablet/mobile
7. ZK supports modern Bootstrap-like themes for styling ZK components
8. Everything in Vaadin is provided in ZK but the reverse is not true (For eg. Responsive Design support and build in support for Twitter Bootstrap comes to my mind)
1. At the very low level you can customize ZK's UiFactory and completely control how to create components. Refer [here](http://books.zkoss.org/wiki/ZK_Developer's_Reference/Customization/UI_Factory) for UiFactory
2. If you are using MVC you could use a custom Renderer to dynamically create UI components based on certain information in the model
3. If you are using MVVM you could use children binding over a Map, and then use the property name (key) to determine the widget by some convention or the type of the value
to generate a UI from a map.
Not true......Vaadin also provides same....
ReplyDeletethis blog is not about "vaadin vs zk" but "why zk is cool"...
ReplyDeleteIndeed. Haha.
Delete