• QWrap简介之:梦想、使命、目标


    市面上的库或框架很多,都值得认真学习与大力借鉴。例如:
    Prototype: MS最早成型的js库。贡献:多浏览器解决方案、Ajax、$、挖掘prototype
    YUI2:贡献:Dom系列方法、系列组件、YUI Compressor、YUI Doc。
    YUI3:贡献:依赖管理与异步加载、沙箱安全机制。
    Jquery:贡献:selector、jquery链式调用、gsetter写法(采用get first/set all策略)以及其它简单写法与命名
    Dojo:贡献:dojo.require机制(后来被YUI3发扬光大)
    Mootools:贡献:面向对象,new Class(小写的class是保留字哦)

    都很成熟,可是,各自也有一些不足。
    Prototype贡献单一,后继乏力。
    YUI2的静态调用,严谨,但是使用不便。
    到YUI3的异步加载,除了对js的贡献之外,也是为解决其臃肿代码问题的必然产物。并且对于组件开发者来说,他的某些贡献,变成了一种约束。
    Jquery是个人英雄主义的产物,代码太难看了;组件开发者也很难依赖它开发出独立组件;只专注于Dom,让使用者要另外去寻找其余的功能,例如字符串/日期/数组/模块加载等。

    所以,QWrap带着下面的目标上路了:
    核心方面:
    1。提供一个静态的核心库。
    2。拥有简单可依赖的编码模式,让理解思路的同学都能轻松的为它添砖加瓦,以满足自己项目的个性化需求。
    3。拥有无污染版,只有一个命名空间对外开放,它不跟任何库有冲突,包括他自已的旧版本。
    4。提供一套retouch机制,可以灵活的产出满足prototype与jquery等用户习惯的应用。
    5。让代码与使用分离:按标准写代码,同时代码可以经过简单转化,产出高易用性的代码。
    6。一个QWrap库,可以有多种应用输出。并且推荐几种典型应用输出。
    7。以某用户为典型用户,满足或引导解决他的种种需求,包括看似“无理”的需求。

    组件方面:
    1。提供一套组件规范、机制,引导组件开发者开发、以及组件使用者使用。
    2。让组件开发者依赖QWrap开发组件,而可以轻松发布出没有赖的组件。
    3。以团队为目录,让组件百花齐放(齐放,不是滥放)。

    其它:
    产出可以是一个js(与prototype.js与jquery.js类似),也可以是一个文件夹,让一个稍有水平的前端开发者,复制这个文件夹,就可以去组建一个团队,并以这个文件夹为础,开始一个或多个项目开发。
    当然,这个文件夹里,会提供开发规范/设计文档/开发工具/用户手册。。。等
    要有配套的成熟的博客、论坛、社群、兴趣小组。
    还得有稳定的同行支持团队,这才是最坚强的后盾。

    目标可能有点细,有点乱。上路的时候,我们信心满满,这些不只是梦想,而是可以转化成现实的目标。
  • 相关阅读:
    [NOI Online 2021 提高组] 愤怒的小N
    [NOI Online 2021 提高组] 积木小赛
    「2020-2021 集训队作业」Yet Another Permutation Problem
    无标号有根树/无根树 计数
    无向图的 三元环
    有标号二分图计数
    有标号荒漠计数
    「雅礼集训 2018 Day8」B
    CF708E Student's Camp
    清华集训 2016 选做
  • 原文地址:https://www.cnblogs.com/jkisjk/p/qwrap_blueprint.html
Copyright © 2020-2023  润新知