avatar
wicket in action到手了# Java - 爪哇娇娃
t*e
1
去年amazon订的,今天刚deliver了。350页比JSF in action少了一半。看上去很不错
。等看完了和大家
汇报,讨论。
avatar
h*j
2
what is wicket

【在 t*******e 的大作中提到】
: 去年amazon订的,今天刚deliver了。350页比JSF in action少了一半。看上去很不错
: 。等看完了和大家
: 汇报,讨论。

avatar
t*e
3
One of the hundreds of Java Web frameworks. Seems very promising.
avatar
g*g
4
It has best user reputation among all frameworks I know.
Almost every user said some good things about it. That amazed me.

【在 t*******e 的大作中提到】
: One of the hundreds of Java Web frameworks. Seems very promising.
avatar
s*e
5
you are making it more and more attractive to me, although i've just learned
struts 2 and loved it so much.

【在 g*****g 的大作中提到】
: It has best user reputation among all frameworks I know.
: Almost every user said some good things about it. That amazed me.

avatar
t*e
6
真正比较流行的Java Web Frameworks有个7-8种,
Struts 2 (WebWork 2)
Struts 1
Spring MVC
JSF
WebWork 1
Stripes
Tapestry
Wicket
avatar
b*y
7
hmm, sounds interesting, would appreciate LZ to share your experience with
the framework...
avatar
w*h
8
有电子版吗

【在 t*******e 的大作中提到】
: 去年amazon订的,今天刚deliver了。350页比JSF in action少了一半。看上去很不错
: 。等看完了和大家
: 汇报,讨论。

avatar
t*e
9

You may download the pdf version of the book at the publisher's website.

【在 w***h 的大作中提到】
: 有电子版吗
avatar
S*t
10
看到哪了?我也开始看了。

【在 t*******e 的大作中提到】
: 去年amazon订的,今天刚deliver了。350页比JSF in action少了一半。看上去很不错
: 。等看完了和大家
: 汇报,讨论。

avatar
t*e
11

还没有呢,估计要下个月才有时间,你看不要太快啊。

【在 S*********t 的大作中提到】
: 看到哪了?我也开始看了。
avatar
t*e
12
上次和goodbug等几位讨论到了如何在wicket中把的html tag attribute值变成动态的
问题, 正好看到了这一章,就先说一下,以免忘了。实际上还有很多收获,等书看完再
说了。
JSP中用EL

Hello #{user.name}


Wicket一切都在Java code里

Hello user


