http cookie解释

2018-03-29
阅读 2 分钟
2.2k
浏览器和Webserver之间的关系,被设计为无状态的,这是一个很重要的设计,可以让客户端无需和服务器保持状态,节省宝贵的端口资源,从而可以为更多的客户链接服务。

笔记:解读express 4.x源码

2018-03-01
阅读 11 分钟
1.7k
此为裁剪过的笔记版本。 原文在此:[链接]原文在此: [链接] 感谢@YiQi ,@leijianning 带来的好文章。我稍作修改和合并,只是为了更加清晰一点点。 基于的版本 tags:4.4.2。 把express代码跑起来 从一个官方示例开始: {代码...} 代码运行后,访问localhost:3000显示Hello World。 逐行分析 首先第一行,典型的Node.js...

非常方便的node内置的调试方法

2018-02-13
阅读 1 分钟
2k
自从node6.3以来,node已经直接支持类似node-inpect的功能,只要对执行的js代码加入一个--inspect参数,即可使用chrome做代码调试。

design patterns - 从头讲解MVC模式

2018-01-10
阅读 6 分钟
1.3k
和一般文章不同,本文不依赖于任何现有的框架,也不试图陷入冗长的发展历史,而是完全从头开始,以一个尽可能小但是可以说明问题的案例,以此讲清楚MVC这个历史悠久、变型极多的技术理念。MVC是一种非常普及的,基础的设计套路,在不同的语言社区内都有着大量的应用。理解了MVC,学习接下来的MVVM、MVP等才能成为可能。

我学习设计模式的方法和体会

2017-12-14
阅读 3 分钟
2.5k
我在之前几周做tdd和重构的培训时,我会发现不管我讲什么,在讨论环节都会有人提到设计模式。曾经有人说,”每一个程序员的案头都会有一本设计模式的书“。程序员对模式的着迷是显而易见的。至于着迷的原因,我们也就不去深究了,因为我搞不懂。

设计模式:工厂三姐妹一网打尽

2017-12-13
阅读 4 分钟
2k
作为创建型设计模式,带有工厂名字的设计模式共有三个,分别是 Simple Factory Factory Method Abstract Factory 其中的 Simple Factory并不是GoF一书中的模式,但是它是最基础最常用的,并且也是循序渐进的了解另外两个工厂的必要基础,所有放在一起讲它们是比较科学的。 三者常常是容易搞混的,我就见过若干个搞混的案...

14行代码创建一个极简的单页路由

2017-11-14
阅读 2 分钟
3.3k
客户端路由,在url改变时可以切换不同页面到指定标签的位置。因此是单页应用的核心组件。为了理解它的运作机制,我这里创建了一个最小的路由组件,代码长度为14行。

比一根鸟毛还简单的区块链的科普

2017-09-19
阅读 2 分钟
2.1k
公元2800年,火星移民成功,一个叫做中本聪的人,在上面建立了一个国家,大家拥护他的治国理念,大家过的很快乐,很自由,但是百业待兴,很多规则需要重新制定。

最小的Swift App

2017-03-13
阅读 2 分钟
2.2k
如何通过通过纯粹的代码,而不依赖于Xcode的StoryBoard,来完成一个App? 首先做些操作性的工作,具体过程是这样的: 打开xcode 创建一个Single View App Xcode会进入主要编辑界面。此时,我们打开AppDelegate.swift文件然后覆盖源代码为如下: {代码...} 运行后发现手机(或者仿真器)满屏的蓝色背景就说明成功了。 一...

swift iOS small control: UIWebView

2017-03-08
阅读 1 分钟
1.3k
UIWebView用来在App内嵌入Web页面。如下代码装入Apple.com官方首页在App内。 {代码...} 关键代码在于: {代码...} 构建URL对象和URLRequest请求对象,然后使用WebView的方法loadRequest发起请求,即可加载页面在WebView内。

PageViewController

2017-03-08
阅读 4 分钟
2.4k
类PageViewController也是一个特殊的UIViewController,它可以管理多个页面,每个页面都是一个UIViewController,可程序控制或者用户手势来切换页面。

Swift iOS : UITabBarController

2017-03-08
阅读 3 分钟
2.4k
类UITabBarController是一个特殊的UIViewController,它可以包含多个UIViewController,并且在页面底部显示一个Tabbar作为UIViewController的切换显示开关。

Swift iOS: UITableView的使用

