锁定老帖子 主题:300行代码你能做什么
该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2009-09-07
subwayline13 写道 UI设计和开发分离是多少人的梦想,虽然还没有实现,你完全本末倒置了。
虽然"UI设计和开发分离"是好事,但是“本”的高度也未免太高了吧 subwayline13 写道 首先是要需要“可视化”,因为早期技术不是很成熟,在妥协的情况下才在外联UI设计的资源文件,不然还费些事干嘛?从VB/VC Delphi Winform WPF随着技术进步才慢慢发展到XAML这样的技术,所以并不是可视化依赖程度下降,而是更好用的“可视化”, 可视化依赖程度和更好用的“可视化”不排斥,我认为XAML是两方面同时提高,而不是此消彼长。 subwayline13 写道 WPF/Silverlight设计人员可以在Blend设计,程序员在VS上开发(虽然我觉得目前这个版本还不太你好用)。而且我不认为“问题是逆向(即:从可读性很好的代码转化为可视化编辑界面)比较困难。”这是个问题,起码VS应该不是简单的逆行解析,而是执行,因为不太可能解析到数据库里去吧,如果这样的话,RubyGnome2出可视化工具也不是大问题了,起码MS的技术能做到。
... 是运行,从VB开始就是运行而不是解析。但这里要提供一个“容器”环境让它运行,而且要考虑“设计时”的一些特殊性,我所说的困难在这里。XAML由于是把UI部分分开了,所以技术上反而更容易实现。 RubyGnome2还未成熟到可以让微软为之开发可视化工具的地步:) subwayline13 写道 你指望设计人员写DSL吗?XML不算一种DSL?RUBY才是DSL?VS上IronPython也是可以做WinForm和WPF的,IronPython有没有DSL能力? XML不是DSL,ruby也不是DSL。为了特定领域(表达UI)而提供一系列方法以后才是DSL。从这个意义上来说,XAML是外部DSL。我上面说的DSL是指内部DSL。 subwayline13 写道 你现在也无法看到你的问题,首先因为你相当热爱RUBY,所以连目前RubyGnome2的不足也认为优点, 不对,我是首先是看到了RubyGnome2的不足才着手GtkSimpleLayout。RubyGnome2还有很多不足,相信我看到的比你多。我只是认为“可视化”UI设计对RubyGnome2不重要。 subwayline13 写道 目前还没有优秀可视化开发工具,以后加上就好了,我相信优秀开发设计工具更能提高效率,工作也更有乐趣。
好的开发工具可以提供效率也更有乐趣这个我赞成,NetBeans就不错。 subwayline13 写道 起码我看你的回帖,就会发现,别人提出目前不足,你的反驳都相当蹩脚,比如不能DIFF,不能动态“可视化”之类。
不是不能diff,是diff的结果是否能很好地反映UI的变化的问题。我承认XAML在这个问题上可以满足基本要求。 你举的所有“动态”的例子,均是后台代码的功劳,“可视化”的UI编辑器只是起到一个展现结果的功能吧,“可视化”到底在什么地方帮助你“动态”了?。你的代码把生成界面的工作了都做了,再把它放到可视化的toolbox上面然后拖到你的UI设计器上有何必要?把你的代码封装成函数或类,在需要的地方调用还不是一样的么? |
|
返回顶楼 | |
发表时间:2009-09-07
ray_linn 写道 rubynroll 写道 menu_bar do menu 'File', :item => ['Open', 'Close', '_', 'Quit'] menu 'View', :item => ['Copy', 'Edit'] menu :item => ['About'], :layout => :last end 这样的菜单是简单又简单的,一个真正意义上的菜单,有快捷键,有图片,有子菜单,有enable/disable的属性,你在代码里敲敲看吧,看不出有什么必要开历史的倒车。 “快捷键,有图片,有子菜单,有enable/disable的属性”一样可以,而且可以不麻烦。 ray_linn 写道 通过XML生成.NET form的界面,早在XAML之前,就有人发明了,首先这种生成需求到底有多少,其次扯上生成界面和DSL完全没必要,这主要原因是ruby是动态语言而已,.NET如果真要生成,也可以通过CodeDOM一行行, 也可以通过一个Form的模板生成后编译,甚至可以采用别人的经验,从XML把整个过程自动化。 不知所云。 |
|
返回顶楼 | |
发表时间:2009-09-07
lichuan 写道 一个大型团队,一个拥有重型界面的软件,都会要求一种分离界面和逻辑的开发方式,把图形设计师和程序员放在一张桌子前是不现实的。
图形设计师应该和产品设计师进行沟通,让程序员浪费时间找出应该把按钮放在什么位置是愚蠢的。 好吧,除去开发工具和办公软件,列出10个你最常用的桌面软件,看看都有哪些程序是“重型界面”,哪些程序的UI是需要“大型团队”的。 |
|
返回顶楼 | |
发表时间:2009-09-07
最后修改:2009-09-07
简单的界面摆放用什么可视化工具都可以,差别不是很大。复杂不是指界面上东西多不多。而是指界面的布局、控件的展现和对用户的反应不是用框架预定的模式能够组合出来的。
复杂的界面几乎每个控件都需要定制甚至是直接开发,包括按钮什么的都不可能直接用操作系统或者框架自己提供的控件,这意味着代码是王道。 如果要说顶级的可视化开发框架,XCode毫无疑问是绝尘而去,Delphi/VS没办法比的。(我Delphi用了10年多,VS用了3年多)。 WPF我们现在在用,由于和视频相关,性能非常之糟糕,定制异常困难。还不如Delphi多多。 |
|
返回顶楼 | |
发表时间:2009-09-07
要用文本编辑器写HTML,是niubility,还是zhuangbility,还是shability?
估计说这话的这位是没怎么写过好看的界面. |
|
返回顶楼 | |
发表时间:2009-09-08
ruby强
|
|
返回顶楼 | |
发表时间:2009-09-08
其实是一些
能拖的工具生成的代码,我们看不惯而已。 若做的很好,代码很好。(代码不一定是代码,有可能是配置+代码) 我相信,还是拖的生产率高。 好比用windowbuilder和netbeans 做java 界面,我不喜欢用netbeans,因为生成的代码太难看了。 而windowbuilder还是非常快捷。效率高,代码也好。 ruby,缺一个。哪怕有人搞个eclipse 插件。类似windowbuilder的。 目前做小型软件我会用java,不用ruby,这也是原因。 |
|
返回顶楼 | |
发表时间:2009-09-08
最后修改:2009-09-08
现在 ruby gui 都有拖放开发工具,除了 shoes。
而 shoes 的确是写起来比拖放的快。 佩服 ls 的,这么难用的东西还能用出自豪感。 |
|
返回顶楼 | |
发表时间:2009-09-08
lichuan 写道 一个大型团队,一个拥有重型界面的软件,都会要求一种分离界面和逻辑的开发方式,把图形设计师和程序员放在一张桌子前是不现实的。
图形设计师应该和产品设计师进行沟通,让程序员浪费时间找出应该把按钮放在什么位置是愚蠢的。 这个所谓稍微“重型”界面。。。。是VS在15秒钟帮助生成的,楼主愿意用shoes敲敲看。 |
|
返回顶楼 | |
发表时间:2009-09-08
最后修改:2009-09-08
不就一个 app 骨架嘛,写个 snippet。
shoes<tab> 再按 F5,5 秒不到(包含了编辑器启动时间、编译运行时间) |
|
返回顶楼 | |