`
zhangyaochun
  • 浏览: 2566037 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

思考js框架模型

阅读更多

其实这两个词都不陌生,也有很多人研读了各个流行开源库的源码,甚至和我一样自己积累了一个自己的lib。

 

但是又没有想过,框架和库到底什么关系?

 

 

  • 库是什么
     --------  一堆的代码

  1. 经验与代码的积累
  2. 业务需求的预处理

  • 框架是什么?
     --------  一堆的规则

  1. 框架包含库
  2. 库只有框架的实体表现


框架即规则
  • 代码规范
  • 接口设计规范
  • 面向对象
  • 事件模型
  • 模块组织
        。。。。。。


看看流行的脚本框架

  • jQuery/Ext/Prototype    -------------------------------- 方法库
  • Bindows                        -------------------------------- 模块化编程
  • YUI/DWR/Ajax.net         -------------------------------- 控件式编程
  • Dojo/JSVM                     -------------------------------- 按需加载,本地存储
  • Mootools                       -------------------------------- 代码聚合

为什么需要框架?

  • 每一个框架设计只为达到某个特殊的目的
  • 一个框架只适合一类需求
  • 没有最好的框架,只有最合适的框架

  1. 快速开发
  2. 升级与维护


我们需要什么样的框架?

  • 模块化开发
  • 无冗余
  • 低耦合
  • 详尽的基础方法
  • 丰富的UI模块
  • 开始开发、部署和维护
  • 简单、复杂

  1、引入namspace的概念   ------- 每一个. 是一个目录
  2、模块的拆分
  3、模块的聚合 merge
   
    ----------------  思想来源于: import|using  来源于JAVA | C#  资源文件的引入

  4、开发状态和上线状态

   -------------------- 上线把文件包含,打包


  5、灵活的可扩展性




未来的框架:

  • 不局限于pc方面的解决方案
  • 与服务器紧密交互关联





分享到:
评论

相关推荐

    Abstract.js:Abstract.js是一个用于快速开发的Web框架

    Abstract.js重新思考了网页的构建,并发现了Web开发中常见的抽象动作。 我们提取了两个基本模型,它们可以描述所有Web开发。 因此,它是Abstract.js中的呈现模型和关系模型。 关系模型基于简单的状态机,并用于描述...

    关于javascript模块加载技术的一些思考

    前不久有个网友问我在前端使用requireJs和seajs的问题,我当时问他你们公司以前有没有自己编写的javascript库,或者javascript框架,他的回答是什么都没有,他只是听说像requirejs和seajs是新东西新技术,很有价值...

    【卷一/共两卷】AJAX实战pdf高清版90M

    4.3.3 在JavaScript中实现灵活的事件模型 4.4 Ajax应用中的模型 4.4.1 使用JavaSctjpt为业务领域建模 4.4.2 与服务器交互 4.5 从模型生成视图 4.5.1 JavaScript对象的反射 4.5.2 处理数组和对象 4.5.3 添加控制器 ...

    vue中$nextTick的用法讲解

    vue是非常流行的框架,他结合了angular和react的优点,从而...虽然 Vue.js 通常鼓励开发人员沿着“数据驱动”的方式思考,避免直接接触 DOM,但是有时我们确实要这么做。比如你在Vue生命周期的created()/mounted()钩子

    当下较新的30道VUE面试题!.rar

    关键点: 渐进式 JavaScript 框架、核心库加插件、动态创建用户界面(异步获取后台数据,数据展示在界面) 特点: MVVM 模式;代码简洁体积小,运行效率高,适合移动PC端开发;本身只关注 UI (和 react 相似),...

    网页与Web程序设计 课件 ppt 机械工业出版社 part1

    7.7.3 文档对象模型 147 本章小结 151 思考题 152 第8章 表单 153 8.1 插入表单 153 8.1.1 引例 153 8.1.2 插入表单方法 153 8.2 插入表单对象 154 8.2.1 添加按钮 155 8.2.2 添加文本域 155 8.2.3 添加复...

    formalistic:模型形式为具有验证器和显式脏原始状态的不可变数据树

    消除框架和组件的开销,并使用纯 JavaScript 对其进行建模。 事实证明,当这样做时,它们通常很容易推理! 安装 npm install --save formalistic 用法 Formalistic 是关于使用纯 JavaScript 对表单进行建模。 以下...

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB.zip

    Java框架研发思考.docx Java程序员们最常犯的10个错误.docx java程序员的就业指导(重点).docx Java程序员面试宝典 .pdf java笔试题大集合及答案 Java经典项目集锦.rar JAVA编程题全集(100题及答案).doc java面试书籍...

    java面试笔试题库java学习笔记开发教程互联网公司面试资料大全合集.zip

    Java框架研发思考.docx Java程序员们最常犯的10个错误.docx java程序员的就业指导(重点).docx Java程序员面试宝典 .pdf java笔试题大集合及答案 Java经典项目集锦.rar JAVA编程题全集(100题及答案).doc java面试书籍...

    java面试笔试资料java笔试题大集合及答案题库java笔试题汇总资料188个合集.zip

    Java框架研发思考.docx Java程序员们最常犯的10个错误.docx java程序员的就业指导(重点).docx Java程序员面试宝典 .pdf java笔试题大集合及答案 Java经典项目集锦.rar JAVA编程题全集(100题及答案).doc Java面试文档...

    基于SSH2+Maven+EasyUI+MySQL技术实战开发易买网电子商务交易平台

    Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则...

    Vue底层实现原理总结

    Vue是一个典型的MVVM框架,模型(Model)只是普通的JavaScript对象,修改它则视图(View)会自动更新。这种设计让状态管理变得非常简单而直观。那么Vue是如何把模型和视图建立起关联的呢? 实现原理概述 这是前言...

    tastypie-rethink:Tastypie 框架的 Rethinkdb 资源类型

    重新思考模型 // Make A Rethink Model var Model = thinky . createModel ( 'tastypie_model' , { index : type . number ( ) , guid : type . string ( ) , isActive : type . boolean ( ) . default ( false ...

    ionic-social-network:在 Ionic 框架中实现的科学社交网络原型

    一款帮助人们像科学家一样思考时事的移动应用程序。 定义现代科学话语的问题 我们传统的讲座和问题集系统给今天的大多数大学毕业生留下了一种“实证主义”的科学话语和教育方法,它将科学传播定位为从专家到外行的...

    rws:重新思考RealWork中的信息收集(输入)UI

    信息收集(输入屏幕)是RealWork中常用的UI。 它可能变得如此复杂,以... 一个简单CSS网格框架和模块化架构 工具和实用程序 开始吧 先决条件:Node,npm,bower,Grunt cli 克隆仓库并安装所需的软件包: git clone

    todomvc-mithril:用 Mithril 编写的 TodoMVC 示例

    是一个客户端 MVC 框架——一种以易于思考和维护的方式组织代码的工具。 学习秘银 是一个很好的入门资源。 以下是您可能会觉得有用的一些链接: 执行 用于尝试秘银的游乐场项目。 尽管整个都应该实现并运行,但进行...

    asp.net知识库

    DbHelperV2 - Teddy的通用数据库访问组件设计和思考 也论该不该在项目中使用存储过程代替SQL语句 如何使数据库中的表更有弹性,更易于扩展 存储过程——天使还是魔鬼 如何获取MSSQLServer,Oracel,Access中的数据字典...

    代码之美(中文完整版).pdf

    9.1. JavaScript 9.2. 符号表 9.3. 语素 9.4. 优先级 9.5. 表达式 9.6. 中置运算符 9.7. 前置操作符 9.8. 赋值运算符 9.9. 常数 9.10. Scope 9.11. 语句 9.12. 函数 9.13. 数组和对象字面量 9.14. 要做和要思考的事 ...

    scaling-tricks-for-geo:关于可伸缩交互式映射

    草稿博客文章和示例项目。 在可伸缩交互式映射上:最近的收藏夹技巧 ... 就是说,本文中的想法和代码示例可以与其他MV *框架或应用程序很好地配合,尤其是如果您根本不使用框架,则可以作为轻量级的帮助程序。 实际上,

    写给大家看的面向对象编程书(第3版).[美]Matt Weisfeld(带详细书签).pdf

    书中结合代码示例生动透彻地讲述了面向对象思想的精髓,让读者真正学会以对象方式进行思考。此外,本书还讨论了各种与面向对象概念密切相关的应用主题,包括XML、UML建模语言、持久存储、分布式计算和客户/服务器...

Global site tag (gtag.js) - Google Analytics