自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xhsdnn的专栏

这个人很懒,但是很帅 0.0

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

原创 VSCode 的 Remote-SSH 免密登陆

使用 vscode 的 remote - ssh 插件远程服务器,可以用来远程开发,本文主要说明如何使用 remote - ssh 的免密登陆方法。

2022-10-27 14:52:28 2902 1

原创 基于vuepress搭建一个静态站点

零.写在前面话不多说,具体介绍可以看官网。如果你想搭建一个自己的静态网站,无论是博客还是文档或者其他相关的,都可以使用vuepress,至于为什么不是Hexo、Docute或者GitBook,可以都了解一下,总有一款适合你。本文使用vuepress版本为1.x。一.快速体验1.创建相关文件及文件夹# 创建项目文件夹mkdir vuepress-proj# 进入文件夹cd v...

2019-05-21 23:33:31 2735 1

原创 canvas性能优化——离屏渲染

零、写在前面最近在做一些canvas以及WebGL之类的动画,突然发现做粒子动画的时候在数量过多的时候很卡,性能特别低,所以了解了一下性能优化的一些方法,在这里记录一下,也希望得到跟多优化方法的分享以及错误的指正。这是示例代码以及展示效果,另外可能根据不同设备的本身性能差异效果可能跟下面展示的数据不完全一样,但是大同小异。一、正常动画实践为了使用户达到更好的体验,做动画的时候都知道...

2018-08-14 22:06:28 20344 3

原创 Egg.js小记

写在前面有关Egg.js(以下简称:egg)的基本介绍这里就不再赘述了,官网上写的很清楚,下面直接对egg的使用及原理进行叙述。一、约定首先,egg实际上是继承于koa的,egg在koa的基础上制定了很多约定和规范,扩展性也很高。但是有的地方必须遵循这些约定和规范,比如目录结构: 二、内置对象既然是基于koa那肯定支持koa的内置对象,包括:Application, Co...

2018-07-14 15:49:34 15704 6

原创 神奇的console

