dedecms织梦内容管理系统    
首页 | java | C/C++ | PHP | 操作系统 | ajax | 脚本编程 | 安全技术 | 本站下载页 | 专题 | QQ群 | 测试中心 | 会员中心 | 积分规则
  当前位置:主页>ajax>javascript>文章内容
JS的流程设计器,我们需要什么
来源:csdn 作者:ronghao
这是一个完全基于js的应用程序,区别于一般的web应用,它是oaop。大概需要一些什么样的工作呢?

大概的概念:

1、容器
 是的,需要容器。容器的两个目的:布局和管理组件。组件之间的相互通信以及影响都需要容器来协调。管理组件之间的状态,组件需要向容器进行注册。对组件传播过来的事件,容器需要做出处理,调用相关其他组件的方法或者忽略或者继续向上一级容器传播。

2、组件
 组件的目的是完全屏蔽对dom编程的依赖,同时屏蔽底层的浏览器事件,例如鼠标单击、双击等等,对这些事件进行完全的封装。组件有着自己的生命周期:初始化、渲染、重画、销毁等等。由组件完成页面的渲染工作,例如节点、画板、连线等等。

3、模型
 在页面进行建模是必要的,例如活动节点、流程等等,这些模型与组件衔接,它们之间的状态互相影响,比如节点组件名称的改变实际影响的是所对于节点模型的属性。画板节点的增加实际也会给响应的流程定义模型新增一个活动节点。

4、与服务器交互
 与服务器的交互完全基于xml。流程定义模型有着自己的xml方法,由xml解析为模型,由模型解析为xml,双向的过程。本地存储。很自然的选择。
 
可能的难点:
最大的难点就是组件的实现,事件的处理以及传播机制。

开发的过程:

1、底层库的选择
 面向对象的开发方式,底层库需要完成的工作:继承、接口实现、事件的统一处理接口、element DOM编程的封装。

2、基本组件的开发
 画板、图形组件、连线组件、弹出面板、简单表格组件、树等等。封装基本的事件。可以定制事件。

3、容器的开发,管理组件
 组件实际也是容器的实现,比如画板的概念。画板中节点之间的互相影响。

4、加入模型的支持

5、xml与模型之间的js解析

参考:
ext是一个不错的参考,但是太笨重,功能越多越缓慢,轻量实现。主要参考其中容器以及组件的概念。
draw2d 实现太简单,基本就是一个图形库,考虑其中对图形组件的实现。


上一篇:flex存储和验证数据   下一篇:Flex HTTPService如何给后台传递参数
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·正则表达式30分钟入门教程
·prototype里的$方法
·JavaScript中如何定义类
· 滑动式折叠菜单 - Slashdot's
· 在 XHTML-Strict 模式下实现新
· 一个非常健全的 Javascript 链
· 用 Javascript 和 CSS 实现脚注
  相关文章
·JavaScript中如何定义类
· 滑动式折叠菜单 - Slashdot's
· 在 XHTML-Strict 模式下实现新
· 一个非常健全的 Javascript 链
· 用 Javascript 和 CSS 实现脚注
·prototype里的$方法
·正则表达式30分钟入门教程
  相关信息
copy right @ 百家拳软件项目研究室 2007 辽ICP备07011763