zoukankan      html  css  js  c++  java
  • 懵懵懂懂的样子

    公司的框架是基于sea设计的,基本的使用都差不多。sea是模块加载器,主要是倾向于js模块的加载。像什么requires,exprots

    然后就是sea是遵循CMD规范,之前对什么CMD,AMD,node的Modules规范迷迷糊糊,停留在他们都是按照这样的规则去设计的理解层面上。

    sea的介绍:

    Sea.js 首要要解决的是模块系统的基本问题:

    1. 模块是什么?
    2. 模块之间如何交互?

    在前端开发领域,一个模块,可以是JS 模块,也可以是 CSS 模块,或是 Template 等模块。在 Sea.js 里,我们专注于 JS 模块(其他类型的模块可以转换为 JS 模块):

    1. 模块是一段 JavaScript 代码,具有统一的基本书写格式。
    2. 模块之间通过基本交互规则,能彼此引用,协同工作。

    把上面两点中提及的基本书写格式和基本交互规则描述清楚,就能构建出一个模块系统。对书写格式和交互规则的详细描述,就是模块定义规范(Module Definition Specification)。比如 CommonJS 社区的 Modules 1.1.1 规范,以及 NodeJS 的 Modules 规范,还有 RequireJS 提出的 AMD 规范等等。

    若有所思:原来CMD,AMD说直白点就是这样子。

    然后我又看到了这篇博文   http://blog.csdn.net/myan/article/details/5928531

    博文写的很精彩,也让我有种恍然大悟的感觉。

    文中的这句:

     对象范式的两个基本观念:

    • 程序是由对象组成的;
    • 对象之间互相发送消息,协作完成任务;

    和上文中的sea首要解决的基本问题的两点比较下,感觉很相似。是不是又可以联系到模块化开发?面对对象开发?

    博文中由对象范式的两个基本概念讲述了,个人理解为面向对象发展历程。

    然后我再回过头去看这些面对对象开发,CMD规范。。发现对程序的理解又改变了一点。原来想的是为什么要这样做?现在可能我想的就是:是不是可以这样做?

    现在前端这么日新月异,个人理解就像是大树开了花,这一朵那一朵。其实还是要抓住主干,真正从土地汲取营养的还是树干。

    唉,路漫漫其修远兮。

  • 相关阅读:
    什么是守护线程?
    如何优雅地停止一个线程?
    如何创建、启动 Java 线程?
    什么是线程?什么是进程?为什么要有线程?有什么关系与区别?
    并行是什么意思?与并发的区别是什么?
    并发编程的缺点?
    BZOJ_3058_四叶草魔杖_kruscal+状压DP
    BZOJ_3476_[Usaco2014 Mar]The Lazy Cow_扫描线+切比雪夫距离
    BZOJ_1511_[POI2006]OKR-Periods of Words_KMP
    BZOJ_3479_[Usaco2014 Mar]Watering the Fields_Prim
  • 原文地址:https://www.cnblogs.com/jjucap/p/6993638.html
Copyright © 2011-2022 走看看