1. onComponentTag method of Wicket components
webpage.add(new Label("label", "Hello "+user.getName()){
protected void onComponentTag(ComponentTag tag)
{
super.onComponentTag(tag);
tag.put("style", (user.isActive())?"color:blue":"color:r
avatar
g*g
13
No doubt this works, but it's a less than ideal solution.
You don't want to keep the color information in java code.
If you want to change the color from blue to green for example,
you want to use html or css, not recompile java.
I think it might be better to have 2 references of CSS id in java
code, at least you can change css later on.

【在 t*******e 的大作中提到】
: 上次和goodbug等几位讨论到了如何在wicket中把的html tag attribute值变成动态的
: 问题, 正好看到了这一章,就先说一下,以免忘了。实际上还有很多收获,等书看完再
: 说了。
: JSP中用EL
:

Hello #{user.name}


: Wicket一切都在Java code里
:

Hello user


: 1. onComponentTag method of Wicket components
: webpage.add(new Label("label", "Hello "+user.getName()){
: protected void onComponentTag(ComponentTag tag)

avatar
t*e
14

这就是个例子,当然可以用在任意的tag attribute上面.

【在 g*****g 的大作中提到】
: No doubt this works, but it's a less than ideal solution.
: You don't want to keep the color information in java code.
: If you want to change the color from blue to green for example,
: you want to use html or css, not recompile java.
: I think it might be better to have 2 references of CSS id in java
: code, at least you can change css later on.

avatar
d*k
15
刚刚找了个pdf的,我也看看吧。
avatar
t*e
16
刚看到书上的一段话,感觉可以用来界定conventional web frameworks和ajax-
centric frameworks.
"Wicket's approach to Ajax is that Ajax is optional."
如果对于一个web framework, Ajax是optional的, 就是conventional的web framework
. 个人感觉conventional web framework对HTML designer更加friendly.
avatar
g*g
17
For sure, full ajax is more like desktop design.

framework

【在 t*******e 的大作中提到】
: 刚看到书上的一段话,感觉可以用来界定conventional web frameworks和ajax-
: centric frameworks.
: "Wicket's approach to Ajax is that Ajax is optional."
: 如果对于一个web framework, Ajax是optional的, 就是conventional的web framework
: . 个人感觉conventional web framework对HTML designer更加friendly.

avatar
F*n
18
我觉的AJAX不是ESSENTIAL的,新WEB FRAMEWORK应该是把CLIENT SIDE的东西象HTML,
JS等从应用LOGIC中分离出去,WEB FRAMEWORK和HTML,JS CODE之间就好比C和汇编语言
的关系一样。AJAX只是一个实现技术,最好是TRANSPARENT TO USER AND DEVELOPERS。
换句话说,AJAX应该是可以被其他更好的技术,如GRID COMPUTING所替换的

framework

【在 t*******e 的大作中提到】
: 刚看到书上的一段话,感觉可以用来界定conventional web frameworks和ajax-
: centric frameworks.
: "Wicket's approach to Ajax is that Ajax is optional."
: 如果对于一个web framework, Ajax是optional的, 就是conventional的web framework
: . 个人感觉conventional web framework对HTML designer更加friendly.

avatar
t*e
19

不错,你对新framework的理解更准确,是抽象了HTML, JS的新的web programming方法。
老framework是围绕HTML的programming方法,对有HMTL designer的开发更合适。

【在 F****n 的大作中提到】
: 我觉的AJAX不是ESSENTIAL的,新WEB FRAMEWORK应该是把CLIENT SIDE的东西象HTML,
: JS等从应用LOGIC中分离出去,WEB FRAMEWORK和HTML,JS CODE之间就好比C和汇编语言
: 的关系一样。AJAX只是一个实现技术,最好是TRANSPARENT TO USER AND DEVELOPERS。
: 换句话说,AJAX应该是可以被其他更好的技术,如GRID COMPUTING所替换的
:
: framework

avatar
g*g
20
我觉得新的这些framework都是component based,本质上就是要趋近于
desktop programming. 对designer来说,让他们写html没问题,让他们
写一个不是所见即所得的desktop GUI是很难的。所以这种设计之下,大约
程序员要把html转成component的负担更重一些。

法。

【在 t*******e 的大作中提到】
:
: 不错,你对新framework的理解更准确,是抽象了HTML, JS的新的web programming方法。
: 老framework是围绕HTML的programming方法,对有HMTL designer的开发更合适。

avatar
t*e
21

有没有可能把Designer设计的网页转换成GWT,ZK开发的网站,而保持look&feel没有任
何变化的。

【在 g*****g 的大作中提到】
: 我觉得新的这些framework都是component based,本质上就是要趋近于
: desktop programming. 对designer来说,让他们写html没问题,让他们
: 写一个不是所见即所得的desktop GUI是很难的。所以这种设计之下,大约
: 程序员要把html转成component的负担更重一些。
:
: 法。

avatar
F*n
22
对Wicket或类似的FRAMEWORK来说,有一点值得注意,据说Wicket把XUL拿掉了,强调用
POJO的而不是Declarative UI Language. 我觉得这是一大退步。实际上把Declarative
UI和HTML混为一谈是非常可笑的。以前做过大量Swing Programming 的人都知道,用
JAVA做UI是非常MESSY的,Declarative UI(如COCONUT那个)应该是大方向。Wicket这
种把DSL丢掉的做法更象一个MARKET DECISION,短时间内能赢的那些HATE HTML JS的
DEVELOPER(like me),但时间长了,会发现实际上回到了老路。

【在 g*****g 的大作中提到】
: 我觉得新的这些framework都是component based,本质上就是要趋近于
: desktop programming. 对designer来说,让他们写html没问题,让他们
: 写一个不是所见即所得的desktop GUI是很难的。所以这种设计之下,大约
: 程序员要把html转成component的负担更重一些。
:
: 法。

avatar
F*n
23
用ZK理论上可能,用GWT不一定,因为ZK可以Wrap HTML和JS, 所以ZK有点象C++, 而GWT
, Wicket等更象Java。
但实际应用中这些Framework问题都不少,要继承Legacy Code的话还是不要用。

【在 t*******e 的大作中提到】
:
: 有没有可能把Designer设计的网页转换成GWT,ZK开发的网站,而保持look&feel没有任
: 何变化的。

avatar
g*g
24
说不上吧,wicket没有扔掉dsl, gui就是xhtml,java代码里面基本不涉及look&feel
的部分。wicket强调的是简化component的描述,不使用XML来声明component,而直接
用类和变量实现了。

Declarative

【在 F****n 的大作中提到】
: 对Wicket或类似的FRAMEWORK来说,有一点值得注意,据说Wicket把XUL拿掉了,强调用
: POJO的而不是Declarative UI Language. 我觉得这是一大退步。实际上把Declarative
: UI和HTML混为一谈是非常可笑的。以前做过大量Swing Programming 的人都知道,用
: JAVA做UI是非常MESSY的,Declarative UI(如COCONUT那个)应该是大方向。Wicket这
: 种把DSL丢掉的做法更象一个MARKET DECISION,短时间内能赢的那些HATE HTML JS的
: DEVELOPER(like me),但时间长了,会发现实际上回到了老路。

avatar
t*e
25

Declarative
我以前做过一年Swing的开发,比web programming恶心许多倍。但你对wicket的说法不
很准确。那么多的
web framework都是有针对性的,具体用那个,要根据团队,项目要求等优化决定的。

【在 F****n 的大作中提到】
: 对Wicket或类似的FRAMEWORK来说,有一点值得注意,据说Wicket把XUL拿掉了,强调用
: POJO的而不是Declarative UI Language. 我觉得这是一大退步。实际上把Declarative
: UI和HTML混为一谈是非常可笑的。以前做过大量Swing Programming 的人都知道,用
: JAVA做UI是非常MESSY的,Declarative UI(如COCONUT那个)应该是大方向。Wicket这
: 种把DSL丢掉的做法更象一个MARKET DECISION,短时间内能赢的那些HATE HTML JS的
: DEVELOPER(like me),但时间长了,会发现实际上回到了老路。

avatar
F*n
26
Wicket里头XHTML只是用来specify id, 相当于一些hooks和placeholders, 基本的UI
Logic(跟Look and Feel是两码事)还是在Java里头做的。Wicket的advocates说其目
的是把Web UI开发变换成类似于Swing Programming,我只是觉的这个说发非常可笑...
like Swing programming is heaven.

【在 g*****g 的大作中提到】
: 说不上吧,wicket没有扔掉dsl, gui就是xhtml,java代码里面基本不涉及look&feel
: 的部分。wicket强调的是简化component的描述,不使用XML来声明component,而直接
: 用类和变量实现了。
:
: Declarative

avatar
t*e
27

..

【在 F****n 的大作中提到】
: Wicket里头XHTML只是用来specify id, 相当于一些hooks和placeholders, 基本的UI
: Logic(跟Look and Feel是两码事)还是在Java里头做的。Wicket的advocates说其目
: 的是把Web UI开发变换成类似于Swing Programming,我只是觉的这个说发非常可笑...
: like Swing programming is heaven.

avatar
g*g
28
Logic在Java里做有什么问题吗?我觉得Logic在java里做很好,
所谓MVC, html/jsp/jsf等等本来就应该是View而已。类struts
风格的tag/jstl,把C做进了V,本身就是很大的错误。
Swing programming, MVC是做得很清楚的。问题在于V的部分
用java实现,对designer来说设计和修改都不方便。而wicket
V的部分是xhtml,我觉得这个设计接近完美。javafx实际上也是
往这个方向靠拢。

..

【在 F****n 的大作中提到】
: Wicket里头XHTML只是用来specify id, 相当于一些hooks和placeholders, 基本的UI
: Logic(跟Look and Feel是两码事)还是在Java里头做的。Wicket的advocates说其目
: 的是把Web UI开发变换成类似于Swing Programming,我只是觉的这个说发非常可笑...
: like Swing programming is heaven.

avatar
t*e
29

也成立。
这个GUI Markup Language就是一种DSL(domain-specific language). 上次和goodbug
讨论过,OO language不是万能的,就如Rule Engine用Rule Markup language, RDBMS用SQL
, GUI design用Declarative programming更直观.

【在 t*******e 的大作中提到】
:
: ..

avatar
F*n
30
从UI开发的角度来说,UI的LOGIC(而不是应用LOGIC),就是V的这部分大概可分为三
个层次:
1. Layout和Appearance;
2. Static relations among components / data (such as component hierarchy)
3. Dynamic relations among components / data (such as event management).
Wicket相当于在第一个Level实现了Declarative,XUL相当于在第二个LEVEL实现了
Declarative。目前没有FRAMEWORK能在第三LEVEL实现Declarative。
我觉的你要是看了ZK的设计,就会觉得Wicket还不算完美。ZK的设计要比Wicket要
flexible的多, 能整合html, JS, xhtml, JSP, JSF,XUL, 甚至无template的Richlet
。功能上讲Wicket相当于ZK的一个子集。
最后, Struct倒不一定失败,我的经验是MVC不一定能代替Mixed HTML&JS,

【在 g*****g 的大作中提到】
: Logic在Java里做有什么问题吗?我觉得Logic在java里做很好,
: 所谓MVC, html/jsp/jsf等等本来就应该是View而已。类struts
: 风格的tag/jstl,把C做进了V,本身就是很大的错误。
: Swing programming, MVC是做得很清楚的。问题在于V的部分
: 用java实现,对designer来说设计和修改都不方便。而wicket
: V的部分是xhtml,我觉得这个设计接近完美。javafx实际上也是
: 往这个方向靠拢。
:
: ..

avatar
t*e
31
According to your definition of Declarative UI composition, the 3rd layer of
control is implemented in a declarative manner in many Page Flow engines,
such as Spring Web Flow, Seam Page Flow, and OSworkflow. More specifically, JSF+Spring Web Flow are "completely" declarative UI across those three layers.

Richlet

【在 F****n 的大作中提到】
: 从UI开发的角度来说,UI的LOGIC(而不是应用LOGIC),就是V的这部分大概可分为三
: 个层次:
: 1. Layout和Appearance;
: 2. Static relations among components / data (such as component hierarchy)
: 3. Dynamic relations among components / data (such as event management).
: Wicket相当于在第一个Level实现了Declarative,XUL相当于在第二个LEVEL实现了
: Declarative。目前没有FRAMEWORK能在第三LEVEL实现Declarative。
: 我觉的你要是看了ZK的设计,就会觉得Wicket还不算完美。ZK的设计要比Wicket要
: flexible的多, 能整合html, JS, xhtml, JSP, JSF,XUL, 甚至无template的Richlet
: 。功能上讲Wicket相当于ZK的一个子集。

avatar
g*g
32
I use spring web flow and I don't like it at all.
I have the spring plugin for eclipse but it's still
not easy for debugging or merely reference lookup.
I mean, what's the point of putting a list of if else
in xml.
I don't mind some DSL, html being a good example, but
most frameworks are abusing xml.

of

【在 t*******e 的大作中提到】
: According to your definition of Declarative UI composition, the 3rd layer of
: control is implemented in a declarative manner in many Page Flow engines,
: such as Spring Web Flow, Seam Page Flow, and OSworkflow. More specifically, JSF+Spring Web Flow are "completely" declarative UI across those three layers.
:
: Richlet

avatar
F*n
33
It's a good try but the big problem is that it's actually still a procedural
programming tool conceptually, only hidden under a declarative syntax. It's
like directly programming on SOAP, which is weird and counter productive.

of
, JSF+Spring Web Flow are "completely" declarative UI across those three
layers.

【在 t*******e 的大作中提到】
: According to your definition of Declarative UI composition, the 3rd layer of
: control is implemented in a declarative manner in many Page Flow engines,
: such as Spring Web Flow, Seam Page Flow, and OSworkflow. More specifically, JSF+Spring Web Flow are "completely" declarative UI across those three layers.
:
: Richlet

avatar
F*n
34
I agree. Actually workflow was my Ph.D topic. Although I always used XML to
store my workflow data, I never tried to directly work on those
serialization files. Those "web flow" frameworks are just like dumping all
my serialization XML formats on the web and calling it a "framework":)))

【在 g*****g 的大作中提到】
: I use spring web flow and I don't like it at all.
: I have the spring plugin for eclipse but it's still
: not easy for debugging or merely reference lookup.
: I mean, what's the point of putting a list of if else
: in xml.
: I don't mind some DSL, html being a good example, but
: most frameworks are abusing xml.
:
: of

avatar
t*e
35

to
I donot quite understand your point.

【在 F****n 的大作中提到】
: I agree. Actually workflow was my Ph.D topic. Although I always used XML to
: store my workflow data, I never tried to directly work on those
: serialization files. Those "web flow" frameworks are just like dumping all
: my serialization XML formats on the web and calling it a "framework":)))

