实现一个无任何环境依赖的完全本地化,完全自动化的开发测试环境和线上编译环境。
浏览即编译,编译即测试,测试即警告,手工点击与批量处理以相同机制。
源码的内容,或者可以通过源码生成的内容,直接对浏览器提供服务。
包括但不限于:
过滤css内容,预览目标文件(保持源码干净,可不写文件,直接放在服务器的共享内存中)。
方案1:基于目录和命名规则的自动图片合并
例如:image[xb200].png表示图片需要x方向平铺,bottom对齐,留白(这里是向上)200像素
属性说明:[xy]分别表示x,y方向平铺(只能有一个方向,否则不能合并);[rb]分别表示right,bottom 两个特殊方向对齐(默认的left,top对齐); 如果有数字,数字表示该图片需要留白的空间。
准备做一个统一的模板测试平台,采用相同的策略同时支持: 跨平台的Lite, Java FreeMarker , Java Velocity, PHP Smarty 等常用模板系统
功能包括
直接点击一个按钮初始化开发环境,部署实例代码。
实现完全自动化,浏览即编译,按需处理。
自动实现永久缓存需要的源码和配置修改
结合规范实现。
框架分:编译调度,编译插件,Web服务器,脚手架四大部分
编译调度一文件为中心, 每个文件浏览时,涉及的插件, 关联的状态, 需要访问的文件(依赖)等,任意一处变化,都会触发编译调度系统重新编译你的文件。
编译调度不可扩展, 系统会自动完成。
编译插件分插件运行环境和插件自身, 插件自身由javascript编写, 可以任意修改和配置, 系统会提供一组实用API(如文件读写函数,图片读写函数,JS压缩函数)
插件自身可以自由定制,插件运行环境由不可定制。
Web服务器可以选择编译系统, 用来输出预处理之后的内容, 还可以定制路由规则,让你用编程语言自定义请求,主要用于处理模板和测试程序。
可定制路由,用编程语言处理预览请求
一个独立网站,网站程序运行中,可以获得当前项目信息,实现诸如文件生成向导一类的工作。
document.write只是一种过度方案
调研一下直接采用 NodeJS API架构的可行性。