写在前面启动vue工程的时候,无意之间发现了控制台的输出,随即产生了兴趣,并且发现console还有很多好玩的东西。 1.console.logconsole.log相比于其他console方法使用频率应该高得多,但是可能不知道console.log也可以像C语言或者JAVA一样,可以使用格式控制输出。 比如,我可以这样写:console.log("my name is...

2018-07-06 09:21:20 332

原创 inquirer.js —— 一个用户与命令行交互的工具

前言:      首先,通过npm init 创建package.json的时候就有大量与用户的交互(当然也可以通过参数来忽略输入);而现在大多数工程都是通过脚手架来创建的,使用脚手架的时候最明显的就是与命令行的交互,如果想自己做一个脚手架或者在默写时候要

2018-05-26 17:45:18 42621 10

原创 webpack4——SplitChunksPlugin使用指南

写在前面      前面写了一篇有关webpack4的不完全升级指南以及在webpack3.x迁移的时候遇到的问题,有兴许可以看一下。0. 参数介绍先对参数有一个大概的认识,虽然撸了很多遍官方的更新文档,但是还是去参看了一下新的wbepack源码,下面是各种参数及含义:chunks: 表示显示块的范围,有三个可选值:...

2018-03-06 15:04:42 31255

原创 webpack4升级指南以及从webpack3.x迁移

    几天前webpack发布了新版本v4.0.0,其中做了很多改动,包括0配置以及移除了CommonsChunkPlugin等。由此而来的还有之前webpack3.x的项目如何迁移到新的webpack版本,本文就一个新的vue-cli创建的基于webpack的项目进行迁移。 题外话:不要看0配置是很有噱头,基本是不能满足大部分用户啊的需求,不过加...

2018-03-05 16:35:47 34541

原创 CSS Modules 基本用法

写在前面     原本很早之前就想写这个文章,但是因为种种原因写了一半,一直放在也草稿箱里面。现在正好是大年三十的前一天,闲来无事刚好有时间把这个补全一下。      CSS Modules顾名思义就是CSS模块化的意思,模块化和面向对象的思想之前一直无法很好的作用的css上,导致了样式的覆盖,从而影响了本身的效...

2018-02-14 18:36:43 7136 1

原创 Swift学习笔记 ——(二)

前言    上一篇是Swift的一些简单语法,这篇也继续写基本的语法,正所谓,“磨刀不误砍材工”,有兴趣的可以看一下上一篇文章:Swift学习笔记——(一)。     这里主要写一下在Swift中如何定义类和对类的一些操作,另外还有观察属性、可选性以及枚举类型进行了简单的整理。类和对象首先,声明一个类:class MyClass { var className = "h

2018-01-28 15:27:58 365

原创 Swift学习笔记 ——(一)

前言    作为一个前端开发者,经常与javaacript(以下简称:js)打交道。最近想了解一下ios开发,前两天看了一下objective-c(以下简称:oc),相对于js来说还是有很多不同的,但是语言还是很多相通的地方,加上之前了解一些java,理解起来不是很困难。     在网上看了很多对oc和swift的评价,褒贬不一,心里想着,如果是ios开发的话,这两种肯定都要学,所以这两天对

2018-01-21 20:22:05 357

原创 webpack性能优化 —— CommonsChunkPlugin

webpack有很多种优化方式,这里先就CommonsChunkPlugin这个插件说一下;看到CommonsChunkPlugin这个名字,大概明白这个插件是跟公共模块有关系的。没错,这个插件就是用来提取出代码中公共的部分,并且将他们打包到一个单独的文件里面,这样就避免了重复打包。当然CommonsChunkPlugin不仅仅是提取公共部分这么简单......

2017-09-10 15:21:56 2626

原创 flex布局基础

flex布局相对传统布局来说要方便很多,尤其一些布局用传统布局实现起来很麻烦,而用flex就方便很多,但是使用flex布局之后一些float之类的样式就会失效。 以下demo代码都在这里。使用flex布局首先要有一个容器,将容器样式设置为:display: flex;这个容器就叫“flex容器”,里面的子元素叫“flex项目”,之后就可以在这个容器上和项目上使用flex布局。这里借用mozil

2017-03-10 15:17:19 447

原创 webpack(beta)——待更新

之前写过一篇有关gulp的,正式使用前需要的环境一样,这里就不多提了,有兴趣可以去看一下我的这篇文章。一.安装先初始化,创建一个package.json文件npm init 一路下一步就好了,最后一步ok确定。接着安装webpack,命令如下:npm install -g webpacknpm install --save-dev webpack 只要没有error就算安装成功,warn

2017-02-22 09:24:05 675

原创 angular2 (v2.0)

在实际开发中可能需要不止一个模块,我们可以引入angular提供的模块,当然也可以自定义模块。一.无论是angular提供的还是自定义的模块都要在头部用imports导入//例import { AppComponent } from './app.component';二.在根模块会有一个@NgModule的装饰器修饰的类,结构大概如下:@NgModule({ imports:

2017-01-03 10:27:57 997 4

原创 angular2(v 1.0)

step1: 先安装node,去官网下载,不多提了。step2:创建项目根文件夹并创建如下目录: 其中,node_modules可以先不创建,是由后续命令生成的;systemjs.config.js和tsconfig.json是angular2的配置文件;package.json是安装的依赖包。各文件内容为:/** * systemjs.config.js */(function

2016-12-06 14:21:23 1143

原创 Gulp初体验

让一个gulp菜鸟来讲述一下gulp安装和简单的使用过程。 注:本人windows系统,开始的时候着实头痛了一番,但是mac安装流程差异不大。一、安装gulp1.安装node 因为gulp是基于node实现的,所以要先安装node,没有安装的可以先安装一下node,到官网就可以下载安装,很简单。在命令行或者终端执行下面命令就可以知道node是否安装成功,如果成功会显示node的版本号n

2016-08-21 00:19:55 591

原创 JavaScript之闭包

一、闭包的定义 函数对象可以通过作用域链相互关联起来,函数体内部的变量都可以保存在函数作用域内,这种特性在计算机科学文献中称为“闭包”。——《JavaScript权威指南》二、为什么使用闭包 首先让我们来看一下全局变量与局部变量的区别: 全局变量:可以反复使用,且共享使用;但是可能随时在任意位置被篡改(全局污染)。 局部变量:不可反复使用;但方法调用完毕自动释放。 所以我

2016-07-18 12:45:48 331

原创 CSS3动画-3D旋转

学了C3之后,简单做了一个3D旋转的小Demo.个人亲猜测兼容Chrome、Firefox、Opera、Safari,没有考虑IE。 如果下面代码有问题,可以在我的github查看源代码。 查看页面效果可以点击浏览页面效果。/*代码如下:*/<!doctype html><html> <head> <title>CCS3Animation——3DRotate

2016-05-07 21:42:53 2379

原创 JavaScript之内置对象、字符串API

JavaScript内置对象 ES标准已经规定好,由浏览器厂商已经实现的对象,开发人员直接使用,不必关心具体实现。内置对象共有11个: String、Number、Boolean、Array、Data、RegExp、Math、Error、Function、Object、Global. 注: 1.String、Number、Boolean属于包装类型; 2.Global即指

2016-04-19 21:45:13 508

原创 JavaScript之数组API、栈和队列、冒泡排序

API:已经实现的方法,我们开发人员可以直接调用,不需要知道源代码。将数组转化为字符串//1.var str = arr.toString(); 返回数组中的元素用逗号分隔。 var arr = ["s","t","r"];var str = arr.toString();console.log(str);//s,t,r//2.var str = arr.join("/*连

2016-04-14 22:28:58 503

原创 JavaScript之数组

一维数组 内存中的数组: 1.引用类型的对象 2.每个值相当于一个元素 3.每个都有一个下标 数组对象的个数: 1.数组是从0开始计数的,即arr[0]是arr数组中的第一个元素。 2.arr.length,永远等于最大一个下标+1 使用数组中的元素: 数组名[i];创建1.创建空数组 var 数组名 =[];//js中见到[]就是数

2016-04-12 19:51:55 262

原创 广告轮播

今天写了一个广告轮播的小例子点击这里github地址。

2016-04-09 22:20:46 272

原创 JavaScript之分之结构

分之结构中的隐式转换 条件默认都转为bool.作用: 判断某个值是否有效。一个条件,一件事(一种操作)操作简单: 利用短路,满足条件就做,不满足条件就什么都不做。条件&&(操作1,操作2,...)操作复杂: 用if结构一个条件,两件事(两种操作) 二选一执行。操作简单: 条件?操作1:操作2; /*例:*/ a>b?console.log("a大于b"):conso

2016-04-08 22:56:51 262

原创 JavaScript之函数

函数定义 内存中封装一项任务的步骤清单代码段的存储空间,再起一个名字。 函数其实是引用类型的对象。 函数名仅是引用函数对象的变量。 执行过程定义时 仅创建函数对象,封装步骤清单代码段的对象。 不读取函数内容。 调用前 1.在ECS中为本次调用压入新的EC. 2.创建AO,将引用保存在EC中。 3.预读所有局部变量保存在AO中。注:

2016-04-07 22:41:03 303

原创 JavaScript之数据类型转换——隐式转换与运算符

隐式转换无需程序员干预,js自动完成的类型转换。 隐式转换其实是一把双刃剑,如果利用好的话会减少很多代码量;但是在不需要的时候一定要记得进行强制转换,转成自己需要的类型,不然会出现许多莫名其妙的错误和操作。运算符算数运算隐式转换: 默认转数字再计算。 在+运算中,只要有一个字符串,就都转为字符串,在拼接。 console.log("123"+456);//"123456"

2016-04-06 22:08:39 849

原创 JavaScript之数据类型转换——强制转换

JavaScript是一种弱类型语言。特点: 1.声明变量时不需要提前指定数据类型。 2.同一个变量可先后保存不同的数据类型。 3.js会自动根据自身需要自动类型转换。var a=1;var b=true;var c="string";console.log(a+b);//2console.log(a+c);//"1string" 具体的转换方式会在运算符中逐一说明。

2016-04-05 22:05:54 849

原创 JavaScript之数据类型

原始类型 值直接保存在变量本地的数据类型。stringstring类型的数据一旦创建不可改变!只能整体替换。unicode存储每个字符 字母、数字、英文标点——1字节 汉字——2字节number 整数——4字节 浮点数——8字节舍入误差 计算机中也有计算不尽的小数var a=2;var b=1.6;console.log(a-b);//3.9999999999

2016-04-04 22:49:00 223

原创 JavaScript之变量与常量

前端JavaScript常量变量声明赋值

2016-04-03 20:30:10 444

转载 转 xcode和mac 快捷键

下面是笔者总结的一些快捷键,分享给大家了:Xcode中的快捷键1. 文件CMD + N: 新文件CMD + SHIFT + N: 新项目CMD + O: 打开CMD + S: 保存CMD + SHIFT + S: 另存为CMD + W: 关闭窗口CMD + SHIFT + W: 关闭文件2. 编辑CMD + [: 左缩进CMD +

2015-04-07 22:42:22 280

转载 转 xcode和mac 快捷键

下面是笔者总结的一些快捷键,分享给大家了:Xcode中的快捷键1. 文件CMD + N: 新文件CMD + SHIFT + N: 新项目CMD + O: 打开CMD + S: 保存CMD + SHIFT + S: 另存为CMD + W: 关闭窗口CMD + SHIFT + W: 关闭文件2. 编辑CMD + [: 左缩进CMD +

2015-04-07 22:39:50 268

转载 举例分析Linux动态库和静态库

转自:http://www.xxlinux.com/newxxlinux/development/gui/2012-01-05/499.html函数库分为静态库和动态库两种。创建Linux静态库和Linux动态库和使用它们在这里将以举例的形式详述一下。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,

2015-04-07 22:39:01 246

转载 android开发 - BroadcastReceiver 广播接收者

Broadcast Receiver用于接收并处理广播通知(broadcast announcements)。多数的广播是系统发起的,如地域变换、电量不足、来电来信等。程序也可以播放一个广播。程序可以有任意数量的 broadcast receivers来响应它觉得重要的通知。broadcast receiver可以通过多种方式通知用户:启动activity、使用Notifi

2015-04-07 22:35:58 337

转载 git &github

作者:戴嘉华转载请注明出处,保留原文链接和作者信息目录前言仓库(Repository)源仓库开发者仓库分支(Branch)永久性分支暂时性分支工作流(workflow)总结参考资料前言(本文假设各位已经对基本git的基本概念、操作有一定的理解,如无相关git知识,可以参考Pro Git这本书进行相关的学习和练习)很多项目开

2015-04-07 22:35:07 266

转载 Direct3D-窗口初始化

这里讲的是创建一个通用的Direct3D窗口。这里我先讲下用到的所有函数和结构Window WNDCLASSEX[cpp] view plaincopytypedef struct tagWNDCLASSEXA {      UINT        cbSize;      

2015-04-07 22:32:39 567

转载 JAVA事务的概念

一、什么是事务  事务是访问数据库的一个操作序列,数据库应用系统通过事务集来完成对数据库的存取。事务的正确执行使得数据库从一种状态转换成另一种状态。   事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)的缩写事务必须服从ISO/IEC所制定的

2015-04-07 22:26:38 314

转载 RHEL 5.4下部署LVS(DR)+keepalived实现高性能高可用负载均衡

一、简介LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。目前有三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR);十种调度算法(rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq)。Keepali

2015-04-07 22:24:10 489

转载 黑马程序员——IO(FileWriter,FileReader)

IO(Input Output)流Java用于操作流的对象都在IO包中。流按操作数据分为两种:字节流与字符流。流按流向分为:输入流,输出流。IO流常用基类字节流的抽象基类:InputStream,OutputStream。记忆方法:根据Input联想System.in.从键盘输入。也就是从键盘读数据,所以对应字符流的Reader。

2015-04-07 22:06:15 290

转载 Libevent源码分析-----evbuffer结构与基本操作

转载请注明出处:http://blog.csdn.net/luotuo44/article/details/39290721                        对于非阻塞IO的网络库来说,buffer几乎是必须的。Libevent在1.0版本之前就提供了buffer功能。现在来看一下Libevent的buffer。buffer相关结构体:

2015-04-07 22:05:07 293

转载 关于Metasploit开发环境的搭建

又开始看《Metasploit渗透测试魔鬼训练营》这本书了。看到Web应用程序渗透测试这一章,其中有一部分是关于自己编写Metasploit的Exploit和Payload。我也正准备依葫芦画瓢。事先没有搭建Metasploit的开发环境,虽然我有Ruby的环境用于学习Ruby语言的相关开发知识,但是Metasploit里面有一些自己带的模块,在编写Exploit和Payload是需要用到的。如果

2015-04-07 21:34:56 1090

空空如也

空空如也

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

TA关注的人

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