搜索墙首页  编程技术  java  asp  ajax  php  c/c#/c++  数据库  oracle  mysql  db2  操作系统  windows  linux  股吧
首页 > 编程 > ajax > JavaScript
 1 2 3 4 5 6 7   
1楼  xio 2007-01-04

这是一个用JavaScript写的WorkFlow的设计工具,算是JavaScript MVC的练习。自己标榜为真的具有OO、MVC思想的JavaScript。最值得说的是,我真的将“象Java一样写JavaScript”用到了自己的实际开发中。

公布源码,或许有些喜欢JavaScript的人用得到。

另外,做为Server,使用Spring framework。
基本环境:
JDK1.5,Tomcat5.5,IE5.5+(因为基于VML,所以仅IE可以用,如果需要,也可以方便重新改成其他的,例如svg)
如果你使用“XiorkFlow”做为WebRoot名,不需要做更改。
主要的js源码目录:\XiorkFlow\WebRoot\XiorkFlow\src
事实上,如果您不想要保存数据,并不需要特定的服务器。

JavaScript统计:
程序行总数: 6084 (共82个文件)
代码行总数: 4374 (71.75%)
注释行总数: 1130 (18.54%)
空白行总数: 592 (9.71%)



预览:http://www.xio.name/XiorkFlow



网站下载(超过1m):

XiorkFlow文档.rar


文档:
http://www.xio.name/download.htm?path=/xiorkflow/xiorkflow.rar

本地下载

?

文档

?

  • XiorkFlow.rar (271 KB)
  • 描述: 未包括lib的源码: lib: commons-logging jdom log4j spring
  • 下载次数: 2896
2楼  socfield 2007-01-04

没见过,下下来去看看!
3楼  daoger 2007-01-04

挺好的!我们的业务中有不少这样的需求!
学习ing
4楼  xio 2007-01-04

考虑阅读代码的方便,上传部分相关文档。
本文档书写时过于仓促,如有错误,还请见谅。
  • XiorkFlow文档.rar (234.3 KB)
  • 描述: XiorkFlow概要设计 XiorkFlow详细设计
  • 下载次数: 4575
5楼  melin 2007-01-05

我们的系统是客户自己定制流程的。正好把这部分那来用一下
6楼  qianjinfu 2007-01-05

看了一下,可能有一些值得改进的东西,如果想写的更象java的话:
1 举个例子
这是XiorkFlow\WebRoot\XiorkFlow\src\name\xio\util\String.js的部分代码:
String.prototype.contains = function (A) {
    return (this.indexOf(A) > -1);
};
String.prototype.equals = function () {
    for (var i = 0; i < arguments.length; i++) {
        if (this == arguments[i]) {
            return true;
        }
    }
    return false;
};
String.prototype.startsWith = function (A) {
    return (this.substr(0, A.length) == A);
};
可以写成这样
Util.String = function() {};
Util.String = Class.create();
Util.String.prototype = {
initialize : function() {
this.buf = new Array();
this.length = 0;
},

contains : function() {
........
},

startsWith : function() {
.....
},
};
当然必须引用Prototype.js.
2 XiorkFlow\WebRoot\XiorkFlow\js\XiorkFlowWorkSpace.js
  如果把每个js文件看成一个java类的话.类的组织(import AAA.BBB;)
  和继承应该和java一样;即一个js本身只会到入我所需要的其他js
  这个JSAN可以解决的.
 
7楼  xio 2007-01-05


qianjinfu 写道
看了一下,可能有一些值得改进的东西,如果想写的更象java的话:
1 举个例子
这是XiorkFlow\WebRoot\XiorkFlow\src\name\xio\util\String.js的部分代码:
String.prototype.contains = function (A) {
    return (this.indexOf(A) > -1);
};
String.prototype.equals = function () {
    for (var i = 0; i < arguments.length; i++) {
        if (this == arguments[i]) {
            return true;
        }
    }
    return false;
};
String.prototype.startsWith = function (A) {
    return (this.substr(0, A.length) == A);
};
可以写成这样
Util.String = function() {};
Util.String = Class.create();
Util.String.prototype = {
initialize : function() {
this.buf = new Array();
this.length = 0;
},

contains : function() {
........
},

startsWith : function() {
.....
},
};
当然必须引用Prototype.js.
2 XiorkFlow\WebRoot\XiorkFlow\js\XiorkFlowWorkSpace.js
  如果把每个js文件看成一个java类的话.类的组织(import AAA.BBB;)
  和继承应该和java一样;即一个js本身只会到入我所需要的其他js
  这个JSAN可以解决的.
 