avatar
t*e
36
用了一个月的时间, 把书很仔细的看完了.
感觉wicket象是个HTML designer设计的web framework,而不是由Java programmer设
计的. 优点大都是针对HTML和Search Engine的, Java coding的负担反而加重了不少.
最喜欢的几点,
1. Detached Model, 很有意思, 但也是个pitfall
2. Page Mounting and URL encoding, 针对Search Engine优化
3. Testing support, 比Struts2强太多了
4. Plain old HTML, 但不是那么重要
5. Page histories are serialized into file systems, browser back button
support
6. Bookmarkable links, 空壳,具体执行还要靠developers.
7. Null safe component model bindings. 一般不怕NullpointerException.
不喜欢的几点,
1. 手写P
avatar
g*g
37

.
Actually this is important for designers, right now we are using spring MVC,
and the route is like static html (designer), dynamic jsp (coder),
designer touches up jsp, coder changes certain logic if there's a need,
so on so forth. It's hard to work in parellel
The code is reusable at least, how many times we copy&paste in jsp. Refactor
common code is so much easier in java than in jsp.
Business code should be easy to remove from UI components, after all, it's
plain old java. Navigation logic

【在 t*******e 的大作中提到】
: 用了一个月的时间, 把书很仔细的看完了.
: 感觉wicket象是个HTML designer设计的web framework,而不是由Java programmer设
: 计的. 优点大都是针对HTML和Search Engine的, Java coding的负担反而加重了不少.
: 最喜欢的几点,
: 1. Detached Model, 很有意思, 但也是个pitfall
: 2. Page Mounting and URL encoding, 针对Search Engine优化
: 3. Testing support, 比Struts2强太多了
: 4. Plain old HTML, 但不是那么重要
: 5. Page histories are serialized into file systems, browser back button
: support

