使用Meteor开发的一些感触

年后老大果断采用了国外一款强大的全栈式框架Meteor;

因为国外,英语是硬伤,而其不可掌控因素过多,国内对此框架的应用略少。

不过,既然老大都下定决心用了;我们这些当下属的只好硬着头皮学习;


学习过程略微艰难,各种stackoverflow, github,甚至不惜找到相关博客上的人沟通交流。。。

Meteor使用的优缺点:

1、Meteor提供多接口,多种依赖选择;
     如果你熟悉backbone,那么你完全可以用backbone一些功能和Meteor结合;
     如果你熟悉angular,Meteor也提供了ngMeteor等强大的支持包;

2、MVC分离;

     Meteor一直依赖以handlebar为基础扩展一系列东西,让view扩展性更强,基本的业务逻辑可在页面中呈现(如angular等其他框架也有实现);

     可以
     
     对于事件,Meteor基于jquery扩展出来一套事件操作:

     Meteor.templateName.events({
          ‘eventtype selector’: function(ev, tmpl){

          }
     });

     可以分离出那些元素操作那些事 做了神马; 这里可以看做Control层

     通过Meteor.methods({
          add: function(){}
     });

     形式可以剥离出公用的方法

     
3、项目管理功能:
     client: 放置前台的代码;

     public:放置图片资源

     server:放置后台代码

4、强大的自动化功能:
     Meteor可以把css合并为一个文件; css暂时没有压缩;
     当打包部署上线的时候 (Meteor bundle)可以将client代码压缩

5、MongDB的封装处理

6、由于iron-router  package 只兼容IE9等标准浏览器;  

   如果想考虑到兼容性更高的话 可以使用backbone Router解决

   mrt add backbone 加载包仅加载backbone中的router 和 history 

   但是server端的router backbone暂时实现不了

7、第三方接口问题:Meteor目前尚未很好的方法做这块 正在研究中...


Meteor的缺点:


     依赖包过多,假如在移动端跑不太现实.
     如数据处理依赖:underscore;
     如模版处理依赖: handlebar;
     如事件处理:依赖jquery等等;

     调试功能较弱;javascript语言的特性,导致逻辑不够严谨的情况下会出现一些意想不到的错误;

  网络调试困难, 本地效果还不错.但是到网络上各种网络因素,数据推送的形式,导致调试很困难.


     学习成本高:英语,天生的导致团队学习成本过高,不可控因素略多;

  数据需要分成颗粒,发布,订阅;尽可能的控制数据发布量;要不然会吃内存的.


这段时间使用不可否认,这是一款强大的框架,作为一款javascript全栈式各方面处理蛮到位;

还有一款流行的MEAN(MongoDB + Express + Angular + Node)框架据传也很强大;

如有错误之处,请指出.

对Meteor感兴趣的同学可以留言交流.



     

原文地址:https://www.cnblogs.com/w3cjiangtao/p/3730920.html