2009年11月16日

信息系统开发平台OpenExpressApp - Command扩展机制

摘要: 下图为OpenExpressApp的系统架构图,其中在业务层中Command是作为一种系统内部提供以及可供外部扩展的一种机制。OpenExpressApp框架对功能的主要扩展之一就是Command机制,OEA提供的Command可以实现用户交互,更好的分离业务逻辑,带来更好的维护性和可扩展性。Command位于架构图业务层Command的由来  MVC是一种经典的架构模式,如上图所示:模型(Mod... 阅读全文

posted @ 2009-11-16 14:36 周 金根 阅读(2344) 评论(5) 推荐(2) 编辑

报表引擎 -扩展模型

摘要: 介绍本文档是参考润乾报表模型,继《报表应用思路》的进一步分析,说明平台报表中涉及的多个相关模型,为后续报表开发提供概念以及总体设计支持术语名称说明单元格报表由行列整齐的格子组成,这些格子我们称为单元格,所有的单元格组成了报表。主格和附属格主格和附属格是互相关联的,当A单元格扩展时,B单元格被 同步复制,此时A单元格称为B单元格的主格,B单元格称为A单元格的附属单元格。 横伸主格如果A单元格横向扩展... 阅读全文

posted @ 2009-11-16 13:09 周 金根 阅读(1830) 评论(4) 推荐(3) 编辑

开源 - 开源协议

摘要: 学习技术过程中,经常会遇到一些开源代码,有时想用在实际项目中,这时就需要对开源协议有所了解,以下我将网上看到的一些经常遇到的开源协议进行简要列举。BSD开源协议BSD开源协议是一个给于使用者很大自由的协议,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。 当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件: 1. 如果再发... 阅读全文

posted @ 2009-11-16 12:50 周 金根 阅读(1498) 评论(1) 推荐(1) 编辑

2009年11月15日

需求入门: 原型开发

摘要: 本文更新版本已挪至 http://www.zhoujingen.cn/blog/5610.html-------------------------为什么需要原型 建立原型的主要原因是为了解决在产品开发的早期阶段不确定的问题,利用这些不确定性来判断系统中哪一部分需要建立原型和希望从用户对原型的评价... 阅读全文

posted @ 2009-11-15 20:18 周 金根 阅读(11539) 评论(7) 推荐(5) 编辑

报表引擎 -架构描述

摘要: 介绍 本文档是报表平台的技术架构描述,文中会描述主要的设计思路和设计决策。 架构目标和约束 报表平台作为独立的公共服务产品,可以简单的集成到各产品的报表应用 可维护性和可扩展性 扩展运算与分页独立实现,代码更易于维护 扩充表达式可以提高报表的运算能力 在此报表引擎上可以构建多维分析应用 可用性 能适用于上万条记录的报表数据量 适用于Web页面显示 易用性 针对技术人员,提供类似Excel编辑... 阅读全文

posted @ 2009-11-15 10:30 周 金根 阅读(6007) 评论(2) 推荐(1) 编辑

报表引擎 -报表模型概述

摘要: 介绍本文档作为报表开发的分析文档,对报表分析在功能或者概念上进行描述和细化,不包括报表开发的设计文档总体组件图注:报表调度器、管理、上报、界面、分析等为待扩充功能 主要产品组成报表设计器图形化Cell形式报表设计器,自带报表运算引擎,可预览打印报表,并可生成其它格式保存功能:EXCEL网格式的表格编辑方案,支持横纵向合并格批量选中修改,剪贴板支持,复制时自动调整公式多次UNDO/REDO动态更新引用单元格动态显示表达式值报表服务器在后台提供统计报表运算处理的服务,开放报表引擎API接口功能:数据源同一张报表可有多个数据源,多张报表可以共有一个数据源考虑允许适配多个数据源扩展模型横纵向对称扩展, 阅读全文

posted @ 2009-11-15 09:35 周 金根 阅读(2613) 评论(5) 推荐(1) 编辑

推荐:图标编辑器

摘要: 在开发过程中,有时候需要一些图标,我们可以去网上查找别人的(如iconfinder),有时对于简单的或者找不到合适的,我们也可以自己去做一个。经常有时想做时,不知道用什么好的图标编辑器,以下我就介绍一些图标编辑器,以便需要时可以参考,感兴趣的也可以去看看。Greenfish Icon Editor ProGreenfish Icon Editor Pro 是一款强大的图标编辑器,但非常小巧,解压后... 阅读全文

posted @ 2009-11-15 08:27 周 金根 阅读(1534) 评论(1) 推荐(3) 编辑

2009年11月14日

报表引擎 - 报表应用思路

摘要: OpenExpressApp计划之内包括一个报表引擎OpenReport。2006年时在公司负责研究并实现了一个报表引擎,写了几篇博文(《交叉表的报表设计》、《研究润乾报表的实现》、《使用Antlr实现表达式引擎》)。OpenReport的报表模型将会和我已经实现的差不多,但是有些主要差别就是,OpenReport除了支持数据集,还可以基于对象,在设计器上和使用上将会更易用更方便,会更多考虑业务人员的使用和一些BI。但是实现起来会花更多时间和精力,而现在我的精力毕竟有限,所以还没有开始OpenReport的工作,目前OEA主要还是集中在应用框架上。 现在还有人看到我以前的两篇和报表相关... 阅读全文

posted @ 2009-11-14 09:55 周 金根 阅读(5847) 评论(7) 推荐(2) 编辑

2009年11月12日

信息系统开发平台OpenExpressApp - 内置支持的模块类型

摘要: 信息系统组成层次可以按照下图所示层次进行划分:系统-子系统-主模块-辅助模块/对象。在OEA中的模块就是组合系统一个较为独立的功能块,例如入库单为主模块,选择产品为主模块的辅助模块。本篇主要讲解OEA对模块的内置支持。OEA中模块目前支持模块类型主要有以下几种:[代码]系统对每类模块都实现了一个模板Templete,每个模块模板其实就是每类模块的一个具体实现单元,代码位置如下:下面我将单独对每个模... 阅读全文

posted @ 2009-11-12 14:34 周 金根 阅读(2204) 评论(6) 推荐(3) 编辑

推荐:俞敏洪的一分钟励志演讲

摘要: 我们每个人都会有自己的生活方式,一开始总是包含激情,但是随着时间的打击,有人可能会选择放弃。在《坚持是学习的最好方法》中我说过坚持,在这里我一样希望我们都能坚持着奔腾入海的意志。俞敏洪是一个已经经历风雨知道怎样诠释人生的人,他拿草和树、泥沙和流水做对比,在一分钟内把自己的价值观陈述达出来的。一分钟很难描述完整这种体会,而且万事万物都有可取之处,我们只需意味他想表达的意思,而不需要推敲草、树、泥沙和... 阅读全文

posted @ 2009-11-12 12:37 周 金根 阅读(2916) 评论(7) 推荐(2) 编辑

2009年11月11日

信息系统开发平台OpenExpressApp - AutoUI自动生成界面

摘要: 下图为OpenExpressApp的系统架构图,其中在UI层支持WPF和ASP.NET MVC,目前首先实现了对WPF的支持。在《信息系统开发平台OpenExpressApp - 理解核心元素ObjectView》中的ObjectView的生成控件功能都是委托给AutoUI静态类库来完成的,本篇将讲解AutoUI功能。应用模型贯穿于整个架构层哪些地方调用了AutoUI静态类ListObjectVi... 阅读全文

posted @ 2009-11-11 11:49 周 金根 阅读(5961) 评论(5) 推荐(3) 编辑

2009年11月9日

个人管理 - 学习=知识+实践+思考+心态

摘要: 本文更新版本已挪至 http://www.zhoujingen.cn/blog/1719.html-------------------------------------学如逆水行舟,不进则退,当我工作需要学习新东西,当有人问我如何快速学习时,我就会想学习是什么,我们如何才能够快速的学习并应用新的... 阅读全文

posted @ 2009-11-09 22:08 周 金根 阅读(11478) 评论(23) 推荐(13) 编辑

2009年11月7日

软件产品线工程方法 - BAPO相关周期图

摘要: BAPO(Business/Architecture/Process/Organisation)商业(Business)业务领先模型产品生命周期 在产品开发期间该产品销售额为零,公司投资不断增加;在引进期,销售缓慢,初期通常利润偏低或为负数;在成长期销售快速增长,利润也显著增加;在成熟期利润在达到顶点后逐渐走下坡路;在衰退期间产品销售量显著衰退,利润也大幅度滑落。如图所示:适用范围:该曲线适用于一般产品的生命周期的描述;不适用于风格型、时尚型、热潮型和扇贝型产品的生命周期的描述市场生命周期曲线Ⅰ表示细分市场的生命周期;曲线Ⅱ表示生命周期过程中市场投资水平的变化,这里可以理解为促销投资水平;曲. 阅读全文

posted @ 2009-11-07 21:19 周 金根 阅读(3262) 评论(0) 推荐(3) 编辑

2009年11月6日

推荐: 一个业务流程梳理工具Sam

摘要: Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE MicrosoftInternetExplorer4   以前看到过一个流程梳理工具,还没有细研究,但感觉还行,推荐给大家梳理流程用。安装文件链接,安装前需要安装JDK  炎黄盈动是中国最早专业定位于BPM平台与解决方案领域的实践者。Sam是主要由炎黄盈动开发和维护的一款业... 阅读全文

posted @ 2009-11-06 08:43 周 金根 阅读(18627) 评论(12) 推荐(2) 编辑

2009年11月5日

需求入门: 需求工程=需求开发+需求管理

摘要: 本文已转至 http://www.zhoujingen.cn/blog/2933.html 上图是需求工程的组成部分,从图中可以看出,需求工程划分为两个部分:需求开发和需求管理。需求开发又分为需求获取(Elicitation)、需求分析(Analysis)、编写规约(Specification)和需 阅读全文

posted @ 2009-11-05 22:36 周 金根 阅读(7172) 评论(7) 推荐(2) 编辑

信息系统开发平台OpenExpressApp - 理解核心元素ObjectView

摘要: 上图是eXpressApp Framework框架中的重要架构元素,其中View居于中间位置,是框架的核心概念之一,而OpenExpressApp也使用并扩充了这一核心概念。理解OEA必须理解这些核心概念,本篇将介绍一下在OEA中ObjectView的一些知识,明白这个概念后就能更加快速的理解AutoUI技术了。下图是View相关的主要类图:   信息系统必不可少的需要在UI上显示数据,OEA使用... 阅读全文

posted @ 2009-11-05 16:32 周 金根 阅读(2808) 评论(4) 推荐(3) 编辑

WPF - DataGrid 相关收集

摘要: WPF DataGrid Practical ExamplesMVVM and the WPF DataGridFiltering the WPF DataGrid automatically via the header (inline filtering)WPF DataGrid Search and HighlightWPF DataGrid: Using DataTemplates for... 阅读全文

posted @ 2009-11-05 09:49 周 金根 阅读(1935) 评论(0) 推荐(1) 编辑

2009年11月4日

需求入门: 软件需求的三个层次

摘要: 本文更新版本已挪至 http://www.zhoujingen.cn/itbang/352.html 作为技术人员,我们以往更多的关注的是技术,但是在做个多年后,发现做正确的事比正确的做事更重要,而软件中需求的好坏就很大程度决定了你这个 软件是否正确,需求确定后不管你如何实现,功能给客户直接带来的价 阅读全文

posted @ 2009-11-04 23:21 周 金根 阅读(22684) 评论(8) 推荐(5) 编辑

WPF - 资源收集

摘要: OpenExpressApp的UI现在是使用WPF,所以熟悉WPF是必须的,以下我将可能用到的一些相关内容随时记录下来,以备查阅。此篇文章将不断更新,感兴趣的可以看看,也欢迎大家补充。Debugging and Development UtilitiesXAMLPower ToysMole for Visual StudioSnoop - A collection of visual debugg... 阅读全文

posted @ 2009-11-04 20:41 周 金根 阅读(8595) 评论(6) 推荐(15) 编辑

2009年11月2日

信息系统开发平台OpenExpressApp - 内置支持的列表编辑方式

摘要: 目前支持列表编辑方式主要有两种:非树形列表和树形列表类图如下:列表为ListEditor,树形列表TreeListEditor继承ListEditor。对应于各个属性编辑器有一个对应的GridColumn和TreeColumn,各个内部都引用了PropertyEditor。下面分别对非树形和树形列表两种编辑方式进行简要说明,以便大家对它们的使用有所了解。1 非树形列表1.1 运行界面1.2 类库编... 阅读全文

posted @ 2009-11-02 15:24 周 金根 阅读(2988) 评论(0) 推荐(1) 编辑

2009年11月1日

信息系统开发平台OpenExpressApp - 学习必备知识

摘要: 在学习和使用OpenExpressApp过程中,经常有人问我需要哪些准备知识。本篇我将介绍一下有哪些知识和文档可供大家参考的。使用OpenExpressApp必备知识熟悉C#语言熟悉面向对象熟悉CSLA框架学习OpenExpressApp内部实现必备知识熟悉WPF了解WCF熟悉架构,如分层、MVC、领域模型、ORM等对参考和使用的第三方框架有所了解对于语言和WPF,以及架构设计在此就不说了。由于O... 阅读全文

posted @ 2009-11-01 23:00 周 金根 阅读(5063) 评论(5) 推荐(5) 编辑

2009年10月19日

信息系统开发平台OpenExpressApp -代码目录说明

摘要: 本篇将对OpenExpressApp的SVN目录进行说明,读完之后大家能够熟悉OpenExpressApp的目录结构,这样可以从整体上更好的去理解和查看代码。由于时间关系,有些代码实现还有待修改,也希望大家在查看过程中多提出重构或修改的建议:)SVN目录OpenExpressApp:OpenExpressApp框架代码  OpenExpressApp.Host.WPF:WPF客户端宿主启动程序,打... 阅读全文