avatar
t*e
38
We surely can load configurations from properties files, but it still
requires extra coding to set those values through Wicket APIs. Building a component
tree in Java and lining it up with the Markup DOM tree could be error-prone also.
avatar
g*g
39
Don't you have to do it too in spring or whatever framework to set values.
Or if you really prefer it, you can use any IOC framework to inject the
values.

component
prone also.
Think this way, don't we have to put jsp in container, try and change, try
and change, fix a lot of jsp compilation error just before anything can show
up at all? Do we call that error-prone? I think dynamic language is always
more error prone and java is not.

【在 t*******e 的大作中提到】
: We surely can load configurations from properties files, but it still
: requires extra coding to set those values through Wicket APIs. Building a component
: tree in Java and lining it up with the Markup DOM tree could be error-prone also.

avatar
F*n
40
One example, as goodbug mentioned, is if-then-else clause, which is a
procedural programming concept. It's OK to serialize it to XML, but it is
just stupid to directly specify if-then-else in XML in those "frameworks".
Other procedural concepts include event listeners, method invocations, and
etc.

【在 t*******e 的大作中提到】
: We surely can load configurations from properties files, but it still
: requires extra coding to set those values through Wicket APIs. Building a component
: tree in Java and lining it up with the Markup DOM tree could be error-prone also.

