diff options
Diffstat (limited to 'documentation/introduction/intro-goals.asciidoc')
-rw-r--r-- | documentation/introduction/intro-goals.asciidoc | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/documentation/introduction/intro-goals.asciidoc b/documentation/introduction/intro-goals.asciidoc new file mode 100644 index 0000000000..0972a998cf --- /dev/null +++ b/documentation/introduction/intro-goals.asciidoc @@ -0,0 +1,53 @@ +--- +title: Goals and Philosophy +order: 4 +layout: page +--- + +[[intro.goals]] += Goals and Philosophy + +Simply put, Vaadin's ambition is to be the best possible tool when it comes to +creating web user interfaces for business applications. It is easy to adopt, as +it is designed to support both entry-level and advanced programmers, as well as +usability experts and graphic designers. + +When designing Vaadin, we have followed the philosophy inscribed in the +following rules. + +== Right tool for the right purpose + +Because our goals are high, the focus must be clear. Vaadin is designed for +creating web applications. It is not designed for creating websites or +advertisement demos. You may find, for example, JSP/JSF or Flash more suitable +for such purposes. + + +== Simplicity and maintainability + +We have chosen to emphasize robustness, simplicity, and maintainability. This +involves following the well-established best practices in user interface +frameworks and ensuring that our implementation represents an ideal solution for +its purpose without clutter or bloat. + + +== XML is not designed for programming + +The Web is inherently document-centered and very much bound to the declarative +presentation of user interfaces. While Vaadin allows for declarative designs of +views, layouts, and even entire UIs, the programmatic approach by building the +UIs from Java components frees the programmer from these limitations. To create +highly dynamic views, it is more natural to create them by programming. + + +== Tools should not limit your work + +There should not be any limits on what you can do with the framework: if for +some reason the user interface components do not support what you need to +achieve, it must be easy to add new ones to your application. When you need to +create new components, the role of the framework is critical: it makes it easy +to create re-usable components that are easy to maintain. + + + + |