posted @ 2009-10-19 11:05 周 金根 阅读(4087) 评论(9) 推荐(3) 编辑

2009年10月18日

软件产品线工程方法 - 三大基本活动

摘要: 本文已挪至 http://www.zhoujingen.cn/blog/1644.html在《软件产品线工程方法 - 四个主要原则》中一个主要原则是:两阶段生命周期,如下图所示:从上图可以看出,产品线开发包括核心资产开发和利用核心资产的产品开发,以及产品线开发的管理。这三部分活动是产品线的核心基本活动,如下图所示:上图每个旋转圆圈表示一个基本活动,三者必不可少,紧密连接。旋转箭头不仅表明核心资产用于产品开发,还表明核心资产通常是从产品开发中形成的。下面从各个基本活动分别进行说明,希望读完之后大家对产品线开发的三个基本活动都有所了解。核心资产开发核心资产开发活动的目标是建立产品的生成能力,下图显 阅读全文

posted @ 2009-10-18 13:21 周 金根 阅读(4526) 评论(1) 推荐(0) 编辑

2009年10月16日

信息系统开发平台OpenExpressApp-内置支持的属性编辑方式

摘要: 目前支持属性编辑方式有: 基础类型(字符串、日期、枚举)、特定类型(下拉列表、memo弹出框、附件)OpenExpressApp support some property editors: base data type(string,datatime, enum) and some given type(dropdown lookup、memo、attachment)类图如下:下面分别对其他几种... 阅读全文