avatar
F*n
41
其实就如我上面说的,Wicket靠XHMTL和CSS在Layout上实现了DSL,但在component
relations (如component tree)上还是用JAVA。这个问题用XUL就能很容易的解决,但
Wicket的Design没采用。

.

【在 t*******e 的大作中提到】
: 用了一个月的时间, 把书很仔细的看完了.
: 感觉wicket象是个HTML designer设计的web framework,而不是由Java programmer设
: 计的. 优点大都是针对HTML和Search Engine的, Java coding的负担反而加重了不少.
: 最喜欢的几点,
: 1. Detached Model, 很有意思, 但也是个pitfall
: 2. Page Mounting and URL encoding, 针对Search Engine优化
: 3. Testing support, 比Struts2强太多了
: 4. Plain old HTML, 但不是那么重要
: 5. Page histories are serialized into file systems, browser back button
: support

avatar
g*g
42
I think XUL is for multiple platform GUI development, like making
similar thick and thin clients at the same time. I don't really see
the benefit of XUL in sole web development.
This ZK example
http://www.zkoss.org/doc/step%20by%20step_p2.dsp
Show all the bad smell I want to avoid, it's almost like using scriptet
in JSP. With wicket, you can't do that at all. True previewable 1:1
mapping of components is what I like about wicket.

