一个java框架的开发日记(4)

怎样用插件扩展一个框架?

从一开始我想把框架做成一个轻量级的框架。在此基础上作一些基础配置就能使用插件,而且插件是在插件中配置的,框架会自己去寻找有用的东西。

框架本身只解决url解析的问题,现在已经解决了,我希望这个小框架能做的事情是最小单元的,与其他项目无关的,不受任何束缚的。

 

就操作来说,我现在只需要解析url路径,现在能做的是以/do/开头的url都会执行解析。/do/action.method?id=1...这边会自动将action指向相应的类。并直接调用其该method方

 

法。参数只属于待处理的数据,与逻辑无关。

 

那么现在要扩展的插件内容都有什么。

第一、要连接数据库,而数据库的连接必须在项目子类获得

第二、实现重量级的CRUD操作

第三、需要相符的View进行显示。

第四、自动创建项目文件。

 

那么应该怎么做?

 将项目分成小块。每块只解决一小部分内容,方便进行单元测试在此基础上扩充,jar包多一些没关系。用的时候全加载就行了。

现在我将其分为两个项目npurl和npweb。

1、npurl

npurl是一个轻量级的模块,它只负责处理url,针对/do/*进行处理。假如一个url为/do/action_name.method,npurl将会自动寻找model.action_name.ActionName类,并执行method方法。这一部分已经实现并通过了测试。

还需要完善的是对空url将怎样默认处理。然后是怎样处理出错。

2、npweb

npweb应该是一个重量级的框架了,它的功能就很多了。

   》负责自动生成view和model。

   》重写基本模型。增加CRUD操作

 

现在做的是CRUD操作的添加,新生成的model都会继承这个类。

 

最后,视图模板的编辑也是一项大型工程。需要有专门的设计人员,而我在这里即负责美工,又负责编写代码,工程量很大。

 

整个框架是在思考不成熟的前提下开始的,以后可能会困难重重。

你可能感兴趣的:(深奥的JAVA)