自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 在Mac上搭建React Native开发环境

概述前面我们介绍过在window环境下开发React Native项目,今天说说怎么在mac上搭建一个RN的开发环境。配置mac开发环境基本环境安装1.先安装Homebrew:用于安装NodeJS和其他工具。 注:Homebrew详解,对这个比较了解的略过,我也是用mac没多久,这里给小白普...

2016-12-28 21:45:26 18479 2

转载 前端开发的工具化与工程化

概述近年来,随着浏览器性能的提升与移动互联网浪潮的汹涌而来,Web前端开发进入了高歌猛进,日新月异的时代。这是最好的时代,我们永远在前行,这也是最坏的时代,无数的前端开发框架、技术体系争妍斗艳,让开发者们陷入困惑,乃至于无所适从。Web前端开发可以追溯于1991年蒂姆·伯纳斯-李公开提及HTML描...

2016-12-28 10:01:57 6476 0

原创 iOS 滚动视图的复用问题解决方案

LazyScroll是什么LazyScrollView 继承自ScrollView,目标是解决异构(与TableView的同构对比)滚动视图的复用回收问题。它可以支持跨View层的复用,用易用方式来生成一个高性能的滚动视图。为什么要用LazyScrollView我们在做首页的时候,往往展示的东西会...

2016-12-27 20:28:36 11006 0

原创 Docker与容器

Docker介绍 1. Docker 主要解决什么问题   Docker 对外宣称的是Build、Ship 和Run,Docker 要解决的核心问题就是快速地干这三件事情。它通过将运行环境和应用程序打包到一起,来解决部署的环境依赖问题,真正做到跨平台的分发和使用。而这一点和DevOps不谋而合...

2016-12-26 23:01:30 8194 2

原创 微信小程序实例-摇一摇抽奖

概述前面我们讲了如何开始微信小程序搭建和一些组件的介绍。微信小组件和微信小程序入门微信小程序目录为了更好的理解小程序和小程序开发,我们首先来看一下项目的目录。 首先看下根目录下的app.json的文件,可以看到在”pages”的数组里,里面配置了每个界面,且包含了每个界面文件的目录 我们接...

2016-12-26 17:53:48 20922 5

原创 微信小程序基本组件概述

为了更好的理解微信小程序,本文90%文字描述来源于官网的介绍。官网原链接https://mp.weixin.qq.com/debug/wxadoc/dev/component/?t=20161222 本文是基本组件介绍的第一篇,主要介绍微信小程序给我们提供的小组件有哪些,并举一个简单的例子,第二...

2016-12-24 20:37:22 15562 3

原创 iOS使用自签名证书实现HTTPS请求