谢谢你的建议

关于1:
事实上,我并不想建立新的一个String类,我在String.js中所做的是对String原型(prototype)添加新的方法,我更加希望用户能够直接对环境中的String对象使用新的功能,没有必要浪费JS的这种特性(当然,这种情况对于有些系统级别的对象接口所获得的对象是不是同样具备prototype新添加的能力,我现在还不能很清楚知道底层是不是支持)。
对于“象Java一样写JavaScript”,我是想让它可以不抵触 OO地进行开发,而且一些类上很象JDK中的API,当然并不需要外貌完全象,但至少架子是象的:)


关于2:
我刚才稍微看了一下JSON,它是不是Apache的插件哦?
这样对于我,就不是很有诱惑力了,我想建立的是平台无关的。
关于import,我觉得这个没办法很好解决,我现在的办法是:那个XiorkFlowWorkSpace.js仅仅是项目开发的时候使用,而项目部署的时候,则把需要的所有js都放到一个文件中,并且混淆。。。。
8楼  qianjinfu 2007-01-05



xio 写道
(当然,这种情况对于有些系统级别的对象接口所获得的对象是不是同样具备prototype新添加的能力,我现在还不能很清楚知道底层是不是支持)


只要在HTML引用都是可以的
<script type="text/javascript" charset="utf-8" src="../prototype.js"></script>
<script type="text/javascript" charset="utf-8" src="../JSAN.js"></script>


xio 写道
我刚才稍微看了一下JSON,它是不是Apache的插件哦?
这样对于我,就不是很有诱惑力了,我想建立的是平台无关的。
关于import,我觉得这个没办法很好解决,我现在的办法是:那个XiorkFlowWorkSpace.js仅仅是项目开发的时候使用,而项目部署的时候,则把需要的所有js都放到一个文件中,并且混淆。。。。


想象一下如果完全用JS写前台,开发系统的话,良好的JS模块组织和面向对象的写法个人认为是很关键的.

JSAN : http://www.openjsan.org/.它是一个组织js的东东

另:很佩服你的JS功力和毅力。以后多交流一下
9楼  xio 2007-01-05

以前我在写某个系统的时候,我对Array原型添加新的方法,但是从某个环境对象获得到的数组对象的时候(例如环境提供的xml接口),竟然没有办法认到该方法(好像是某些个别的接口,大部分可以),我后面并没有继续测试,所以不是很能确认。按照js的文档应该不会才对。

引用

想象一下如果完全用JS写前台,开发系统的话,良好的JS模块组织和面向对象的写法个人认为是很关键的.

同意,对于那个import,我非常渴望能有语言上的直接支持。
我上面提到的解决办法只是一种折中后的勉强使用的。而且需要是适合象google map那样一个系统一个js文件的。


jsan我得再看看
10楼  tv9 2007-01-07

做得很好,公司以前做的一个是用Applet,因为没毅力用js来做。
11楼  shipeng111 2007-01-07

用eclipse打开怎么好多.java类都报错啊
import路径的
还有注释的乱码怎么办啊
12楼  xio 2007-01-07

你下载的有没有包含lib?

那些文件都是用UTF-8编码的,你要在eclipse设置一下文件的编码格式。修改一下就不会是乱码了。
 1 2 3 4 5 6 7   
您的发言将按有关规定都会存档,您须为所发表后果负责,请您遵纪守法并注意语言文明。
标题:[源码]XiorkFlow:用JavaScript写的工作流设计器
热门关注
标题回复点击
[源码]XiorkFlow:用JavaScript写的工作流设计器73540
推荐一个不错的免费JavaScript开发工具,比aptana轻得多~~70425
jquery和prototype框架的比较。。。62370
大胆预测下JS框架的走势106357
开心网【朋友买卖、咬人、争车位】Firefox插件118307
Mootools前景?拿来主义VS重复发明轮子102301
Mootools和Jquery之间的选择问题60270
Mootools、jQuery之说三道四64246
js操作html的table,包括添加行,添加列,删除行,删除列,合并单元格(未实现)29214
关于Gecko的eval第二参数探密51209
搜索墙@2009 www.pkwall.com all rights reserved QQ:276471788 [京ICP备09111534号]
声明:本站部分数据来源于网络,仅供参考,如有版权问题,请联系我们,我们将及时删除!转载本站请注明来源