前一段时间一直在忙那个基于数据库的http代理,经过前期讨论(http://www.iteye.com/topic/698908 ),自己又重新整理了下思路,终于把代码搞定,接下来还需要进一步扩展功能实现多目标代理和提高大数据包的传输效率,尽量模拟流方式来进行。
关于公司信息化,本来公司想买一套类似ioa之类的东东来用的,但是后来做了些调研,发现并没有特别合适的,所以还是依托开源自己做吧。经过一番比较:discuzX,xoops,manbo,drupal,综合下来还是用drupal要好一些,一个社区活跃度比较大可以模块比较多,另外中文资料也相对较多,还有实体书可以买,也可以根据自己需求开发新的模块挂接进去。所以,就想以drupal为基础来构建公司的信息管理系统,包括:内网门户(公司新闻、动态信息、管理制度等),bbs(讨论区),博客(个人管理、知识库贡献等),wiki(文档库,包括知识库、管理库等),公司核心业务系统,项目管理系统。结合RSS和IM以及email等技术,充分实现信息共享,及时的把必须的信息以及个人订阅的信息推送到每个人。
关于项目开发,因为最近部门要开发一个新项目,所以也做了些技术选型。编程语言方面,考虑PHP和Java。首先考查了下php,关于php直接代码开发还是使用现成的框架,也做了些调研,通过看javaeye一些牛人的讨论,由于PHP没有GC机制,所以所有的功能实现每次都是从头到尾重新执行一遍,这样好处是不存在内存泄漏问题,但程序复杂会带来一些性能问题,所以框架的引入增加了复杂度进而引起性能问题。因为我们的系统的负载并不高,性能应该不会成问题,所以还是打算采用合适的PHP框架。进入视线的框架有yii、zend、cakephp、codeIgniter、symfony、thinkPhp,最终还是对yii进行了重点关注,基本上提供了web开发框架的常用组件,而且还有自动代码生成工具,可以生成框架代码,还有一个yii开发blog的完整示例,另外还内置了基于角色的权限管理,据说性能方面也非常的高,无怪乎它是2009年度的最佳Php框架。集成开发环境这块,考查了PDT、easy eclipse for lamp、zend studio、netbeans,通过比较觉得还是netbeans比较好,代码提示很好通过xdebug也可以很方便的实现php的调试。但是这样的集成开发环境还是对于基于php的富客户端系统开发而言,功能还是太弱,开发起来还是不太方便。
昨天打开javaeye,偶然间看见了dorado的圈子的讨论,所以就关注了下(因为以前曾经用过一年多dorado的低版本--extra),看看dorado是否开源了。google了一下,看见07年有个贴有人建议bestek公司开源的,其中提到了operaMasks,把dorado的一些不足跟它进行了下比较。于是,关注点又转到了operaMasks,到官方网站,发现了关键字Apusic。哈哈,这么熟悉(前边金蝶中间件公司的销售人员给我介绍过他们的产品,刚好里边就有operaMasks,但是没怎么太在意),原来是金蝶支持下的开源。网站上看了下文档、视频,感觉不错,框架集成了ext,jsf,spring,hibernate等,集成开发环境是在eclipse的基础上做的,使用下来的感觉有点.net的味道。而且有丰富的中文文档,最佳实践、常用项目的示例。除了前期的一点学习成本以外,对于后期程序开发和维护应该是很有帮助的。ok,接下来花些精力在operaMasks上,体验下可视化开发的好处,顺便也深入学习下EXT和JSF(虽然金蝶喜欢装1*3,但是这个框架和集成开发环境貌似还不错的说)。