- 博客(31)
- 收藏
- 关注
原创 vue响应式原理
MVVM框架的定义MVVM框架的意义VUE是个MVVM框架VUE是如何实现MVVMvue核心是通过借助 Object.defineProperty 实现了观察者,使试图响应数据的变化。但并不是所有的数据改变都要重新渲染视图,所以vue还有个重要的部分是依赖搜集,依赖的意思是视图渲染所需要的数据。只有当这些数据改变时,vue才会触发重新渲染。vue的数据双向绑定的代码在 cor...
2018-05-06 09:32:58
395
原创 JavaScript 隐式原型 与 显式原型
// 对象的隐式原型指向创建这个对象的够着函数的显示原型 object.__proto__ -> object.Contructor.prototypefunction Person() { this.name = '人类';}Person.prototype = new Number(1);// Person.prototype = 1; // notice: 如果...
2018-03-18 10:02:50
638
原创 煽:新技术
IT技术日新月异,我们如何考虑是否要引入新技术到项目中?比如说18年是graphqldl的一年,然道我们要将restful换成它吗?每个技术都有它的应用场景。 选择技术的一个关键点是:新技术降低了我们项目的煽。煽是用来度量复杂度的单位。比如一个我们的一个系统的煽是100,引入graphql可以降低我们系统20%的复杂度,但新技术的引入本身就带来了复杂度,graphql本身就比较复杂,它和我们平时...
2018-03-14 22:49:23
255
原创 ssh笔记
ssh 可以在两台服务器间建立一条隧道。因为 elasticsearch 对服务器的配置要求挺高的,而我阿里云上的服务器只有1G内存, 所以服务一直跑不起来,壤中羞涩又买不起高配置的,所以想把 elasticsearch 服务部署在本地的笔记本上, 使用ssh做内网端口映射到公网。ssh 命令格式ssh [options] [user@]host [command]...
2018-02-16 20:00:37
373
原创 nginx connect() failed (113: No route to host) while connecting to upstream
Centos7中默认将原来的防火墙iptables升级为了firewalld 请尝试关闭防火墙systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动折腾一天。。...
2018-02-14 16:51:51
17472
5
原创 docker
安装使用提供的脚本安装$ curl -fsSL get.docker.com -o get-docker.sh$ sudo sh get-docker.sh使用阿里云镜像sudo cp -n /lib/systemd/system/docker.service /etc/systemd/system/docker.servicesudo sed -i "s|Exec...
2018-02-12 21:30:56
280
原创 持续集成工具 Jenkins
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。项目部署到服务器是件麻烦事,而且这麻烦事可能还很频繁。jenkins就是让项目部署变得简单,自动化。 安装jenkins推荐使用 docker 方式安装 jenkinsdocker run -p 8080:8080 -p...
2018-02-12 13:32:27
215
原创 centos 上手配置
环境还是一样的好,一旦习惯了就再也改不了SSH连接使用xshell面向学生的免费版就行了配置终端使用oh-my-zsh安装zshyum install zsh -ychsh -s zsh 安装oh-my-zsh 官网# 如果没按git,先安装gityum install git -ysh -c "$(curl -fsSL...
2018-02-12 10:18:29
212
原创 学习新技术
技术日新月异,不学习就会被淘汰,所以要不断学习,掌握一套符合自己的学习新技术的方法就显得尤为重要。以前我觉得不管是写博客、做笔记什么的都没什么用,因为你所写所记录的东西网上都可以搜的到,哪天你要是忘了再google下不就得了,那么这些博客笔记不就白浪费时间了吗? 别人记录的东西是他思维的产物,反应的是她学习的过程,每个人思考和学习的方式都有差别的。 我们记录的东西是符合自己思考方式...
2018-01-28 11:36:51
262
翻译 淘宝移动web自适应
document.documentElement.style.fontSize = document.documentElement.clientWidth/6.4 + "px";/* 6.4=设计稿宽除以100 */
2017-04-24 19:20:53
704
原创 js window.open
open() 方法用于打开一个新的浏览器窗口或查找一个已命名的窗口。//新窗口打开页面 ‘a.htm’ 如果该窗口已经存在,则显示到前台。如果不存在则新打开一个。
2017-04-24 16:47:29
298
原创 实现简易版js bind
bind()方法会创建一个新函数。当这个新函数被调用时,bind()的第一个参数将作为它运行时的 this, 之后的一序列参数将会在传递的实参前传入作为它的参数。bind() 函数会创建一个新函数(称为绑定函数),新函数与被调函数(绑定函数的目标函数)具有相同的函数体(在 ECMAScript 5 规范中内置的call属性)。当目标函数被调用时 this 值绑定到 bind() 的第一个参数,该参
2017-04-18 13:14:45
423
原创 前端
结构 行为 表现js一个文件, html一个文件, css一个文件 w3cschool 工具效率前端工具收集模块化 组件化 自动化 工程化工程化是一个项目开发指导思想,而模块化、组件化、工程化是他的实践方式。 组件是可以在多个项目件复用,具有独立性。模块是项目内的复用。 组件所需要的各种资源都维护在自己的目录下。 自动化 gulp grunt 实例vue单页应用开发规范[tguide]h
2016-12-26 12:49:52
746
原创 nodejs 项目目录结构设计
设计要实现一定项目结构,项目结构设计的最终目的是降低系统的复杂度,一般设计时,总是把一个系统,分成几个小系统,每个小系统独自完成一个功能,并且要控制各个子系统之间的访问权限所以项目开始时要通过约定来实现包权限,约定就是大家编写代码时自觉遵守的规则,自觉很重要。遵守各个子系统之间的访问权限
2016-12-13 11:51:08
11308
原创 使用gulp实现前端自动化
- js模块打包- sass编译- 雪碧图- css js 自动添加MD5后缀- css js 文件自动替换到html- css js html压缩- 文件变更后自动运行- 使用@@include() 加载公共html模块如: 头部 底部
2016-12-08 15:44:03
3260
原创 项目框架收集
消息队列 beanstalk和rabbitmq 知乎 https://www.zhihu.com/question/21062715/answer/59800055
2016-11-26 00:26:39
335
原创 数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)
第1章 引言随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来提高网站性能,横向扩展数据层已经成为架构研发人员首选的方式。水平切分数据库:可以降低单台机器的负载,同时最大限度的降低了宕机造成的损失;负载均衡策略:可以降低单台机器的访问负载,降低宕机
2016-11-23 12:34:02
701
原创 表驱动法 笔记
表驱动法是一种编程模式——从表里查询信息而不适用逻辑语句(if和case)把复杂的逻辑判断,简化成简单的查找表。使用表驱动法时应注意:表的键和值。键是复杂的逻辑判断的判断条件,而值是经过复杂逻辑判断后需要的值。把复杂的判断条件变成查找表的键就是表驱动法的核心。
2016-11-13 09:10:32
420
原创 高质量的子程序
什么是子程序? 子程序是为实现一个特定的目的而编写的一个可被调用的方法或过程目的在java中子程序是method,而在JavaScript中是函数。当我们要写一个子程序时,首先应考虑这个子程序要完成的目的,一个高质量的子程序应具有单一且明确的目的。名字高质量的子程序还需要有一个好名字,它要表达清楚子程序要做的所有事情 , 使用强烈的动词家宾语的形式,名字的长度不控制在9-15个字符为宜。如果子
2016-11-06 19:54:25
410
原创 nodejs文件流操作
/***fs.read()读文件时,读取一部分放在内存中fs.write() 先写入系统缓存区,满了就将系统缓存区数据写入文件。如果满了还继续写入的话,就将数据先存放在内存中,不会影响写入。(这时可以停止读取文件)*/var fs=require('fs');var os = fs.createWriteStream('b.pdf');//写入文件var is =
2016-10-03 20:27:21
707
原创 dagger2 + RxJava +Retrofit 学习笔记
RxJava异步操作库 观察者模式优点 简洁实现步骤:1创建观察者Observer(Subscriber)////observer会被转换成subscriber; 区别subscriberti提供更多方法,如:onStart() unsubscribe()Observer observer=new Observer() { @Override public
2016-01-25 20:51:04
956
转载 Android夜间模式最佳实践
由于Android的设置中并没有夜间模式的选项,对于喜欢睡前玩手机的用户,只能简单的调节手机屏幕亮度来改善体验。目前越来越多的应用开始把夜间模式加到自家应用中,没准不久google也会把这项功能添加到Android系统中吧。业内关于夜间模式的实现,有两种主流方案,各有其利弊,我较为推崇第三种方案:1、通过切换theme来实现夜间模式。2、通过资源id映射的方式来实现夜间模式。3
2016-01-05 11:14:09
573
原创 Android 搭建(Servlet)服务器端 实现用户登录
首先准备JavaEE版的Eclipse 和 tomcat 到官网上下载最新版的。哎 不为别的就喜欢最新的 。下载好后解压打开eclipse 。1 配置服务器 打开windows->preference -> server ->runtime Enviromts。 2 点击 add 选择Apache Tomcat 的版本 然后next 。 接着Browse 选择你刚才tomcat 的解压位置。
2015-10-01 22:33:51
3707
1
原创 安卓 apk反编译教程
千里之行,始于足下。发扬 开源精神,废话不多说,下面为大家带来详细教程。一,首先准备工具:我已经为大家收集了工具,上传在我的github上 下载地址:https://github.com/modulemax/apk-decompile-tools/ 另附一个我自己写的app作为实验对象。源码地址: https://github.com/modulemax
2015-09-14 14:40:23
873
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人