Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GWT中的UIBinder_Gwt_Uibinder - Fatal编程技术网

GWT中的UIBinder

GWT中的UIBinder,gwt,uibinder,Gwt,Uibinder,我试图理解GWT中的UIBinder概念。我在网上看了几本教程。我的问题是: 1) 为什么有人会想使用UIBinder?这仅仅是因为我们将编写更少的代码,并像直接编写javascript一样进行开发吗 2) 使用UiBinder是否可以完成GWT无法完成的事情,反之亦然 我浏览了链接,该链接提供了关于同一问题的直接讨论。还有其他的观点或建议吗 提前感谢。GWT在创建DOM过程中的最大优势是,也称为“声明性布局” UIBinder为您提供了一种使用传统HTML和CSS而非java编程方式声明应用程

我试图理解GWT中的UIBinder概念。我在网上看了几本教程。我的问题是:

1) 为什么有人会想使用UIBinder?这仅仅是因为我们将编写更少的代码,并像直接编写javascript一样进行开发吗

2) 使用UiBinder是否可以完成GWT无法完成的事情,反之亦然

我浏览了链接,该链接提供了关于同一问题的直接讨论。还有其他的观点或建议吗


提前感谢。

GWT在创建DOM过程中的最大优势是,也称为“声明性布局”

UIBinder为您提供了一种使用传统HTML和CSS而非java编程方式声明应用程序和小部件布局的方法。这为您提供了一种更丰富的方法来创建应用程序

浏览器通过将大字符串HTML填充到innerHTML属性中来构建DOM结构比通过一系列API调用来构建DOM结构更好。很自然地利用了这一点,结果是构建应用程序的最令人愉快的方式也是构建应用程序的最佳方式

  • 是一个旨在分离功能和功能的框架 用户界面视图

  • UiBinder框架允许开发人员根据需要构建gwt应用程序 配置了GWT小部件的HTML页面

  • UiBinder框架使与UI设计人员的协作更加容易 谁比Java源代码更熟悉XML、HTML和CSS
  • UIBinder提供了定义用户界面的声明方式

  • UIBinder将程序逻辑与UI分离

  • UIBinder类似于JSP对servlet的作用

下面是UIBInder如何比传统java代码更具优势的一个例子

回答您的问题(这些问题是在我开发时观察到的)

  • 如果您熟悉HTMl和CSS,您可以简单地
    layout
    那里的结构(意思是
    ui.xml
    tempaltes),并且可以简单地使用GWT。这减少了编译时间

  • 同样,您可以简单地用xml编写标记,并应用样式和其他DOM属性,在java代码中,您必须编写不多行代码(至少2到3行)来准备具有样式和特定DOM属性的小部件

  • 根据我的经验,我最近在这里总结了几点。
    仅基于Java的布局存在问题

    •难以用Java格式化HTML –想想servlet和JSP –基于HTML的布局通常不够动态 •如果是,请使用它! •布局难以可视化 –查看Java代码不容易看到最终结果 •图形用户界面网页设计师难以有效参与 –他们通常不懂Java –即使您成功地将设计融入Java,也很难维护

    主要思想

    •使用XML文件布局内容块 –可以表示HTML或小部件 •创建表示该块的Java类 内容 –涉及到一些过于详细的步骤,但是Eclipse 有快捷方式,可以自动制作其中的大部分 •在主应用程序中使用该Java类 –如果类表示HTML,则使用GWT DOM API 插入它 –如果类表示小部件,请使用普通的“添加”方法 插入它

    UiBinder的优点 •可以使用HTML制作复杂的页面布局 –或类似HTML的XML •类似于将JSP添加到纯servlet应用程序 •更易于维护 •图形网页设计师可从以下方面参与: 通过维护进行初步设计 –易于从常规HTML开始,并逐渐“加入” GWT绑定 •关注点分离 –UI的美学和功能不再混为一谈 •交叉引用的编译时检查 在XML和Java之间,甚至在XML本身内部

    •更好的浏览器性能 –浏览器在将长字符串填充到 元素的内部HTML •在执行JavaScript API时,情况并非如此 –课程:尽可能使用常规HTML!
    –UiBinder的目标:让简单的选择成为正确的选择

    关于UiBinder@Baadshah的好文章非常感谢您的回复。但是你能解释一下你所说的话到底是什么意思吗:UIBinder提供了一种定义用户界面的声明方式。使用UIBinder,你可以声明屏幕的外观,但与HTML的工作方式类似。与使用纯get java代码相反,您需要编写构建gui的步骤。在java中,你会说在那里放一个按钮,在那里放一个文本框。你说“让它看起来像这样”。是的,没错。迈克尔已经发现了。此外,声明性布局在某种意义上是将应用程序框架布局声明为HTML页面(xml),其中散布GWT小部件,然后在java代码中使用它们。而不是使用新的java代码创建小部件。非常感谢。现在有了更好的想法现在还不清楚谷歌在内部使用了多少UiBinder,甚至在我分配赏金之前,查询就结束了!!!!