2017-02-28
阅读 24 分钟
5.4k
类UITableView表示一个列表视图,此视图可以显示列表,并且列表可以分为多个区间(section)。 显示列表 假设一个案例: 显示计算机语言清单(["java","swift","js"]和操作系统的清单 ["Windows","OS X","Linux"] 这个清单在一个UITableView上做分区显示,分为两个区间 那么代码如下: {代码...} 代码创建了三个类,其中...

Swift iOS : NavigationController

2017-02-27
阅读 4 分钟
2.4k
NavigationController可以通过属性包含多个ViewController、一个UINavigationBar、一个可选的UIToolbar。

swift app : 做点小事儿

2017-02-27
阅读 2 分钟
2.2k
基于之前提到的脚手架,我们再次创建一个swift app,这次做点小东西: 界面包括一个按钮和一个标签,标签初始值为0 当点击按钮时,标签的数字会被累加1 代码如下: {代码...} 编译运行后会看到界面上的按钮和标签,点击按钮标签的值加1,说明App满足我们的最初需求。 代码解释下: 这次设置为APPDelegate内的rootViewCon...

bochs调试教程

2017-02-14
阅读 2 分钟
6.4k
bochs可以调试os,这个功能不一般,所以在学习过程中做一个简单的记录。 涉及到的工具有: bochs 调试器和pc仿真器 nasm 汇编器,汇编源代码为机器码 dd 写入img文件 假设一个bootsect,它可以打印hello到显示器,我们以此为案例学习bochs调试。代码是这样的(1.asm): {代码...} 首先编译代码: {代码...} 然后写入映像...

JavaScript温故:制作一个backtotop按钮

2017-01-19
阅读 1 分钟
2.2k
backtotop按钮可以在内容滚动时,给用户一个返回顶部的方便。制作一个backtotop按钮的关键是告诉浏览器此元素相对于浏览器固定,而不随着内容的滚动而滚动。代码:

JavaScript 温故: 制作一个sidebar

2017-01-18
阅读 2 分钟
2k
sidebar是一种常用类型的导航组件,它可从页面旁侧弹出,覆盖在正常内容上。 假设你的正常内容为: {代码...} 现在我们可以在内容内加入sidebar。其内有链接到Home和About。并加入一个按钮,可以打开sidebar,代码如下: {代码...} 要点在于: 默认情况下,sidebar是一个div内置任何html,且width为0,因此不可见 当需要...

JavaScript新知:sessionStorage and localStorage

2017-01-16
阅读 2 分钟
2k
对象sessionStorage是一次会话内的存储,它主要用于在一次会话内的多个页面内共享数据。 如下案例使用了vue.js,你需要了解vue.js。此案例会有两个文件: {代码...} 文件a.html内容为: {代码...} 此文件的按钮点击一次,为span标签的值加一,并且设置新值到sessionStorage.count内。 文件b.html则负责显示当前的sessionS...

JavaScript新知:service workers

2017-01-16
阅读 2 分钟
2.2k
前端技术正在像桌面技术靠近,其中一项很重要的就是就是service workers,它让HTML App离线工作成为可能。本文会以一个简单的案例代码来说明这项技术。我使用的工具:

vue.js 异步组件

2017-01-15
阅读 4 分钟
13.6k
Vue.js允许将组件定义为一个工厂函数,动态地解析组件的定义。工厂函数接收一个resolve回调,成功获取组件定义时调用。也可以调用reject(reason)指示失败。

vue.js 创建自定义指令小抄

2016-12-21
阅读 2 分钟
3.2k
指令允许当它的值改变时对元素应用任何DOM操作。比如我们做一个指令v-hidden,当值改变时,更新元素的style值,切换它的可见性。可以这样:

vue.js 插件开发demo

2016-12-19
阅读 2 分钟
7k
插件可以让开发者提供的扩展看起来像是vue自己就有的。因为插件的功能会使用Vue全局对象或者实例来调用,或者被修改从而在Vue的钩子函数内起作用。比如用于http调用的插件vue-resource被插入到vue后,可以使用:

webpack 热加载你站住,我对你好奇很久了

2016-12-19
阅读 3 分钟
6.2k
使用webpack有一段时间了,其中的模块热加载加快了开发的速度。它无需刷新,只要修改了文件,客户端就立刻立刻做热加载。如何做到?当然理解他的最好的做法就是我们自己做做一遍。

vuejs 检视组件结构

2016-12-16
阅读 2 分钟
2.1k
我们可以使用vue-devtools很方便检验页面的组件结构,包括组件的列表,嵌套关系,以及每个组件的内部数据成员的值。为此,我们做一个简单的布局结构,界面如下:

vuejs - 检视vuex的时间旅行能力

2016-12-16
阅读 1 分钟
8.7k
现在来看下闻名已久的vuex时间旅行能力: 通过vuex的执行的操作会被记录下来 可以选择操作记录,返回回退到此操作时的状态 因为vuex,状态的时间旅行称为可能。举例说,比如我的一个状态值为0,做了四次加1,如果我选择回退到第二次操作,那么状态值会恢复到2。 这次使用的代码来自于: [链接] 。文件名为vuex.html,现在...

JSONP解析--可运行的代码

2016-12-12
阅读 1 分钟
2.1k
考虑到安全问题,一个域名的js只能发起对自己的域名的请求,否则就是跨站的,这是不被允许的。但是,标签script内加载的脚本是不受此限制的。有人因此hack出JSONP,利用这一个特点即可发起跨站的脚本请求,并传递跨站数据给客户端。本文对此技术验证。

vue-resource 配置小抄

2016-12-12
阅读 3 分钟
6.2k
我们以一个配置项目root为例。它是比较有用的,因为我们常常规划api在一个url根下面,就可以使用此配置项简化api访问url。比如我们设计的api形如:

vuejs api server开发小抄

2016-12-09
阅读 3 分钟
6.3k
使用vue提供的vue-cli工具建立脚手架后,我可以编写客户端router,component等代码,可以利用热加载等特性,却不必需要了解webpack等运行于后端的技术。

vue.js 计算属性内幕

2016-12-08
阅读 3 分钟
3.1k
然而,这是如何做到的?难道vuejs分析了rmb函数内的表达式吗。要知道这一点,我们得了解响应式属性的概念和技术。通过DefineProperty,可以创建一个看起来是普通数据,但是背后还有getter/setter函数的属性,像是这样: