JavaScript 模块的循环加载

User

Ann

Marketing Specialist

通常,“循环加载”表示存在强耦合,如果处理不好,还可能导致递归加载,使得程序无法执行,因此应该避免出现。但是实际上,这是很难避免的,尤其是依赖关系复杂的大项目,很容易出现a依赖b,b依赖c,c又依赖a这样的情况。这意味着,模块加载机制必须考虑“循环加载”的情况。本文介绍JavaScript语言如何处理“循环加载”。目前,最常见的两种模块格式CommonJS和ES6,处理方法是不一样的,返回的结果也不一样。

阅读更多...

Github的清点对象算法

User

Ann

Marketing Specialist

每次提交代码的时候,会生成一个commit对象,里面有对应的当前“目录对象”的名字。“目录对象”保存了代码根目录所含有的子目录和文件信息。每一个子目录就是另一个“目录对象”,每一个文件则是“文件对象”,里面是具体的文件内容。

阅读更多...

持续集成是什么?

User

Ann

Marketing Specialist

互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称CI)。

阅读更多...

网页性能管理详解

User

Ann

Marketing Specialist

你遇到过性能很差的网页吗?这种网页响应非常缓慢,占用大量的CPU和内存,浏览起来常常有卡顿,页面的动画效果也不流畅。

阅读更多...

理解矩阵乘法

User

Ann

Marketing Specialist

大多数人在高中,或者大学低年级,都上过一门课《线性代数》。这门课其实是教矩阵的。

阅读更多...

Git 使用规范流程

User

Ann

Marketing Specialist

团队开发中,遵循一个合理、清晰的Git使用流程,是非常重要的。否则,每个人都提交一堆杂乱无章的commit,项目很快就会变得难以协调和维护。

阅读更多...

从零开始学前端

User

Ann

Marketing Specialist

这个课程是前端开发培训,首先要知道,什么是前端?网页是服务器发送的,但用户在浏览器里打开。因此,网站开发可以分成两部分:服务器端编程和浏览器端编程。传统上,针对浏览器的编程,称为前端开发。

阅读更多...

决策树入门

User

Ann

Marketing Specialist

决策树是机器学习(Machine Learning)的基本模型。本文通过r2d3.us的例子,让你轻松理解决策树。

阅读更多...

蒙特卡罗方法入门

User

Ann

Marketing Specialist

蒙特卡罗方法是一种计算方法。原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。它非常强大和灵活,又相当简单易懂,很容易实现。对于许多问题来说,它往往是最简单的计算方法,有时甚至是唯一可行的方法。

阅读更多...

Monad

User

Ann

Marketing Specialist

函数式编程有一个重要概念,叫做Monad。

阅读更多...

ES6的功能侦测库 ES-Checker

User

Ann

Marketing Specialist

ECMAScript 6(以下简称 ES6)总共新增了20多项重大的语言特性。各种浏览器和 Node.js 都积极支持,但还有不少功能没实现。

阅读更多...

代码覆盖率工具 Istanbul 入门教程

User

Ann

Marketing Specialist

测试的时候,我们常常关心,是否所有代码都测试到了。这个指标就叫做“代码覆盖率”(code coverage)。它有四个测量维度。

阅读更多...

如何使用 Node.js 开发命令行程序?

User

Ann

Marketing Specialist

一种编程语言是否易用,很大程度上,取决于开发命令行程序的能力。Node.js 作为目前最热门的开发工具之一,怎样使用它开发命令行程序,是 Web 开发者应该掌握的技能。

阅读更多...

浏览器加载 CommonJS 模块的原理与实现

User

Ann

Marketing Specialist

本文介绍浏览器加载 CommonJS 的原理,并且给出一种非常简单的实现。

阅读更多...

require源码解读

User

Ann

Marketing Specialist

2009年,Node.js 项目诞生,采用模块化结构。所有模块一律为 CommonJS 格式。时至今日,Node.js 的模块仓库 npmjs.com ,已经存放了15万个模块,可能是世界上最大的模块仓库,其中绝大部分都是 CommonJS 格式的模块。

阅读更多...

async 函数的含义和用法

User

Ann

Marketing Specialist

从最早的回调函数,到 Promise 对象,再到 Generator 函数,每次都有所改进,但又让人觉得不彻底。每种方案都有额外的复杂性,都需要理解抽象的底层运行机制。

阅读更多...

co函数库的含义和用法

User

Ann

Marketing Specialist

co函数库是著名程序员 TJ Holowaychuk 于2013年6月发布的一个小工具,用于 Generator 函数的自动执行。

阅读更多...

Thunk 函数的含义和用法

User

Ann

Marketing Specialist

Thunk函数早在上个世纪60年代就诞生了。 那时,编程语言刚刚起步,计算机学家还在研究,编译器怎么写比较好。一个争论的焦点是“求值策略”,即函数的参数到底应该何时求值。

阅读更多...

Generator 函数的含义与用法

User

Ann

Marketing Specialist

所谓“异步”,简单说就是一个任务分成两段,先执行第一段,然后转而执行其他任务,等做好了准备,再回过头执行第二段。比如,有一个任务是读取文件进行处理。

阅读更多...

fortune 命令简介

User

Ann

Marketing Specialist

美国中餐馆的最后一道菜,往往是小甜饼,叫做“幸运饼”(fortune cookie)。 里面有一张纸条,写着人生格言。 这种形式的格言,显然很受欢迎。早在1979年,就有人写了一个叫做 fortune 的小程序。在命令行下输入fortune,就会跳出一句。

阅读更多...

推荐课程

UI/UX项目班
UI项目实战,完成3个作品,企业UX流程

UI/UX项目班

Web开发入门班
面向零编程基础,独立做出多个网站,留学生兼职利器

Web开发入门班

商业项目培训生
通过企业的商业项目获得澳洲项目经验

商业项目培训生

Web开发全栈项目班
学习前端+后端,包含两个月实习,工作内推

Web开发全栈项目班

数据科学Kaggle实战班
金牌老师带队打Kaggle,拒绝理论,获得数据科学项目经验

数据科学Kaggle实战班

Python 开发入门班
适合零基础新手学习的编程语言

Python 开发入门班

数据工程全栈项目班
通过4个项目贯穿数据分析,数据工程,数据科学学习

数据工程全栈项目班

商业数据分析实战班
适合编程零基础学习,成为澳洲数据分析师

商业数据分析实战班

AWS项目实践班+认证考试
AWS Cloud老师结合实际项目讲解

AWS项目实践班+认证考试

DevOps项目实战班
三位来自Atlassian的Senior SRE授课,通过简单易懂项目

DevOps项目实战班

深度学习与计算机视觉
回国找工作还要做编程?人工智能高薪职业向你招手,本地经验,拿高薪offer

深度学习与计算机视觉

Business Analyst 6个月项目集训
针对澳洲和中国的产品经理方向学习,获取项目经验,拒绝空谈理论

Business Analyst 6个月项目集训