我们的webapp在GWT 2.2中实现,大量使用UIBinder。我非常希望UIBinder能够定义与HTML内联的样式,或者至少在<ui:style>
部分中定义样式。作为程序员,这种模块化确实吸引我,因为它将样式放在了使用的位置。
对于在多个地方使用的样式,我将它们重构为CommonStyles.css
/ CommonStyles.java
,并在我的*.ui.xml
文件中引用它。
到目前为止,这种方法运行良好,但现在公司已经签约了一个HTML / CSS设计师来重新设计。我们花了几天的时间试图让他加快Eclipse&amp; GWT,没有太大的成功。为了满足截止日期,我们最终让他向我们提供了一个老式的巨型CSS文件,然后我们煞费苦心地重构为各种ui.xml
模块。
我的问题:为UIBinder应用维护单个老式的巨型CSS文件是否更好,以便设计师可以使用它?作为一名程序员,我很难以这种方式做事,但似乎这是让非程序员在设计上工作的唯一实用方法。
期望设计师了解Eclipse或Intellij等IDE是不合理的吗?
答案 0 :(得分:3)
从一个拥有一名程序员和一名设计师的公司的程序员的角度来看:
我们团队中的设计师在我们当前的项目之前从未使用过eclipse或Java。大约两个月前我们开始大量使用UiBinder的东西,并且可能需要几个小时的帮助,他已经设法变得非常精通。他现在正在检查已完成的&amp;通过完美的CssResource等模块化将自己的小部件放入源代码中。我仍然为他设置了相应的.css和.java文件,但随后我向他抛出了设置,他写了90%的ui.xml&amp; .css咬了自己,然后我回来在java中实现他的ui。有时我必须将<div>
更改为<g:Panel>
或其他任何内容。他并没有抱怨它太难了。现在他开始探索gwt提供的css扩展,如常量和表达式。
我会说你不应该为了你的设计师而放弃UiBinder的好处。在我自己的项目中,我希望必须为所有Java接口设置所有代码并生成模板,但我希望我的合作伙伴能够添加自己的样式,智能地分离css(例如CommonStyles.java vs. ThisWidgetStyles.java),并了解当他的样式名称变成GVDWK
时发生了什么。