自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

陈靖

贵有恒,何必三更起五更眠。

  • 博客(38)
  • 收藏
  • 关注

原创 (一)性能优化策略

用例代码<head> <meta charset="utf-8"> <title>JS and CSS preload example</title> // 1. 浏览器可以预先加载style.css, main.js的资源 <link rel="preload" href="style.css" as="style"&gt...

2019-08-22 16:07:23 403

原创 浏览器解析原理

浏览器文档流 -》htmlDOM结构 -》css结合 -〉布局-》绘制页面第一步 HTML转换成DOM服务端返回‘text/html’ 格式的文档流,HTML字符串描述流页面的结构,浏览器会把HTML字符串解析成DOM的树形结构第二步 生成CSSOM结构css样式可以在web 页面里映射CSSDOM (css 对象模型),他和 DOM 结构比较像,不是增量模式。 而是组合模式。...

2019-08-22 15:39:11 294

原创 mpvue & 小程序 中的事件处理

事件绑定使用方法基本是一样的。但是在小程序中会编译成 bindtap捕获冒泡小程序: .wxml<view id="wrapper" bind:tap="bind1" capture-bind:tap="cbind1" style="background:red;color:white;text-align:center;padding:10px;"> ...

2019-08-21 17:00:37 1462

原创 Android 导读

Android历代版本发展android 4.1/4.2/4.3 实现了通话功能andriod 4.4 实现了原生计步功能,NFC,java虚拟机andriod 5.0 支持64位处理器andriod 6.0 实现了支付pay,指纹,type-c借口andriod 7.0 多视口Android的碎片化的问题源代码可以自由修改众多设备繁杂系统版本各异...

2018-06-21 14:44:11 197

原创 vuex 深入实践