posted @ 2009-10-16 10:05 周 金根 阅读(2867) 评论(6) 推荐(2) 编辑

2009年10月12日

信息系统开发平台OpenExpressApp - 总体架构的由来

摘要: 本文更新版本已挪至 http://www.zhoujingen.cn/blog/2685.html------------------------------- 我们经常在对相同需求进行着重复的设计和编码,这使得开发效率低,而且质量也得不到保证,OpenExpressApp 就是抽取了信息系统的一... 阅读全文

posted @ 2009-10-12 22:36 周 金根 阅读(13258) 评论(9) 推荐(3) 编辑

软件观点 -从技术采用生命周期来看公司内部开发平台的用户群

摘要: 本文已挪至 http://www.zhoujingen.cn/blog/1648.html 产品线中的核心资产的开发一般都是由公司的开发平台来制作的,这个开发平台的主要用户就是内部用户,从用户角色来看可能包括需求人员、开发人员、架构师等,本篇不准备讨论这些角色,而是从鸿沟理论中的用户群来谈谈。读完之 阅读全文

posted @ 2009-10-12 20:18 周 金根 阅读(3573) 评论(0) 推荐(2) 编辑

2009年10月10日

信息系统开发平台OpenExpressApp - 订单示例(Getting Started)

摘要: 本篇基于openexpressapp 1.0下的一个简单订单示例来演示如何使用OpenExpressApp框架来快速开发应用程序,示例代码见SVN目录【Example】。通过自己操作一遍示例并运行后,希望大家对使用OpenExperssApp进行应用工程开发时的基本流程有所了解,以及对OpenExpressApp框架有初步的认识。以下将具体说明【Example\Order】下的项目生成步骤。准备工... 阅读全文

