发布了smartjs后,有朋友问:“没看懂究竟是干嘛的”。唉,打击了,每次我都想高唱其实你不懂我的心。
今天把相关的东西都整理了一遍,给大家介绍一下。里面绝大多数都已经实现过,有些则是有新的思路重做或者是加强。哈哈,应该也算不上重新造轮子,
这几年一直在以前端顾问的身份外包给国内某大型h公司做企业级的框架,然后提供给h公司内部项目使用。前后经历过三个这样项目,都是担任前端架构师,其中一个是移动web类,是支援过去的,没有深入,搭了个架子子就被拉回原来项目。只可惜该公司没有开源的文化,所以很多东西都无法分享出来。
同时,我自己的smartui2.0的内容也筹备的差不多了,所以顺势就在框架上面引入了不少smartui2.0思想和实现。而因为项目的忙碌,我自己的smartui2.0却进度缓慢。
今年,以前做的框架在h公司使用率非常搞,得到很多好评,同时很有意思的东西也搞的差不多了,然后…………,就没有然后了。h公司结构调整,框架与另外一个合体,又要重新搞出一个高大上的cloud app engine.
借此机会,我刚好把一些新的思路和以往做的东西都梳理了一遍,这就有了smartjs。
是一个js库,提供了一些前端开发支持,做的事情与jquery,zepto这些基础库不重合,而是补充. 主要提供了一些(aop,PRomise,oop,lifecycle)编程方式的辅助和一些数据的管理控制,提倡以松耦合,注入,插件式开发。目前版本基于Jquery,后续会提供独立版本。
Smart系列是指的基于Smartjs而实现的前端产品,有mvvm框架,web ide等等
搭架子,封装一些特有的东西。引入有用的第三方库。
所有系列都是一套体系。但同时每块也都保持独立。每块也都是模块化的。
aop,promise,oop始终贯穿。
模型驱动,从建模 - ui - service - db
(…………还有些高大上的词不记得了,就不咧了)
就是目前发布的smartjs的内容。完成了aop,oop,dataManager的初版;util则是部分;
基于模型驱动的mvvm引擎。以前是mvc现在实现为mvvm;
ui库的封装策略是建立一个widget工厂,使用feature应用公共特性,使用plugin做扩展。因为ui的控件会比较多,前面都会以引入一些第三方的控件为主,然后统一出入口。
辅助开发的工具库,定位错误,日志注入,调试管理等;
一个Web IDE;
这个不属于smartjs的内容,是我一个同事(陈大师)力作。一个后台的开源项目。是通过前端图像配置来生成服务的引擎。到时会与smart的designer结合,提供完成的设计器功能。
——————————————————————————————————————————————————————————————————————————————————————————
就介绍到这,还有一些细节和其他的模块不是特别重要就没列在里面。一不小心又画了个又圆又大的饼,不知道很年何月才能得偿所望。现在白天基本抽不出时间来弄,全部都是业余时间。按这个节奏是计划是在十一之前把smartjs核心库完成和初版smart-mvvm。
另外文章的排版很烂,没时间详细整理,请各位见谅。
新闻热点
疑难解答