Vuex 核心模块state 单一状态树,用一个对象就包含了全部的应用层级状态 mapState 当一个组件需要多个状态的时候, 将这些状态都声明为计算属性,会有些重复和冗余 对象展开符号 …mapState({}) import {mapState} from 'vuex'export default { // mapState要写到com...

2018-06-20 17:08:27 917

原创 python3.x 快速入门

Edit the &gt; 2018/6/15 11:26:53 1认识Python人生苦短,我用python - 优雅,明确,简单 是python设计哲学 - python的设计目标之一, 是让代码具备高度的可阅读性 - python 被广泛用于web程序,GUI开发,操作系统,科学计算,人工智能,游戏等领域;python的特点是一种动态语言被设计成可扩充的...

2018-06-19 16:46:32 4161

原创 angular核心知识 - [ 依赖注入模式 ]

* 知识点储备依赖注入 Dependency Injection 简称DI 侧重于描述手段 就是如何来实现控制反转控制反转 Inversion of Control 简称IOC 侧重于描述目的 即代码的控制权有代码的内部转到外部DI和IOC两者的关系 依赖注入(DI)和控制反转(IOC)基本是一个意思,因为说起来谁都离不开谁。 简单来说,a...

2018-05-30 14:44:41 367

原创 如何快速使用 Rxjs

ReactiveX 结合了 观察者模式、迭代器模式 和 使用集合的函数式编程,以满足以一种理想方式来管理事件序列所需要的一切。基本概念为什么要学习Rxjs呢? 因为它是Promise 的超集; Promise 有一个缺点,那便是一旦调用了resolve或者是reject之后便返回了. 不能再次使用resolve 或者是reject ; 想象一下, 若是从端口源源不断地发出消息;每次...

2018-05-30 14:40:11 4969

原创 TypeScript 2.7 - [ 1小时快速入门]

基本数据类型基本数据类型 - boolean,number,string,any,void基本结构类型 - Array,enumTS函数类型函数类型声明function add(x: number, y: number): number { return x + y;}var myAdd = function (x: number, y:...

2018-05-22 01:37:39 446

原创 sass 速查手册 - [ 实战篇]

安装click sass installsass命令使用//cmd 输出文件sass sass/style.scss:css/style.css//cmd 文件监听sass --watch sass:css//cmd 代码紧凑格式sass --watch sass:css --style compact//cmd 代码压缩格式sass --watch sa...

2018-05-15 17:48:20 319

转载 Yahoo 34条军规

1.尽量减少HTTP请求数80%的终端用户响应时间都花在了前端上,其中大部分时间都在下载页面上的各种组件:图片,样式表,脚本,Flash等等。减少组件数必然能够减少页面提交的HTTP请求数。这是让页面更快的关键。减少页面组件数的一种方式是简化页面设计。合并文件是通过把所有脚本放在一个文件中的方式来减少请求数的,当然,也可以合并所有的CSS。CSS Sprites是减少图片请求数量的首选...

2018-05-03 18:11:38 632

原创 3. 区块链共识机制

上篇提到“区块链到底是怎么运行的”一文中,提到了“打包 Transaction”和“广播交易”这两个概念,因为概述的原因,当时只带着你走了一遍过程。其实,以上谈到的两个内容正是区块链最核心的技术内容之一:共识机制。区块链发展至今,已经形成了各种不同类型的共识机制,在今天的文章中,我们就展开聊一聊区块链共识机制到底是什么,以及区块链的共识过程到底是怎样的。分布式系统的经典问题: 拜占庭将军问...

2018-05-03 15:01:25 521

原创 3. 架构设计的目的

首先我们思考一个问题”为什么要做架构设计?”架构设计的误区关于架构设计的目的,常见的误区有:1. 因为架构很重要,所以要做架构设计2. 不是每个系统都要做架构设计吗3. 公司流程要求系统开发过程中必须有架构设计4. 为了高性能、高可用、可扩展,所以要做架构设计架构设计的真正目的那架构设计的真正目的究竟是什么?上一篇分享的架构设计的历史背景,可以看...

2018-05-03 11:09:54 3408

原创 前端里的持续集成

什么是持续集成,什么是统一代码仓库,前端工程化,自动化构建持续集成持续集成需求持续集成式通过平台串联各个开发环节,实现和沉淀工作自动化的方法;线上代码和代码仓库不同步,影响迭代和团队协作;静态资源发布依赖人工,浪费开发人力;缺少自动化测试, 产品质量得不到保障;文件简单修改上线,需要技术介入持续集成解决统一代码厂库通过分支管理合并主干svn / ...

2018-05-02 16:30:35 2771

原创 What is X-Tag ?

X-Tag的核心githubX-Tag是什么?X-Tag最初是由Mozilla开发的,现在由微软的开发者支持,它是一个开源的JavaScript库,它封装了W3C标准Web组件家族的api,为组件开发提供了一个紧凑的、功能丰富的接口。虽然X-Tag可以很容易地利用所有的Web组件API(自定义元素、影子DOM、模板和HTML导入),但是它只需要定制的元素API支持来操作。在没有本地定制元素...

2018-05-02 13:26:48 1409

原创 2. 区块链到底是怎么运行的

这一篇文章我将以比特币区块链为例来进行讲解,理由有两个:由于区块链发展到目前阶段,各个技术方向都有长足的发展,介绍最简单、最容易理解的比特币区块链;由于大部分区块链都是以比特币区块链为基础进行扩充的,所以了解比特币区块链有助于其他项目区块链的后续学习。引出中心化记账的问题 *首先,我们借鉴了一个区块链描述中的经典情景来模拟中心化记账。 假设有一个有百户居民的村子,其中有一位德高...

2018-05-02 11:24:44 701

原创 2. 架构设计的历史背景 & 语言发展

理解了架构的有关概念和定义之后,今天,我会给你讲讲架构设计的历史背景。我认为,如果想要深入理解一个事物的本质,最好的方式就是去追寻这个事物出现的历史背景和推动因素。我们先来简单梳理一下软件开发进化的历史,探索一下软件架构出现的历史背景。机器语言(1940 年之前)最早的软件开发使用的是“机器语言”,直接使用二进制码 0 和 1 来表示机器可以识别的指令和数据。例如,在 8086 机器上...

2018-05-02 10:22:16 443

原创 1. 架构到底是指什么? & 容易混淆的概念

架构”这个词常见,但如果深究一下“架构”到底指什么,大部分人也许并不一定能够准确地回答。例如: 架构和框架是什么关系?有什么区别? Linux 有架构,MySQL 有架构,JVM 也有架构,使用 Java 开发、MySQL 存储、跑在 Linux 上的业务系统也有架构,应该关注哪个架构呢? 微信有架构,微信的登录系统也有架构,微信的支付系统也有架构,当我们谈微信...

2018-04-29 13:34:30 8798 1

原创 1-到底什么才是区块链?

很高兴在我的区块链专栏里和你相识,作为专栏的第一篇文章,我先来和你聊聊“区块链是什么”,以及它的发展过程。自中本聪第一次发布了比特币,至今已经有 9 个年头了,那么算起来区块链也应该有 9 年的历史了吧?其实不是,“区块链”这个概念恰恰是这些年才有的,如果非要追溯,可能在 2014 年左右,才真正有了“区块链”的概念。区块链和区块链行业首先,什么是区块链行业呢?区块链是...

2018-04-29 13:32:23 183

原创 [ Grunt + Gulp + Rollup + Bower + Yeoman + Browerify + Parcel ] 构建工具浅析及使用场景

有些公司的老项目,会用到这些工程化开发; 我留下了github上的各种实例 *.conf文件都有注释; 基本上完整的; 如果在跟新了新特性.也可以在我这上面测试尝新;Parcel这个要比webpack入手容易, 学习曲线不会那么长 ;基本无需配置;看官网的就行了; 但 我觉得webpack 配置起来好玩;Browerify让本地的js 应用服务端的js; req...

2018-04-23 09:47:04 593

原创 Linux 下使用 samba 共享服务

linux 下的授权机制第一用户: 文件的所有者; 第二用户: 该文件的所有者下的其他用户,相当于win下的另一用户 第三用户: 代表其他用户 r : 可读 w: 可写,可修改,可删除 x : 可执行的 - :没有该权限实战 pdbedit -a user1 # 添加user1账号,并定义其密码 打开IE浏览器输入file://IP/my...

2018-04-22 19:33:21 510

原创 webpack 常用使用技巧

Loader Usage三种方法//方法1require("./loader!./dir/file.txt");require("jade!./template.jade");require("!style!css!less!bootstrap/less/bootstrap.less");//方法2//在webpack.config.js 文件配置{ mo...

2018-04-18 14:29:42 272

原创 ssh 免密登陆linux远程服务器;

免密远程登陆免密登陆的原理 就像是git 我们本地和git服务器上的密匙匹配.就可以免密登陆配置免密登陆的步骤生成密钥对 ssh-keygen -t rsa -C “名字” -f “名字_rsa” -t 是一个选项参数; rsa 是一种加密算法; -C -f 输出的文件 其中的名字可以随便写; 可以不一样; 但自己要知道; 上传配置公匙 (相当与锁)...

2018-04-17 16:07:16 319

原创 如何阅读node源代码.

要学会读node 源码; 首先要让node 运行起来 git clone https://github.com/nodejs/node.git cd node ./configure &amp;&amp; make make install make test源文件分三类纯JavaScript 写的核心模块 带NativeBinding的JavaScr...

2018-04-15 05:12:33 5094

原创 数据推送之 - WebSocket -暂未更新

WebSocket

2018-04-09 22:31:33 154

原创 数据推送之 SSE(Server-Send Event)

服务器推送数据的新方式//index.jsvar source;function init(){ source=new EventSource("http://localhost:8080/Comet/data.php"); source.onopen=function(){ console.log("连接已建立",this.readyState);...

2018-04-09 22:27:27 2213

原创 数据推送之 - Comet

Comet 是一种长连接的技术;创建事例首先我们建立一个简单的项目,然后放到本地的Apache服务器下启动; //data.php&lt;?phpheader("Content-type:appliacetion/json;charset=utf-8");$res=array('success'=&gt;"ok","text"=&gt;"我是测试的文本");echo ...

2018-04-09 22:03:28 157

原创 爬虫系统 & Robots 协议介绍

项目地址 爬虫:是一种自动获取网页内容的程序.是收索引擎的重要组成部分,因此搜索引擎优化很大程度上是针对爬虫而做出的优化; robots.txt:是一个文本文件,robots.txt是一个协议,不是一个命令. robots.txt是爬虫查看的第一个文件. robots.txt文件告诉爬虫在服务器上的什么文件按是可以陪查看的,搜索机器人就会安装该文件中的内容来确定访问的范围.配置爬虫系统和开...

2018-04-09 20:52:59 609

原创 Node部署 - [反向代理 + 负载均衡 + 线上部署 + PM2 + 缓存策略] - 看我的就够了

准备工作方向代理 负载均衡 nginx 负载均衡的实现 HTTP Uptream模块 其他负载均衡的方法缓存策略实战首先安装nginxcentos 可以用 yum神器 mac 环境使用 Homebrew神器 来安装 brow 来源 brew search nginx brew install nginx b...

2018-04-09 14:08:29 3463

原创 koa2 - 项目构建 - [router路由,swig模板,转换, 资源管理 ]

koa1与koa2的区别: koa1 是 Generator 友好型, koa2 是 Async/Await 友好型;准备工作koa2 项目是比较轻量级的; 会有很多库引入,比较繁杂; - 新建项目及项目初始化 - 安装koa2 依赖 npm install koa –save ; 我是koa@2.5.0的版本; node@8.9.0的版本;新建/ap...

2018-04-07 19:17:35 729

原创 Express-CLI + mysql (小实战)帮你打通前端后端链条的第一步

项目初始化https://blog.csdn.net/weixin_37625953/article/details/79839077 在开发之前请,快速阅读完这篇博文; Express-cli 是基于jade文件模板的,用腻了;这里呢我推荐使用swig 的 html文件模板;所以替换掉了 jade 文件的模板; npm install swig –save swig简单用法可以移步...

2018-04-07 17:01:30 370

原创 Express-cli搭建 & 项目结构分析

Express cli 项目构建全局安装 npm install express -g进入项目目录 npm init -y 初始化在命令行中输入 express 命令,自动生成项目目录 npm install 安装项目依赖 启动 npm run start &gt; localhost:3000即可进入项目脚手架目录结构分析views/*.jade 文件的简单...

2018-04-07 09:53:49 4944

原创 Javascript & QA 工程师 - 理论篇

Javascript &amp; QA 工程师 - 理论篇

2018-03-25 17:49:41 183

原创 Javascript & QA 工程师 -实战篇

karma(大型集成化开发.) npm install karma –save-dev (集成化测试环境 集成浏览器 &amp; 断言库) npm install -g karma-cli karma init 上下键选择 选择断言库, 建议选择jasmine 这个断言库 能做什么,首先是一个js 就要有一个浏览器,和一个断言库 所以是大型集成化环境 初始化步骤: ...

2018-03-25 17:47:53 347

原创 JavaScript Function Programming - 函数式编程

编程思路的概念[补充]函数式编程思维范畴论基本理论基本概念纯函数函数的柯里化函数的组合Point Free声明式与命令式代码惰性求值,惰性函数函数式编程常用的核心概念高阶函数尾调用优化闭包容器 \ Functor错误处理 \ Either \ APIOMonad当下函数式编程最热的库RxJScycleJSlodashJ...

2018-03-19 17:19:19 650

原创 JavaScript - Array - [持续更新中...]

目录目录Array.prototypeArray.prototypeindexOf lastIndexOf every forEachmap ilterreducereduceRight

2018-03-19 17:00:06 119

原创 JavaScript - object - [持续更新中...]

#目录bind / call / apply (点拨)object (ES5+)this (面试全解)JSON (高阶)bind / call / apply (点拨) bind()方法创建一个新的函数, 当被调用时,将其this关键字设置为提供的值,在调用新函数时,在任何提供之前提供一个给定的参数序列。 我的理解: 允许你改变当前function...

2018-03-19 16:20:50 167

原创 Linux 命令 [持续更新....]

Linux 基本命令ls 查看文件目录dir 查看文件目录ls -l 查看文件详情ls -a 查看隐藏文件 ==.== 当前目录; ==..== 上一级目录cd 切换目录mkdir xxx 创建xxx目录cp &lt;目标文件&gt; [期望文件路径]/&lt;重命名文件名&gt; eg:cp oldfile C/newfile 复制文件cd ../.. 退回2级目录cp...

2018-01-16 23:08:45 139

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除