bearcat 0.3.6 更新,优化热更新方案

jopen 9年前

热更新

本次升级主要是优化了热更新,热更新的原理还是基于bearcat IoC 动态替换 javaScript 对象的 prototype 里面的方法,之前热更新watch file是通过nodejs自带的fs.watch实现的,现在版本基于 chokidar 库实现,可以支持多层目录的监听热更新,而不是之前版本的只能监听一级文件夹下面的文件,因为可以直接指定源码文件夹即可(默认就是app目录),更新里面的代码,只要是松散耦合,并不存在引用依赖的,就可以热更新

使用

启动bearcat时传入两个参数

bearcat.createApp([contextPath], {      BEARCAT_HOT: 'on',      BEARCAT_HPATH: 'setup your hot reload source path'  })
  • BEARCAT_HOT: 传入 'on' 来开启热更新,默认是关的

  • BEARCAT_HPATH: 设置热更新的扫描路径,默认是app文件夹

更多详情还请看官方文档 bearcat hot reload

Bearcat是一个基于自描述javaScript object进行开发的应用层框架, Bearcat提供了一个轻量级的容器来编写简单,可维护的javaScripts. Bearcat 提供了一个基础的底层来管理应用逻辑对象,使得开发者就可以把精力放在应用层的逻辑编写上. 

Bearcat 概览

Bearcat 包括几个部分,包括:

    核心容器

    核心容器包含核心,Beans,以及Context模块.

    核心和Beans模块提供容器的基础部分,包含IoC容器和依赖注入. BeanFactory 是一个复杂的factory工厂模式实现. 它去除了手动去编写单例,允许你的实际程序逻辑从配置和依赖的管理中解偶.

    Context 模块基于核心和Beans模块之上,并提供了一些更高级的内容,applicationContext 是它的主要实现.

    面向切面编程

    Bearcat 基于核心容器提供了面向切面编程(AOP)的支持, 允许开发者定义,方法拦截器,切面来解偶那些需要被分离的业务逻辑.

特性

轻量级容器

* 依赖注入(DI)实现的控制反转(IoC)来管理POJOs
* 基于AOP的声明横切逻辑
* 一致的开发与配置

简单的

* 简单的元数据配置和编写POJOs
* 轻量的: 基于node.js的高效率开发
* 可重用的: POJOs 可以应用于任何开发环境
* 无侵入的: 不依赖于容器API的开发
* 模块化: 使用那些你需要的部分
* 一站式服务: 没必要手动编写单例和工厂方法

强大的

* 良好的参考资料: 文档完整,很多实例包含 web todorealtime app 

* 良好的测试: 测试覆盖率超过95%

可扩展的

    * 自定义扩展: 可以为容器添加自定义的代码

    更多请参考 http://bearcatjs.org/