KevinLu的博客

怕什么真理无穷,进一寸有一寸的欢喜


  • Home

  • Archives

Swift语言学习笔记一(可选类型? 和隐式可选类型!)

Posted on 2016-03-21 |

可选类型、隐式可选类型

在Swift 中可选类型是一个枚举类型(Enum),里面有None和非None两种类型,nil对应于Optional.None;非nil对应于Optional.Some(Wrapped),通过Some(Wrapped) 包装原始值,这也是为什么在使用Optional的时候要拆包(从Enum中的Some取出原始值)的原因,同理在PlayGround中会把Optional值显示为类似{Some”Hello World”},以下是Enum Optional的定义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public enum Optional<Wrapped> : _Reflectable, NilLiteralConvertible {
case None
case Some(Wrapped)
/// Construct a `nil` instance.
public init()
/// Construct a non-`nil` instance that stores `some`.
public init(_ some: Wrapped)
/// If `self == nil`, returns `nil`. Otherwise, returns `f(self!)`.
@warn_unused_result
@rethrows public func map<U>(@noescape f: (Wrapped) throws -> U) rethrows -> U?
/// Returns `nil` if `self` is nil, `f(self!)` otherwise.
@warn_unused_result
@rethrows public func flatMap<U>(@noescape f: (Wrapped) throws -> U?) rethrows -> U?
/// Create an instance initialized with `nil`.
public init(nilLiteral: ())
}

Read more »

儿歌吧隐私政策

Posted on 2016-02-26 |

隐私政策

  • 1.关于非个人化信息
  • 2.关于个人资料
  • 3.关于信息安全
  • 4.关于用户权利
  • 5.关于用户信息限制利用原则
  • 6.关于个人资料披露之原则

儿歌吧及旗下app(后续简称本网站) 隐私权保护声明系本网站对于保护用户个人隐私之承诺。鉴于互联网的特性,本网站在运营过程中,将无可避免地与用户发生直接或间接的互动关系,故特此说明本网站对用户个人信息所采取的收集、使用和保护政策,请您务必仔细阅读。

关于非个人化信息

第一条 本站将通过用户的IP地址来收集非个人化的信息,例如浏览器和操作系统的种类、提供接入服务的ISP名称等,以优化在您计算机屏幕上显示的页面;并通过收集上述信息,进行访客流量统计。这些无关个人身份的信息能帮助本站辨别内容喜好的地区性分布,并保证本站进行推广活动的有效性。此外,本站也可能将这些信息披露给相关广告客户,使其知晓点击其广告的人数。

Read more »

儿歌吧主页

Posted on 2016-02-26 |

1.简介
2.儿歌吧特色

简介


儿歌吧,收集上百个好听的儿歌、童谣。满足于0-5岁宝宝的儿歌需求,通过儿歌吧的视频和动画内容帮助您的宝宝快乐健康的成长,促进宝宝的智力开发。

儿歌吧,是初为父母的您的育儿好帮手。每当宝宝不起床,调皮捣蛋不吃饭,哭闹没辙的时候,给宝宝播放一段唱唱跳跳的动画视频,让宝宝立马消停。

Read more »

开发者证书个人理解

Posted on 2015-11-12 |

在苹果开发中避免不了的要和开发者账号打交道,在XCode7.0之前要在真机进行测试,打包到应用商店,消息推送等都会用到开发者证书。一开始接触苹果严密的证书申请流程难免都会觉得晦涩难懂,经过多次证书制作后才能慢慢明白其中每个步骤的意义。总结如下几个关键步骤得理解,方便以后复习。

1.创建certificate文件

需要先在电脑的keychain中请求带有公钥和私钥对的密钥。同时生成CRS文件
其中email address 和common name 可以随意填写,因为是保存到磁盘而不是通过邮件发送

2.安装根证书

在开发者中心下载,文件名为:AppleWWDRCA.cer

Read more »

OC计算字节长度

Posted on 2015-11-12 |

对于文本框的输入字数限制

1
2
3
4
5
6
7
8
9
10
11
- (NSUInteger) unicodeLengthOfString: (NSString *) text {
NSUInteger asciiLength = 0;

for (NSUInteger i = 0; i < text.length; i++) {

unichar uc = [text characterAtIndex: i];

asciiLength += isascii(uc) ? 1 : 2;
}
return asciiLength;
}

OpenSSl简介-记录笔记

Posted on 2015-11-12 | In OpenSSL |

OpenSSl 简介

公司一个项目要进行交易数据传输,因为这个项目银行那边也是刚刚开始启动,所有的支持只有一个传输字段的说明文档,好吧,总的有人做事不是嘛,于是接口开发正式展开,第一步的难点就是加密解密,我选择使用OpenSSL.
OpenSSL初接触的人恐怕最难的在于先理解各种概念

公钥/私钥/签名/验证签名/加密/解密/非对称加密

  我们一般的加密是用一个密码加密文件,然后解密也用同样的密码.这很好理解,这个是对称加密.而有些加密时,加密用的一个密码,而解密用另外一组密码,这个叫非对称加密,意思就是加密解密的密码不一样.初次接触的人恐怕无论如何都理解不了.其实这是数学上的一个素数积求因子的原理的应用,如果你一定要搞懂,百度有大把大把的资料可以看,其结果就是用这一组密钥中的一个来加密数据,可以用另一个解开.是的没错,公钥和私钥都可以用来加密数据,相反用另一个解开,公钥加密数据,然后私钥解密的情况被称为加密解密,私钥加密数据,公钥解密一般被称为签名和验证签名.

Read more »

搭建hexo遇到过得坑

Posted on 2015-11-11 | In Hexo |
  • 1.简述安装的主要步骤
    • 1.1安装homebrew
    • 1.2安装node.js
    • 1.3安装hexo
  • 2.踏过的坑点
  • 3.解析到自定义域名

1.简述安装的主要步骤

1.安装homebrew

1
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2.安装node.js

1
$ brew install node

3.安装hexo

1
$ npm install -g hexo

2.踏过的坑点

1
2
$ hexo g && hexo d #始终失败
error: ERROR Deployer not found: git

查了网上资料需要先安装deploy插件执行以下命令:

Read more »

Hello World

Posted on 2015-08-01 | In Hexo |

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server
Read more »
12

Kevin Lu

blog.yinuolu.com

18 posts
3 categories
21 tags
RSS
© 2020 Kevin Lu
Powered by Hexo
|
Theme — NexT.Muse v5.1.4