posted @ 2009-10-10 09:46 周 金根 阅读(7322) 评论(19) 推荐(3) 编辑

2009年10月9日

信息系统开发平台openexpressapp 1.0发布

摘要: 之前写了一篇OpenExpressApp的简单介绍《OpenExpressApp架构-信息系统开发平台》openexpressapp已在微软codeplex网站发布1.0版本,这个版本包括框架所有代码,以及一个简单示例代码,感兴趣的可以随时关注,平台将不断完善。OpenExpressApp不会带给大家创新性的技术,而是以务实的态度,将现有技术和产品中有价值的部分引入到一起,它要做的是整合别人已经实践的方法来提高我们自身的开发能力,以求快速、高质量的开发信息系统产品。不同于以往为特定开发角色提供独立的开发工具和框架,它基于业务模型驱动开发指导思想,为业务分析人员、软件设计和开发人员提供的一种集成 阅读全文

posted @ 2009-10-09 14:11 周 金根 阅读(8235) 评论(17) 推荐(6) 编辑

2009年9月27日

软件产品线工程方法 - 四个主要方法原则

摘要: 本文已挪至 http://www.zhoujingen.cn/blog/1431.html 信息系统存在很多共性,如果作为产品来开发,那么如何能够通过平台来进行重用和扩展,业界中的产品线工程方法就是进行大范围复用的一种方法。 在园子里也住了不短时间,发现关注技术的占多数,而除了技术外,软件工程中还有 阅读全文

