zoukankan      html  css  js  c++  java
  • $、W、g之争

    $
    先行者如prototype用来代替getElementById,后来者如jquery用来代指jquery,还有很多模板用来代指模板参数,等等……
    总之,假设一个单词,对那个系统很重要很常用,那么,他们就想把这个单词简写成$。
    第一个成功的系统,就是美国这个大系统,用它来指代钱。

    正如aoao同学所说,“代码里有很多$,会让写码的人很有成就感”,$是个很有诱惑力的符号,QWrap也很想使用。可是,考虑到$已经被先行者大量的挖掘与发挥、并且还会被后来者无限的挖掘与发挥,我们还是忍痛放弃了。
    于是,我们转而推荐以下两个缩写:W、g


    W
    QWrap系统的提出Wrap概念(对一个core核进行包装,外套一层wrap,从而达到core无污染、包装任意扩展)。而使用率最高的,就是NodeW,即对元素的包装。其实细想一下,jquery它也是一个NodeW,还有YUI3的Node与NodeList,也是NodeW。
    QWrap中的NodeW,是NodeW与NodeListW的一个合体。
    在有啊版应用中,用W代指NodeW。

    g
    就是getElement。
    典型语法g(arg0)。
    它的目的,就是根据参数arg0(或id,或html,或NodeW),来获取节点。----这里是原生的元素节点,而不是经过包装的节点。

    由于历史原因(那时我们经不起$的诱惑),我们实际中的某项目,还是使用$代表getElement。
    这个问题也很好解决,因为,浅化命名空间、添加别名等,本身就是项目retouch所做的事。
    例如:js/apps/core_dom_youa.js,它里面就包含了一个youa_retouch.js的文件。

    没有浅化命名空间的应用(core_pure + dom_pure + dom_retouch),除了产生一个window.QW外,没有任何副作用。
    按推荐的浅化命名空间的应用(core_pure + core_retouch + dom_pure + dom_retouch + youa_retouch),缩写只有W、g,而没有$。它也与其它的各框架天然兼容、和平共处。


    附:
    qwrap博客地址:http://www.qwrap.com

  • 相关阅读:
    vue中 key 值的作用
    v-on可以监听多个方法吗?
    vue常用的修饰符
    v-if和v-show的区别
    Vue和其他框架的区别
    Vue面试题总结——目录
    vue是一个渐进式的框架,我是这么理解的
    原生JS封装创建多级菜单函数
    如何使用mongodb(建立原型,连接数据库)
    Hive 的安装与配置
  • 原文地址:https://www.cnblogs.com/jkisjk/p/qwrap_w_g.html
Copyright © 2011-2022 走看看