概述在16年的WWDC中,Apple已表示将从2017年1月1日起,所有新提交的App必须强制性应用HTTPS协议来进行网络请求。 默认情况下非HTTPS的网络访问是禁止的并且不能再通过简单粗暴的向Info.plist中添加NSAllowsArbitraryLoads设置绕过ATS(App Tr...

2016-12-23 17:50:14 6975 1

原创 一起聊聊什么是P问题、NP问题、NPC问题

概念P问题:如果一个问题可以找到一个能在多项式的时间里解决它的算法,那么这个问题就属于P问题。通常NOI和NOIP不属于P类问题,我们常见到的一些信息奥赛的题目都是P问题。 NP问题:可以在多项式的时间里猜出一个解的问题。NP问题不是非P类问题。NP问题是指可以在多项式的时间里验证一个解的问题。...

2016-12-22 18:13:39 10401 2

原创 微信小程序开发入门篇

本文档将带你一步步创建完成一个微信小程序,并可以在手机上体验该小程序的实际效果。开发准备工作获取微信小程序的 AppID登录 https://mp.weixin.qq.com ,就可以在网站的“设置”-“开发者设置”中,查看到微信小程序的 AppID 了,注意不可直接使用服务号或订阅号的 AppI...

2016-12-19 13:31:33 45896 7

原创 Support Annotation Library使用详解

概述Support Annotation Library是在Android Support Library19.1版本开始引入的一个全新的函数包,它包含了诸多有用的元注解。用来帮助开发者在编译期间发现可能存在的bug。Support Library本身也使用Annotations Library提...

2016-12-18 22:20:17 5937 1

原创 github pages + Hexo + 域名绑定搭建个人博客增强版

概述前面我们用github pages + Hexo 搭建了一个简单版的个人博客系统,但是里面的内容单调,很多功能不够完善,所以我们需要对yelle 的主题进行优化和完善。基本搭建请访问:http://blog.csdn.net/xiangzhihong8/article/details/5335...

2016-12-18 14:21:01 9474 3

原创 不可错过的Node.js框架

前言Node.js是由Ryan Dahl于2009年创建的。它是一个开源的跨平台运行时环境,用于开发服务器端和网络应用程序,它是基于Google Chrome V8 JavaScript引擎构建的。Node.js使用事件驱动,非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的...

2016-12-17 20:35:28 5059 0

原创 如何编写入门级redis客户端

概述Redis是开源的、基于内存的数据结构存储系统,可用作数据库、缓存以及消息代理方面。Redis支持许多种数据结构,并内置了丰富的诸如冗余、脚本、事务、持久化等功能,深受业界喜爱,被各种业务系统广泛使用。为了方便使用,Redis官网推荐了针对各种编程语言的多种客户端,支持java、c#、pyth...

2016-12-16 21:31:14 3709 0

原创 机器学习简介及常用算法

概念什么是机器学习? 机器学习是英文名称Machine Learning(简称ML)的直译。机器学习涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是...

2016-12-15 10:02:09 17088 2

原创 Android自动打包工具aapt详解

概念在Android.mk中有LOCAL_AAPT_FLAGS配置项,在gradle中也有aaptOptions,那么aapt到底是干什么的呢? aapt即Android Asset Packaging Tool(Android 打包工具),在SDK的build-tools目录下。我们可以查 ...

2016-12-13 11:13:55 10702 0

原创 区块链的现状与未来

在上一篇文章中我们聊到了区块链技术的一些基本概念以及运行的原理性的东西,以及在金融行业的应用,那我们接下来要分析下区块链除了在互联网、金融领域之外,还有没有其他的用途。区块链与法律这个标题貌似有点大,那我说一个例子:从世界最大众筹项目DAO的技术漏洞引起的以太币被盗风险说起,谈到作为面向未来的法律...

2016-12-10 23:38:29 9991 0

原创 React Native实现一个自定义模块

概述在 前期介绍React Native 项目结构的时候,我们讲解过React的项目组成,其中说过 node_modules 文件夹,这是一个存放 node 模块的地方。我们知道React是用npm来管理项目的。提到npm,一般指两层含义:一是 Node.js 开放式模块登记和管理系统,另一种是 ...

2016-12-10 22:08:07 5695 0

原创 Android逆向工程

在Root前提下,我们可以使用Hooker方式绑定so库,通过逆向方式篡改数值,从而达到所谓破解目的。然而,目前无论是软件加固方式,或是数据处理能力后台化,还是客户端数据真实性验证,都有了一定积累和发展,让此“懒技术”不再是破解修改的万金油。再者,阅读汇编指令,函数指针替换,压栈出栈等技术需要一定...

2016-12-05 23:39:19 5162 0

原创 Restful API的设计与实践

概述Restful是一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。什么是RestfulRestful这个名称应该很多人都不陌生,但是我发现不少人对Restful存在或多...

2016-12-31 18:24:05 6665 1

原创 node.js基本工作原理及流程

概述Node.js是什么Node 是一个服务器端 JavaScript 解释器,用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。 Node.js 是一个可以让 JavaScript ...

2016-12-31 12:07:54 14658 5

原创 Github+Jekyll搭建个人博文网站

概述不久之前我们聊过使用 github pages + Hexo 搭建个人博客和搭建个人博客完善篇两篇文章。教大家搭建一个属于自己的博客网站。 除了使用 Hexo外,我们今天教大家使用Github+Jekyll搭建个人博客系统。创建博客首先,你得有个Github的账号。如果没有Github账号,...

2016-12-30 22:15:04 9792 1

转载 Ecmascript语法之Symbol

首先感谢阮一峰老师的翻译!Symbol概述作为属性名的Symbol实例:消除魔术字符串属性名的遍历Symbol.for(),Symbol.keyFor()实例:模块的 Singleton 模式内置的Symbol值概述ES5的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的...

2016-12-29 21:57:41 1325 0

原创 区块链的java实现

本文90%来着于翻译,原文地址:http://java-lang-programming.com/en/articles/29概述MerkleTree被广泛的应用在比特币技术中,本文旨在通过代码实现一个简单的MerkleTree,并计算出Merkle tree的 TreeRoot。 Merkle...

2016-12-29 18:16:28 60973 2

原创 gitlab操作指南

概述GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员...

2016-12-29 10:37:29 11572 6

原创 微信小程序发布

一、操作步骤(1)打开【微信开发者工具】->新建一个默认项目->点击【项目】->点击【上传】(2)使用微信小程序公众平台管理员扫描二维码,在手机微信上点击【确认上传】(3)输入【版本号】与【项目备注】后点击【上传】按钮,如下图(4)等待上传,上传完成后上传页面会自动消失(5)登录...

2016-12-26 18:10:25 3183 2

原创 android Handler机制之ThreadLocal详解

概述我们在谈Handler机制的时候,其实也就是谈Handler、Message、Looper、MessageQueue之间的关系,对于其工作原理我们不做详解(Handler机制详解)。 Message:Handler发送、接收和处理的消息对象 Looper:每个线程只能拥有一个Looper.它的...

2016-12-26 11:08:59 7517 0

原创 将Gradle项目发布到Jcenter和Maven Central

Jcenter和Maven Central为了方便我们理解Android studio是如何帮助我们获取开源库的,我们需要理清几个概念。Apache Maven是Apache开发的一个工具,提供了用于贡献library的文件服务器。总的来说,只有两个标准的Android library文件服务器:...

2016-12-25 15:14:38 7671 0

原创 Angular2入坑指南

序对后端开发来说,前端是神秘的,眼花缭乱的技术,繁多的框架,出名的不出名的好几百种,看是“繁荣”,其实显得杂乱无章,但是我们在做开发的时候,技术选型还是主流的那么几个:浅析angular,react,vue.js Node.js。node官网:https://nodejs.org/ nodejs...

2016-12-25 12:18:26 16529 7

原创 FLAnimatedImage -ios gif图片加载框架介绍

简介FLAnimatedImage 是 Flipboard 团队开发的在它们 App 中渲染 GIF 图片使用的库。 后来 Flipboard 将 FLAnimatedImage 开源出来供大家使用。本文章主要是介绍FLAnimatedImage框架的GIF动画加载和播放流程,旨在说明流程和主要细...

2016-12-24 15:14:40 6459 0

原创 备忘录模式

概念备忘录模式:又叫做快照模式,属于行为模式的一种,指在不破坏封装性的前提下,获取到一个对象的内部状态,并在对象之外记录或保存这个状态。在有需要的时候可将该对象恢复到原先保存的状态。我们相当于把对象原始状备份保留,所以叫备忘录模式。 结构与组成首先看一下备忘录模式的UML图: 备忘录模式主要...

2016-12-24 12:51:41 2134 0

原创 android开发中使用到的一些设计者模式

单例模式 概念:确保一个类只有一个实例,并且自行实例化并向整个系统提供整个实例。public class Singleton { private static volatile Singleton instance = null; private Singleton(){...

2016-12-24 11:19:02 3418 0

原创 360加固apk并自动签名

我们知道Android加混淆之后,代码的安全性得到了提高,即使你hook,反编译得到的也是乱码的,对于阅读性造成了影响,为了增强代码的破解难度,我们通常退对apk进行加固,常见的有腾讯,360,爱加密等。今天说说用360怎么一键加固apk。 加固保为移动应用提供专业安全的保护,可防止应用被逆向分...

2016-12-23 11:29:56 5473 4

原创 数据结构之图

基本概念图(Graph):图(Graph)是一种比线性表和树更为复杂的数据结构。 图结构:是研究数据元素之间的多对多的关系。在这种结构中,任意两个元素之间可能存在关系。即结点之间的关系可以是任意的,图中任意元素之间都可能相关。 图G由两个集合V(顶点Vertex)和E(边Edge)组成,定义为...

2016-12-22 22:07:09 3811 0

原创 React Native自定义导航条

Navigator和NavigatorIOS在开发中,需要实现多个界面的切换,这时候就需要一个导航控制器来进行各种效果的切换。在React Native中RN为我们提供了两个组件:Navigator和NavigatorIOS。 关于Navigator的介绍请查看之前的介绍文章:http://bl...

2016-12-22 13:45:17 4480 0

原创 android混淆那些坑

ProGuard简介在最新的Android Studio 2.2.2版本创建的Android工程中,module中的build.gradle有如下一段配置。这里的minifyEnabled即用来控制在编译时是否需要启用Proguard,将minifyEnabled修改为true,即表示启用Prog...

2016-12-21 20:08:11 10399 0

原创 Hexo 简明教程

概述对于个人独立博客的搭建,或者一些产品网站的介绍我个人比较推崇直接用静态网站生成器来完成这个事情,对于,静态网页部署方便,浏览速度快。 以下为部分静态网站生成器简要列表:RubyJekyll (github 默认pages 引擎) Octopress (兼容jekyll)PythonHyde...

2016-12-18 14:31:41 1268 0

原创 责任链模式

概述概念:责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配责任。意图...

2016-12-17 21:38:54 1934 0

原创 React Native之ScrollView控件详解

概述ScrollView在Android和ios原生开发中都比较常见,是一个 滚动视图控件。在RN开发中,系统也给我们提供了这么一个控件。不过在RN开发中 ,使用ScrollView必须有一个确定的高度才能正常工作,因为它实际上所做的就是将一系列不确定高度的子组件装进一个确定高度的容器(通过滚动操...

2016-12-17 16:39:13 17619 0

原创 关于ListView中包含EditText数据复用引起异常的解决方案

概述前几天测试提了一个bug,在ListView中添加留言信息,导致错乱的问题。实际上就是ListView需要添加一个EditText,复用导致错乱的问题,这个问题以前也遇到过。诸如,ListView嵌套EditText、CheckBox等焦点问题都会出现复用的错乱,其根源就是ViewHolder...

2016-12-16 21:13:02 4444 0

原创 Markdown对应Yelee主题语法

概述这里说的是Yelee主题的语法和原生语法是有些区别的;更多的基础语法可以到Cmd Markdown上面去查看;但是我觉得都会各有不同吧 注意这里说的不是真正意义上的Markdown语法标题一般会出现在边栏变为导航使用 每增加一个#就会往下一层计算导航这里请注意了,语法是这样写的注意空格一般都是...

2016-12-16 11:12:42 1455 0

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