posted @ 2009-09-27 22:28 周 金根 阅读(9438) 评论(2) 推荐(2) 编辑

2009年9月15日

OpenExpressApp架构-信息系统开发平台

摘要: 本文已挪至 http://www.zhoujingen.cn/blog/1458.html 软件=商业+架构+过程+组织,前一阵子谈论的Scrum更多包含的是过程和组织,这篇主要关注的是架构。 作了开发多年,期间也参考了业界一些著名的软件厂商的产品,现在已经开始实现一个适合信息系统的平台,本篇将从总 阅读全文

posted @ 2009-09-15 23:20 周 金根 阅读(10239) 评论(20) 推荐(5) 编辑

2009年9月7日

读书笔记:如何招到聪明又能做事的人

摘要: 项目组最近在招人,在招聘过程中,从对招聘人要求来看,我们需要阅读简历、进行技术面试、人力面试并最终决定是否录用,从对公司要求来看,面试人员会看公司提供什么工作环境、薪资情况等。经过了一段时间的招聘,我发现不仅仅是顶级的技术人才很难招到,就是合适的人也比较难招到。  聪明但不能做事的人,往往能弄出一些看似高深的东西,但是缺乏实际用处。而能做事但不聪明的人,常常做出的事情很一般,有时甚至起到反作用。我... 阅读全文

posted @ 2009-09-07 08:35 周 金根 阅读(7841) 评论(32) 推荐(3) 编辑

2009年9月6日

从买房来看软件有哪几个主要关注点

摘要: 去年股票和房市都比较低迷,今年房市和股市又热起来,而且房市不像股票是震荡的,它只涨不跌。我不怎么懂购房更不懂投资,所以在这里我并不是谈如何投资,而是从买房的视角来说说房屋与软件的关系,从买房的过程来解释一下需要从哪些大的方面来理解一个软件系统。  在进行架构设计、以及创新的过程中,我们都很有可能去理解别人的软件系统。能否找到需要理解的软件系统以及能否很好的理解一个软件系统都是一个好的开发人员必备的... 阅读全文

posted @ 2009-09-06 16:26 周 金根 阅读(6233) 评论(10) 推荐(0) 编辑

2009年8月18日

从IT方法论来谈RUP

