`
javatar
  • 浏览: 1704721 次
  • 性别: Icon_minigender_1
  • 来自: 杭州699号
社区版块
存档分类
最新评论

CommonTemplate任务计划20080212

    博客分类:
  • HTTL
阅读更多

CommonTemplate任务计划
基准版本:0.8.2
基准时间:2008-02-12

序号任务描述类型
1异常国际化, 将所有异常信息用统一的工具类管理, 并配置到properties文件中.优化
2出错位置信息准确性, 当抛出异常时, 应显示准确的出错元素在模板中的行列位置, 并显示出错位置附件的模板内容.BUG
3错误信息友好性, 抛出来的异常信息应有助于解决错误, 不应该出现底层的无意义信息, 可以通过故意写错模板内容等方式来测试.优化
4Context是否应去掉MessageSource和Logger,它们不是共享功能,可直接注册到相应指令中?疑问
5对象存储加一个不分级控制的存储空间. 此存储空间在单一Context内有效(非全局), 但不受LocalContext栈的隔离.优化
6类元静态函数/属性的调用, 在没有类实例的情况下, 怎么表示类元. 如: ${&com.xxx.XxxUtils.xxx()}, 这里假设用&作为前导一元操作符,并且其isOperandNamed()为true, 求值结果为包实例, 然后重载点号操作符, 直到找到类元.需求
7测试JspTagLib的集成方案, 尤其是对上下级关联的Tag测试.测试
8加入对jsp2.1的taglib支持, 主要是EL的转变需求
9指令单元测试, 完善边界值测试, 提高测试覆盖率.测试
10操作符单元测试, 操作符的个数比较多. 急需测试.测试
11操作符重构, 操作符的分包, 命名等都不是很规范, 应尽快做一次全面重构.优化
12操作符优先级调整及测试, 现在的优先级排列还需斟酌.优化
13写一个验证性论坛, 用CT做全部页面, 用CT做代码生成, 用CT做SQL拼接模板. 并做压力测试.集成
14写一个Ant脚本, 自动提取EL相关类打成jar包集成
15使用Maven发布集成
16全面检查序列化, 任何接口都不应继承Serializable, 但要保证整个模板树都是可序列化的.优化
17完成.Net版的基础实现, 先从Java版导过去, 再重构. 工作量比较大.需求
18使用Spring作为配置工具. 通过<beans>配置完成ConfigurationSettings的组装. 可以写一个转换器, 从现有的properies配置转换过去.需求
19不同类型对比时,自动转换类型, 如:char与string对比时, int与float对比时, int与string对比时等.优化
20实现XSLT解析, Velocity和FreeMarker都支持对XSLT的解析, CT也考虑实现, 但延后.需求
21Html标签属性语法外套优化, 主要是对不合法html标签的容错性的良好支持. 此功能可单独提取, 作为Velocity和FreeMarker等的扩展.需求
22完成与AntTask的集成, 可用于代码生成等, 实现:
org.commontemplate.tools.ant.TemplateTask
需求
23实现热加载国际化信息:
org.commontemplate.standard.i18n.ReloadableResourceBundleProvider
需求
24实现国际化信息与struts2的集成, 也就是可分包, 分级放置properties文件, 而不是单一的properties文件, 并保证集成的简便性, 如需要, 可重构ResourceBundleProvider接口.需求
25写Eclipse/NetBeans的编辑器插件, 可在某Html编辑器插件的基础上扩展. 完成高亮显示, 自动提示.需求
26写CommonTemplate.exe, 类似notepad, 可双击打开.ct和.ctl结尾的模板文件(注册表关联), 并调用$test指令所提供的数据进行显示(可调用IE显示).需求
27完成properties高亮显示的html过滤, 通用在内容中加入<font color=""></font>实现:
org.commontemplate.standard.directive.filter.highlight.PropertiesCodeFilter
需求
28完成JS中特殊符的转码.
org.commontemplate.standard.directive.filter.escape.JavaScriptEscapeFilter
需求
29将StringSequence实现List接口:
org.commontemplate.standard.operator.sequence.StringSequence
需求
30完成网站的英文版翻译
31扩展指南页面内容未同步更新优化
32ExpressionConfigurationSettings是否应与ConfigurationSettings合并?疑问
33StandardConfiguration重构, 加入: static StandardConfiguration loadStandardConfiguration()优化
34是否应默认开启函数调用? 如果开启应可以用AOP的方式禁止调用某些有返回值函数,如:remove*, delete*疑问
35代码生成时, 自动去掉块指令所在的空白行. 如: 模板通常会将$if和$end等放在单独的行中, 生成的文本会在指令位置出现空白行, 应实现一过滤器, 自动去掉该空白行.需求
36重构异常, 分析ParsingException, RenderingException, EvaluationException等的关系.优化
37缓存更新方式, 抽取策略接口, 加入Job线程定时更新缓存策略.优化
38将表达式中与Java相同的和不相同的分开描述.文档
39拆分util包到子包, 如: standard.util, 尽可能缩小根目录的util包?疑问
40
用多线程(多核CPU)模拟并发获取模板, 测试并发.
测试
41通过跟踪内存栈, 记录模板编译后占用内存大小, 以及模板源内容大小, 给出测试结果Excel对照表 .测试
42通过函数扩展或属性扩展实现:
四舍五入round, 绝对值abs, 最大值max, 最小值min, 平均值avg 等等
需求
43是否应支持switch case, while等?疑问
44是否应支持变量别名引用alias?疑问
45是否应支持重复操作符, 如:str * 2 变成两str,扩展到list * 2, map * 2等疑问
46String 操作符未实现功能: split, replace, indexOf, lastIndexOf等.
另外,应加入以某个char为分割符的前后段,
如: "xxx.txt".suffixOf(".")返回txt
"xxx.txt".prefixOf(".")返回xxx
需求
47加强模板测试, 在test/integration/template/目录下放一个xxx.ctl, 写入模板, 在test/integration/result/目录下放同名的模板结果, 运行test/integration.TemplateTester可以进行自动测试. 另外, 模板结果的获取可以通过integration.OutTester得到, 它将读取模板文件test/integration/out.ctl的内容, 并将解析结果输出到控制台.测试

1
0
分享到:
评论
2 楼 javatar 2008-02-20  
嗯, 现在主要工作在测试方面.

项目地址:
http://www.commontemplate.org
1 楼 keel 2008-02-19  
感觉功能越来越多了,希望性能有保证,使用更方便,稳定性更好!
任务可由紧迫性排序,建议BUG第一,测试第二,然后是其他...
呵呵,项目管理可以考虑用MS的Project玩玩,它可以自动生成一些有用的图表.
Maven是个不错的工具,很高兴在这里看到.

相关推荐

    commontemplate框架

    **共通模板(CommonTemplate)框架详解** 共通模板(CommonTemplate)框架是一个基于Java的JSP模板化工具,旨在简化Web应用中的视图层开发,提高开发效率和代码复用性。它允许开发者将HTML代码与Java代码分离,使得...

    commontemplate-0.8.1.jar

    commontemplate-0.8.1.jar,是使用jwebap所需要的jar包。没有它,启动会有错误

    CommonTemplate进入中国开源软件竞赛决赛

    **CommonTemplate进入中国开源软件竞赛决赛** 在信息技术领域,开源软件的发展日新月异,为全球的开发者提供了丰富的工具和平台。"CommonTemplate"作为一款参赛项目,成功进入了中国开源软件竞赛的决赛,这无疑是对...

    zencart模板系统文件笔记2:tpl_header.php.pdf

    *CommonTemplate-tpl_header.php * *thisfilecanbecopiedto/templates/your_template_dir/pagename *example:tooverridetheprivacypage *makeadirectory/templates/my_template/privacy *copy/...

    动软分享社区模板

    - **如何在主模板中调用共通模板文件**:可以通过`@Html.Partial("_CommonTemplate.cshtml")`的方式在主模板中引入共通模板文件。 - **如何更改模板中的缩略图尺寸**:通常需要在模板文件中设置图片大小属性,例如...

Global site tag (gtag.js) - Google Analytics