【在 F****n 的大作中提到】
: 其实就如我上面说的,Wicket靠XHMTL和CSS在Layout上实现了DSL,但在component
: relations (如component tree)上还是用JAVA。这个问题用XUL就能很容易的解决,但
: Wicket的Design没采用。
:
: .

avatar
t*e
43


【在 F****n 的大作中提到】
: One example, as goodbug mentioned, is if-then-else clause, which is a
: procedural programming concept. It's OK to serialize it to XML, but it is
: just stupid to directly specify if-then-else in XML in those "frameworks".
: Other procedural concepts include event listeners, method invocations, and
: etc.

avatar
g*g
44

how tidy this compare to
if(id==null){
createState();
} else {
updateState();
}
When you program in XML, you lose all type information, all nice IDE
refactoring.

【在 t*******e 的大作中提到】

avatar
F*n
45
Like I said before, ZK is a bit like C++, which is flexible but can be
easily abused. But you certainly can avoid zscript and do it in the same way
as Wicket. The problem of Wicket is, it pre-assume scriplet as evil, which
is not. It is evil only when abused. In other times, it provides a very
convenient way to invoke java functions. A cynical thought: they cut script in Wicket so they have to bash it otherwise people would think they are not smart enough to incorporate it in the framework:)
XUL

【在 g*****g 的大作中提到】
: I think XUL is for multiple platform GUI development, like making
: similar thick and thin clients at the same time. I don't really see
: the benefit of XUL in sole web development.
: This ZK example
: http://www.zkoss.org/doc/step%20by%20step_p2.dsp
: Show all the bad smell I want to avoid, it's almost like using scriptet
: in JSP. With wicket, you can't do that at all. True previewable 1:1
: mapping of components is what I like about wicket.

avatar
F*n
46
You said it:) Declarative and Procedural programming are conceptually very
different. When you use declarative syntax to express procedural concepts,
it's unnatural and problems may occurs. And why you want to do that in the
first place? Because it's XML?

【在 g*****g 的大作中提到】
:
: how tidy this compare to
: if(id==null){
: createState();
: } else {
: updateState();
: }
: When you program in XML, you lose all type information, all nice IDE
: refactoring.

avatar
g*g
47

way
which
script in Wicket so they have to bash it otherwise people would think they
are not smart enough to incorporate it in the framework:)
Personally I've yet to see a single instance in which scriptlet can't
be avoided. It may be convenient for some quick prototype, that's it.
No, I don't like html, but XUL isn't supported by all browsers either.
I doubt Dreamweaver supports it. The point is, we don't write html,
designers do. I'd rather let them use their favorite editor. And we
developer

【在 F****n 的大作中提到】
: Like I said before, ZK is a bit like C++, which is flexible but can be
: easily abused. But you certainly can avoid zscript and do it in the same way
: as Wicket. The problem of Wicket is, it pre-assume scriplet as evil, which
: is not. It is evil only when abused. In other times, it provides a very
: convenient way to invoke java functions. A cynical thought: they cut script in Wicket so they have to bash it otherwise people would think they are not smart enough to incorporate it in the framework:)
: XUL

avatar
F*n
48
In most cases XUL files are compiled or translated into client UI code such
as HTML. XUL can express high-level UI logic such as components while HTML
is kind of low-level. I think that's the main point of XUL.
Script language is always a tool of convenience, but I think it's importance
should not be overlooked.