摘要: 在《从IT方法论来谈Scrum》中我谈到了6Ways方法框架,本篇仍用6Ways方法框架来概括的谈谈RUP方法。 软件开发过程描述了软件构造、部署和维护的一种方法。统一过程(Unified Process)是一种流行的构造面向对象系统的软件开发过程。RUP(Rational Unified Process)是对UP的详细精化,并且已经被广泛采纳。有些人可能一看到RUP提供这么多流程和工件,觉得不够敏捷,我认为RUP本身其实是一个方法框架,本身也可以采纳一些现在敏捷实践。采用什么方法重要,但采用方法后的执行更重要,对RUP来说,如果我们做得好就是敏捷,做不好就可能瀑布了。The way o... 阅读全文

posted @ 2009-08-18 22:59 周 金根 阅读(3798) 评论(1) 推荐(3) 编辑

2009年8月9日

Scrum之 回顾会议

摘要: 本文更新版本已挪至 http://www.zhoujingen.cn/blog/4596.html------------------------------ Scrum中Sprint计划会议是最重要的事件,第二重要的事件就是回顾会议,因为这是团队做改进的最佳时机。如果没有回顾,就会发现团队在重犯... 阅读全文

posted @ 2009-08-09 13:56 周 金根 阅读(6372) 评论(0) 推荐(1) 编辑

Scrum之 评审会议

摘要: 本文转自http://www.zhoujingen.cn/blog/6375.html在sprint周期最后,需要进行一次评审会议,让团队向产品负责人和利益相关者展示已完成的功能。sprint审核的大部分实践用于团队成员展示功能、回答利益相关者对展示的疑问并记录所期望的更改。评审会议可以吸引相关利益... 阅读全文

posted @ 2009-08-09 13:45 周 金根 阅读(2967) 评论(0) 推荐(0) 编辑

2009年8月8日

流程 - 从IT方法论来谈Scrum

摘要: 敏捷的前世今生 http://url.cn/29IsEur 本文更新内容已挪至 http://www.zhoujingen.cn/blog/1433.html “方法”这个词很常用,但并不简单。大部分会出现一种现象,做了一些事情,解决了很多问题,但是当别人问自己是采用什么方法来指导自己工作时并不能清 阅读全文

posted @ 2009-08-08 22:44 周 金根 阅读(17917) 评论(12) 推荐(4) 编辑

2009年8月3日

软件工厂方法(二):软件工厂应用

摘要: 基于实践的高度抽象之上,加上理论的加工就成为了方法论。在自己没有很好的方法时,我们可以采用别人的方法,只需要在应用时结合自己的实际情况,有选择的结合不同方法以满足我们的要求。在上篇《软件工厂方法》中,介绍了软件工厂由四个基础构建块组成,分别是产品线工程,架构框架,模型驱动开发和构建指南。我前期的主要工作内容有报表引擎、企业报表和GCC应用,本文将基于我的这些工作内容描述一下软件工厂的一些概念以及应... 阅读全文

posted @ 2009-08-03 21:02 周 金根 阅读(4532) 评论(4) 推荐(4) 编辑

2009年7月25日

Scrum之 站立例会

摘要: 本文更新版本已挪至 http://www.zhoujingen.cn/blog/7265.html在sprint期间,每天都会通过站立例会来进行沟通,以下我将把会议主要内容罗列一下。(以下会议内容来自于Scrum Checklists)会议内容 目标 团队成员间工作进度的沟通和协调会议准备邀请与... 阅读全文

posted @ 2009-07-25 21:29 周 金根 阅读(4694) 评论(1) 推荐(1) 编辑

Scrum之 Sprint计划会议

摘要: 本文更新版本已挪至 http://www.zhoujingen.cn/blog/7262.html在sprint第一天召开sprint计划会议,这个会议分为两部分,计划会议1由PO、SM和Team参加,主要是从产品backlog中挑选出需要放到当前sprint下的既定产品backlog,然后由SM、... 阅读全文

posted @ 2009-07-25 21:03 周 金根 阅读(12889) 评论(2) 推荐(1) 编辑

2009年7月19日

Scrum 之 product Backlog

摘要: 本文更新内容以转自 http://www.zhoujingen.cn/blog/2767.html---------------------------------------Scrum的基本概念其实并不复杂,但是想做好并不容易,大家都知道product backlog的重要性,但是我们如何制定和展... 阅读全文

posted @ 2009-07-19 22:21 周 金根 阅读(34379) 评论(2) 推荐(2) 编辑

导航