»
返回PHPEye网站首页
游客:
注册
|
登录
|
统计
|
帮助
PHPEye开源社区
»
PHP周边技术讨论区
» 界面布局的新思路
‹‹ 上一主题
|
下一主题 ››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题: 界面布局的新思路
Haohappy
超级版主
PHPEye站长
UID 2
精华
11
积分 110
帖子 260
翻译 6
原创 1
阅读权限 150
注册 2007-5-2
状态 离线
#1
使用道具
发表于 2007-5-23 20:30
资料
短消息
加为好友
界面布局的新思路
嗯,以前记得有人模仿Java Swing的方式来设计HTML的页面布局,就是除了常用的HTML控件之外,还有Layout这个控件,可以用于设计页面的布局。
比如说(以下代码是模仿Swing写的):
[Copy to clipboard]
[
-
]
CODE:
$layoutThree = new LayoutTreeColumn(); //三列的布局
$layoutTwo = new LayoutTowColumn(); //两列的布局
$page = new Page();
$page->setLayout($layoutThree);
$page->add($block1); //为第一列增加内容,block为“块”内容
$page->add($block2); //为第二列增加内容
$page->add($block3); //为第三列增加内容
优点:代码可重用性高;
缺点:HTML从服务器端生成,复杂性增加
这种思路是否可取呢? 也许画虎不成反类犬呵呵,但讨论一下不妨。。既然JavaScript可以从服务器端生成,HTML也未必不能。
[
本帖最后由 Haohappy 于 2007-5-23 20:34 编辑
]
cid73
版主
UID 40
精华
2
积分 25
帖子 32
翻译 0
原创 0
阅读权限 100
注册 2007-5-23
状态 离线
#2
使用道具
发表于 2007-5-24 02:36
资料
短消息
加为好友
这种做法是一种巨大的进步. html 本身严重阻碍了 web 应用的发展, 我们除了要用有限的 html 标签表达出丰富多彩的页面, 还要和各种浏览器的不兼容做斗争. 我曾经为自己能够克服各种浏览器的的不兼容而沾沾自喜, 但是回首所作的工作却发现没有多少价值, web 应用的精髓不在界面, 而我却在界面制作上耗费了大量的时间.
看了 Bindows, Flex, 我才发现其实 UI 组件的抽象和服务器端组件的抽象一样重要, 它们都是应用软件不可或缺的组成部分.
diogin
版主
UID 16
精华
1
积分 10
帖子 38
翻译 0
原创 0
阅读权限 100
注册 2007-5-4
来自 广东省广州市
状态 离线
#3
使用道具
发表于 2007-5-25 02:56
资料
短消息
加为好友
我之前的设计就是一个页面分成多个block,每个block对应一个文件,同时绑定一个css文件。
这些block都嵌在layout模板里面,而且是动态嵌入的,也就是运行时嵌入。代码看起来跟Haohappy的有点不一样,但是思想是一样的,都是按逻辑“分块”,然后尽量保证这些块的可重用性。
The world is everything that is the case.
binzywu
版主
UID 21
精华
3
积分 30
帖子 6
翻译 0
原创 0
阅读权限 100
注册 2007-5-8
状态 离线
#4
使用道具
发表于 2007-5-27 07:49
资料
短消息
加为好友
XUL?
Haohappy
超级版主
PHPEye站长
UID 2
精华
11
积分 110
帖子 260
翻译 6
原创 1
阅读权限 150
注册 2007-5-2
状态 离线
#5
使用道具
发表于 2007-5-31 21:18
资料
短消息
加为好友
QUOTE:
原帖由
binzywu
于 2007-5-27 07:49 发表
XUL?
嗯,这种思想是很不错的,但用在HTML上实现起来太复杂。用上XUL上会更容易一点,但不是所有浏览器都不支持XUL,这又是个大问题。。
cid73
版主
UID 40
精华
2
积分 25
帖子 32
翻译 0
原创 0
阅读权限 100
注册 2007-5-23
状态 离线
#6
使用道具
发表于 2007-6-1 01:08
资料
短消息
加为好友
Bindows 可以试一下.
http://www.bindows.net/bindows/samples/applauncher/
这里是一些范例, 左边的树是应用 XML 文件, 点击一下右边就是文件内容, 双击文件名启动应用. Bindows 和 PHP 结合有优势, 因为可以用 PHP 来生成 XML 文件, 不过也是劣势, 因为不能把 XML 编译成 JavaScript 而是实时解释. 还可以试试 Qooxdoo, 写一些 JavaScript 就可以, 编译型的, 但是编译器写的不怎么样(用 Python 写的), 很多使用闭包的高级技巧发挥不出来.
Haohappy
超级版主
PHPEye站长
UID 2
精华
11
积分 110
帖子 260
翻译 6
原创 1
阅读权限 150
注册 2007-5-2
状态 离线
#7
使用道具
发表于 2007-6-1 09:16
资料
短消息
加为好友
Bindows感觉太慢了。Delphi for PHP就是用的Qooxdoo做的DataGrid,也很慢,在本地都感觉得出来。
http://blog.csdn.net/Haohappy2004/archive/2007/04/27/1586799.aspx
另外,关于XUL,ZK是个不错的东西,在SF上现在挺热的。它的作者以前有邀请我加入做PHP的版本,但我一直没空,就不了了之。
http://sourceforge.net/projects/zk1/
cid73
版主
UID 40
精华
2
积分 25
帖子 32
翻译 0
原创 0
阅读权限 100
注册 2007-5-23
状态 离线
#8
使用道具
发表于 2007-6-1 22:16
资料
短消息
加为好友
Backbase 怎样? 也是 XML, 速度也还可以, 没有免费版本.
Haohappy
超级版主
PHPEye站长
UID 2
精华
11
积分 110
帖子 260
翻译 6
原创 1
阅读权限 150
注册 2007-5-2
状态 离线
#9
使用道具
发表于 2007-6-1 23:27
资料
短消息
加为好友
没用过。没有免费版本还是算了。。
aeoluszzf
新手上路
UID 997
精华 0
积分 0
帖子 1
翻译 0
原创 0
阅读权限 10
注册 2008-4-12
状态 离线
#10
使用道具
发表于 2008-4-12 21:07
资料
短消息
加为好友
个人以为前端模板组装是比较有前景的方案。
服务器端输出所有的代码是不是浪费带宽了一点
投票
交易
悬赏
活动
PHPEye开源社区
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
基本概况
论坛排行
主题排行
发帖排行
积分排行
在线时间
管理团队
当前时区 GMT+8, 现在时间是 2008-9-6 12:22
Powered by
Discuz!
5.5.0
© 2001-2007
Comsenz Inc.
Processed in 0.018300 second(s), 6 queries , Gzip enabled
TOP
清除 Cookies
-
联系我们
-
PHPEye开源社区
-
Archiver