作者petrushka (不放过自己)
看板C_Sharp
标题Re: [问题] 请问~MDI架构的好处?
时间Thu May 27 09:56:57 2010
SDI与MDI孰优孰劣早期曾有过不少争论,对於Usability这个议题,你可以从其他介面设
计的书籍中去学一些,印象O'Reilly有出过中文版的书籍。
MDI的好处,我简列几项:
1. 开启多项文件或功能时,不会使得使用者的工具列被快速占满。
2. 在如Photoshop这类软体,同时编修多档做内容比较、混合、跨档拖曳内容...等操作
会比SDI模式的作业速度要有效率,且软体功能设计应该会比较好达成。且要修改多
档案Property内容值的时候,比较不会有SDI模式那种搞错Property Window的问题。
3. 搜寻内容,在MDI模式模式下,例如Visual Studio好了,你搜寻程式码内某些字串片
断,然後再从搜寻结果起开启所在文件,这样的可用性会比SDI模式要好。
同理,浏览器在MDI模式下,可以同时搜寻已开启的页面内容,而不用在视窗间切换。
你可以思考浏览器从以前的SDI模式,转换到现在的MDI模式(TDI模式)改善了什麽。我想
那些就大部份是MDI模式带来的好处。(TDI: Tabbed Document Interface)
MDI的缺点,一时想不出有哪些,简列一点:
1. 在没有使用Tab来layout document时,不容易找到视窗,不容易晓得目前开启了哪些
档案项目。为了要看到开启了哪些项目还要去点选功能表的视窗列表才看得出。
这个问题在引入TDI概念後就有改善,但是在TDI Layout下,项目视窗则又不方便自由
调整大小与不方便自由移动视窗了(想像Photoshop用Tab管理开启的项目有多难用)。
2. 在如Excel这类型的软体应用下,因为每个Workbook已经有多个Worksheet,若再加上
MDI模式,使得作业变得过度复杂不容易整理资料。早期Excel的MDI模式,对我而言同
时处理多个档案,常感不方便。
采用什麽方式来设计介面,就看你是否有特别从使用者的可用性方面进行考量。
单就软体功能设计我是觉得没有太大差别,因为不管怎麽样最後都有重构(Refactoring)
这个方法可以利用。
所以罗,我感觉你的问题比较属於Software Usability的议题,非程式设计相关问题。因
此只能提供一点想法。
※ 引述《melvinlee (Melvin)》之铭言:
: 小的是菜鸟,刚接触没有实务经验,
: 如有错误请鞭吧,出包才会长大。
: 有些观念的问题想请问大家?
: 当在实做一个winform的视窗应用软体时,
: 当一个软体内有许多功能,而其子功能也很多,
: 基本上母功能拉出来都可以自成一个小型管理软体
: 如薪资管理,营业管理(进销存)等等,
: 是否采用书上多专案的方法,去各个专案开发好後,
: 再组合成一系统较好呢?
: 实务上真的用类似软体零件组合应用系统的观念较好吗?
: 是不是这样易debug且亦可作後续维护呢!?
: 要如何决定一个软体是否使用MDI父子表单架构?
: 用MDI的架构好处是什麽呢?
: 除了在父表单的里面,或者form易传资料(?)
: 如果我今天不用MDI架构去开发,
: 单纯按工具列或button後new form等动作,
: 这样对软体本身又有哪些好坏呢?
: 希望实战经验的各位能指导我一些观念,
: 我上面没有学长前辈可以教,
: 身边目前也没有开发winform的人~
: 就只好来这碰碰运气发问了T_T
: 先谢谢看过及回覆的大大!!!
--
对於已经无法拥有的
唯一能做的是
不要忘记
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.125.251.180
※ 编辑: petrushka 来自: 140.125.251.180 (05/27 09:58)
1F:推 melvinlee:谢谢您的指导阿!!!又了解一个观念:) 05/28 22:00