我们正在设计一个基于Flash的语言课程,我不确定我们必须选择哪种架构。内容不会被上传到Internet,它将仅在本地使用。
可能的架构:
1)将所有数据存储在内部的单个SWF -这似乎是一种相当笨拙和低效的方式(或者不是?)。
2)制作基于Flash的界面,并将数据保存在MySQL数据库中。它可能允许更好地组织内容,避免自我重复。问题是,语言教师(不是IT专家)将不得不安装额外的软件来处理MySQL。
3)制作多个独立的SWF文件,并制作一个简单的带索引的HTML文件。
(还有其他一些我没有想到的解决方案)
从IT的角度来看,哪种架构是正确的,对教师来说最有用,也最优雅?
发布于 2010-04-04 11:34:59
你一定要用Flash吗?HTML更加灵活,允许您在需要时嵌入Flash文件(例如交互或视频)。这是我对我的课程所做的。HTML更容易更新,不需要任何特殊的软件,也不需要每次编辑时都重新发布。如果你感兴趣,我写了一些关于Flash versus HTML in e-learning的想法。
如果你走Flash路线,我建议或者创建一个‘播放器’SWF,根据需要加载子SWF,或者使用一个带有外部化数据(数据库/XML文件)的SWF。如果您可以使用外部化数据路径,那么更新课程内容应该会容易得多,因为您只需要编辑数据库或XML文件,而不需要重新发布SWF。如果您需要为多人提供编辑课程内容的能力,这将为您节省大量时间和麻烦。
需要注意的一个重要问题是安全性--如果在本地提供文件,HTML和Flash都会遇到沙箱限制。例如,除非更改Flash Player安全设置,否则将对本地文件禁用外部接口。对于基于HTML的课程,除非从服务器运行,否则xmlhttprequest脚本将失败。如果您计划在受保护的intranet上使用服务器,这不是问题。
发布于 2010-04-04 00:30:28
首先,我会投票支持分离接口和数据。根据Flash电影的请求,从服务器提供数据。然后,您不必加载所有数据(不确定数据的大小,但在实践中这是最好的,也是最具伸缩性的)。
至于另一个问题,您可以创建一个较大的Flash接口或几个较小的接口。单一界面的优点是它可以将所有的程序逻辑放在一个地方,并且只需要一次加载所有嵌入的资产。这也是缺点,如果SWF文件变得很大。没有“正确的方法”可以做到这一点。你必须权衡各种选择,并决定哪种最适合你。但是您也可以有一个“主机”应用程序,它也可以根据需要加载其他电影。如果您有时间和资源,我建议对每种方式(单体式还是分布式)进行概念验证,看看哪种方式最适合您的需求。
https://stackoverflow.com/questions/2571808
复制相似问题