【在 g*****g 的大作中提到】
:
: way
: which
: script in Wicket so they have to bash it otherwise people would think they
: are not smart enough to incorporate it in the framework:)
: Personally I've yet to see a single instance in which scriptlet can't
: be avoided. It may be convenient for some quick prototype, that's it.
: No, I don't like html, but XUL isn't supported by all browsers either.
: I doubt Dreamweaver supports it. The point is, we don't write html,
: designers do. I'd rather let them use their favorite editor. And we

avatar
g*g
49
Until XUL is supported natively by major browsers (I'd like to see that),
this is not really fun. Again, designers write GUI, with editor like
dreamweaver, WYSIWYG. You can call html low level, but it's actually
easier for them to work on than XUL.

such
importance

【在 F****n 的大作中提到】
: In most cases XUL files are compiled or translated into client UI code such
: as HTML. XUL can express high-level UI logic such as components while HTML
: is kind of low-level. I think that's the main point of XUL.
: Script language is always a tool of convenience, but I think it's importance
: should not be overlooked.

avatar
F*n
50
Visual editor is not good for complex UI development. XUL is for developers, not for designers. UI designers do not necessarily "write" the GUI. In most cases they just draw the sketch.
avatar
t*e
51

developers, not for designers. UI designers do not necessarily "write" the
GUI. In most cases they just draw the sketch.
I do wish designers can work out XUL, at least to the degree of static
component layout, and their look and feel. Graphic design is a totally
different subject from programming. It takes people years to be professional
on it.

【在 F****n 的大作中提到】
: Visual editor is not good for complex UI development. XUL is for developers, not for designers. UI designers do not necessarily "write" the GUI. In most cases they just draw the sketch.
avatar
g*g
52
I don't know how that would work out in real project. So you mean
designers write the html/mockup image, and developers translate to
XUL? Now how about slight tweak seen needed by designers, or some
cross browser issues that they need to do some hack?
Until XUL is natively supported by browser, it won't be pretty going
that way.
I like Wicket's philosophy, because programmers can lay down the components,
and designers and programmers can work in parallel without worrying stepping
on each other'

【在 F****n 的大作中提到】
: Visual editor is not good for complex UI development. XUL is for developers, not for designers. UI designers do not necessarily "write" the GUI. In most cases they just draw the sketch.
avatar
F*n
53
As I said many times, XUL is a developer's tool. If you have work with Swing
, you should understand that XUL is something that most Swing programmers
would want, including in situations that have nothing to do with web.

components,
stepping

【在 g*****g 的大作中提到】
: I don't know how that would work out in real project. So you mean
: designers write the html/mockup image, and developers translate to
: XUL? Now how about slight tweak seen needed by designers, or some
: cross browser issues that they need to do some hack?
: Until XUL is natively supported by browser, it won't be pretty going
: that way.
: I like Wicket's philosophy, because programmers can lay down the components,
: and designers and programmers can work in parallel without worrying stepping
: on each other'

avatar
c*t
54
I don't care about Wicket, but if you guys are to develop Swing
application, use my CookSwing :)
http://cookxml.yuanheng.org/cookswing/
Contrary to common perceptions of XUL, CookSwing allows full / complete
tweaking with Java with supports for all layouts and all components
(including custom components). Also support non-Swing stuff. It is
very easy to use and extensible. There are essentially no drawbacks
using CookSwing.
For example, if your object has instance variable called inputBox1,
y

【在 F****n 的大作中提到】
: As I said many times, XUL is a developer's tool. If you have work with Swing
: , you should understand that XUL is something that most Swing programmers
: would want, including in situations that have nothing to do with web.
:
: components,
: stepping

avatar
g*g
55
I agree, swing is a totally different animal. In prex job I used to
work on Canino games, fancy irregular buttons, animations, you name it,
pretty complex GUI. And one big issue was making differnet resolutions
work at the same time and allow designers to tweak on it. I had to
write my own framework, something like Coconut's cookswing, so designers
can change GUI without recompilation.
But again, the reason was a: there's no DSL for swing GUI, b: there's
no good WSYIWYG tool for swing. Neither i

【在 F****n 的大作中提到】
: As I said many times, XUL is a developer's tool. If you have work with Swing
: , you should understand that XUL is something that most Swing programmers
: would want, including in situations that have nothing to do with web.
:
: components,
: stepping

avatar
s*e
56
for xul, did sombody mentioned zk?
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。