`
winzenghua
  • 浏览: 1379930 次
  • 性别: Icon_minigender_2
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

UI生成统一JSR?(转载自Metawidget创始人博客)

阅读更多

source: http://kennardconsulting.blogspot.com/2008/10/unified-theory.html

I just had an interesting exchange with the guys from the OpenXava project. We discussed differences in our two approaches, as well as those of other UI generation projects, and what it would take to unify them all under a JSR one day. I think we're a long way from that day, primarily because UI generation isn't particularly 'mainstream' yet (at least, not in the sense of ORM). Still, it's often said in physics that even though we don't know what the Unified Theory is, we know something about what features it must have.

Can we say something similar about UI generation? I'll list here all those features I think are being explored, either by Metawidget, OpenXava or one of the other projects, and see if we can update this page over the years to form consensus.

Static or Runtime

Should the generation happen statically or at runtime? If runtime, how do you allow customisation? If statically, how do you allow re-running the generation when the domain model changes (without losing any customisations)?

Modeling Language

Should the generator have its own modeling language, which developers use to describe the UI, or should it try and derive the UI automatically? Do modeling languages introduce error-prone duplication? Is automatic derivation too inflexible? Is there enough metadata to drive automatic derivation, or do we have to 'guess and fill in the gaps'?

Production or Prototype

Should we expect UI generation to be able to be used in production applications, or only during a prototyping phase?

Customisation

What sort of customisations of the generated UI are important? Graphics? Layouts? How should we facilitate them?

Bounds of Generation

Should we try to automatically generate the whole UI, or just pieces of it? Is generating the whole UI flexible enough? Is just generating pieces useful enough?

Multiple Platforms

Is supporting multiple platforms (eg. desktop, web, mobile) important?

Consistency

Given the same domain model, should we try and produce a consistent UI across all platforms? Does this risk a 'lowest common denominator'? Does tailoring uniquely to each platform introduce too much work for the developer?

Diverse Architectures

Should the generator care about diverse architectures? Is mandating the technology stack of the application too restrictive? Or should we try to enforce 'good coding' that way? Does supporting multiple versions of everything introduce too much complexity? Is the ability to retrofit existing applications an important goal?

Third Party Components

Should we support third-party UI components? What if they are not available on all platforms (eg. desktop, web)?

分享到:
评论

相关推荐

    JSR133中文版.pdf

    本文是JSR-133规范,即JavaTM内存模型与线程规范,由JSR-133专家组开发。本规范是JSR-176(定义了JavaTM平台 Tiger(5.0)发布版的主要特性)的一部分。本规范的标准内容将合并到JavaTM语言规范、JavaTM虚拟机规范...

    jsr2控件——快速组建WEB前台应用的UI控件包

    **JSR2控件:构建高效WEB前端UI的利器** JSR2,作为一个由国内开发者编写的WEB前端UI控件库,旨在为开发者提供一套快速组建高效、美观的用户界面解决方案。这款控件集与EXT有诸多相似之处,但在体积上更加轻巧,...

    jsr173_api

    该API的主要目标是为Java开发者提供一种高效且灵活的方式来解析和生成Streaming XML,即在不加载整个XML文档到内存的情况下处理XML数据,从而提高了处理大型XML文档的能力。 JSR 173 API的核心接口是`javax.xml....

    23 Spring Core参数校验之JSR303_JSR-349注解-慕课专栏1

    Spring Core提供了一种优雅的方式来处理参数校验,特别是通过JSR 303、JSR 349和JSR 380这些标准注解,实现了高效且易于维护的验证机制。 JSR 303最初定义了JavaBean验证的标准,而JSR 349是其修订版,主要增加了对...

    JSR268门户标准

    ### JSR268门户标准概述 #### 一、JSR168与JSR286背景 JSR168(Java Specification Request 168)是Java门户技术的第一个标准化规范,发布于2003年10月。这一规范定义了一种通用框架,用于构建基于门户的应用程序...

    jsr268规范详解

    JSR268 规范详解 JSR268 是 Java Portlet Specification 的第二个版本,旨在提供更加强大和灵活的 Portlet 开发体验。该规范的出现是为了解决 JSR168 的一些限制和问题,例如仅支持基本用例、功能上有一些限制等。 ...

    用WebLogic Portal 8.1 开发 JSR 168 Portlets

    【WebLogic Portal 8.1 开发 JSR 168 Portlets】是关于使用BEA WebLogic Portal 8.1版本开发遵循JSR 168标准的portlet的实践指南。JSR 168(Java Portlet)规范旨在促进portlet与门户之间的可移植性,确保portlet...

    jsr168和jsr268中文文档及开发手册

    JSR(Java Specification Requests)是Java社区进程(JCP,Java Community Process)的一部分,用于提出和定义新的Java技术规范。JSR168和JSR268是两个与Java Portal技术相关的标准,它们主要涉及如何创建和管理可...

    JSR303+AOP数据校验

    【JSR303+AOP数据校验】是Java Web开发中的一种常见实践,用于确保应用程序接收到的数据质量。JSR303(Java Bean Validation)是Java平台上的一个规范,它定义了一种标准的方式来验证对象属性,以满足业务规则。AOP...

    jsr227 参考文档

    JSR227规范为J2EE平台提供了一套统一的数据绑定和数据访问机制,通过定义一系列的接口和标准,简化了数据处理的过程,提高了应用开发的效率。它不仅关注运行时的数据处理流程,还考虑到了设计时的工具支持,使得开发...

    JSR-168 Portlet指南.doc

    【JSR-168 Portlet开发指南】 JSR-168,全称为Java Specification Request 168,是Java社区制定的一项标准,旨在为portlet开发者提供一套API,以实现portlet的可移植性和互操作性。Portlet是一种组件化的应用程序,...

    JSR256 API

    **JSR256 API** 是Java Community Process (JCP) 定义的一个规范,全称为Java Specification Request 256。这个API专注于在Java 2 Micro Edition (J2ME) 平台上提供传感器接口,使得移动设备和嵌入式系统能够有效地...

    jsr305-3.0.2.jar

    jsr305-3.0.2.jar

    JSR303jar包

    JSR303,全称为Java Specification Request 303,是Java Community Process(JCP)提出的一个关于数据校验的标准。这个标准定义了在Java应用程序中进行验证的一系列API和注解,使得开发者能够方便地对输入数据进行...

    JSR 181 Web Services Metadata for the JavaTM Platform

    ### JSR 181 Web Services Metadata for the Java Platform #### 1. 引言与概述 《JSR 181 Web Services Metadata for the Java Platform》是针对Java平台的一套简化Web服务开发模型的标准规范。它旨在降低开发...

    jsr311-api-1.1.1-API文档-中文版.zip

    赠送jar包:jsr311-api-1.1.1.jar; 赠送原API文档:jsr311-api-1.1.1-javadoc.jar; 赠送源代码:jsr311-api-1.1.1-sources.jar; 赠送Maven依赖信息文件:jsr311-api-1.1.1.pom; 包含翻译后的API文档:jsr311-api...

    j2ME jsr 238

    4. **文本方向**:对于那些使用从右到左书写的语言(如阿拉伯语和希伯来语),JSR-238提供了一种机制,使得UI元素可以适应这种文本流向。 5. **数字和度量单位**:规范支持根据地区标准显示数字和度量单位,例如,...

    jsr133_content.pdf

    Java内存模型(JMM)是Java程序并发执行时的核心规范,由JSR-133专家小组开发。JSR-133全称为JavaTM Memory Model and Thread Specification,它的目标是确保多线程环境下程序的可见性和一致性。该规范与Java平台...

    JSR256 Mobile Sensor API

    - **统一接口**:JSR256提供了一套统一的接口,使得开发者能够轻松地访问不同类型的传感器,无需关心底层硬件差异。 - **支持多种传感器**:除了加速度计外,规范还支持其他类型传感器的接入,例如陀螺仪、磁力计等...

    JSR-168 中文版,实现门户必备。

    这个标准为开发可重用、可组合的Web组件,即portlet,提供了一个统一的框架,使得portlet能够在多种门户服务器上运行,从而实现了跨平台的互操作性。JSR-168的出现极大地推动了企业级门户应用的发展,尤其是在Java...

Global site tag (gtag.js) - Google Analytics