杏树林

热爱分享的移动医疗团队

iOS 给模糊加点动画

苹果从iOS 7 开始大范围使用模糊效果。为什么要使用模糊,当然是为了提高体验效果。虽然模糊能带给人非常清新的视觉体验,不过也切忌在你的App中过度使用,因为过度使用或者使用不当都会分散用户的注意力或者惹恼用户。在iOS 8之前我们在App中实现模糊效果可能还有些麻烦,但是也可以通过Core Im...

2016-08-01 16:54:34

阅读数 620

评论数 0

Learning Swift 3.0 - 从精通到重新入门

前言 API命名简化 C式API替换 GCD api Core Graphics api 大写开头的enum变成小写 取消NS前缀 参数label表现一致 隐式解包可选ImplicitlyUnwrappedOptional 类方法 去掉了C风格的For循环 去掉了柯里化语法 去掉了 --语法 Sw...

2016-07-04 11:52:51

阅读数 7248

评论数 0

加快AS的Gradle Build速度

随着项目的代码以及依赖库的日益增多,构建的速度却是越来越慢,Android Studio2.0 之后提供了Instant Run貌似福利来了,但经过一段时间的使用发现不尽如人意,最大的吐槽点是首次编译的速度真是慢的让人抓狂,编译当前的项目就得5分钟左右。。。所以,我对Instant Run的目前选...

2016-07-04 11:34:57

阅读数 4338

评论数 1

JavaScript中的this

什么是this 那么问题来了 如何使this确定 bind Fat Arrow 鸣谢最近在学习ReactNative,免不了被坑在JS上,跟Java和Objective-C不同,JS方法里的this显得很另类,有点令人困惑。什么是this要说清this是什么,可以从Function.prototy...

2016-07-04 11:02:03

阅读数 680

评论数 0

Effective Objective-C 2.0 读书笔记

第 1 章 熟悉 Objective-C 第 2 章 对象消息运行时 第 3 章 接口和 API 设计 第 4 章 协议与分类 第 5 章 内存管理 循环引用 普通的两个变量互相引用 Block 循环引用 NSTimer 悬挂指针 持有释放不匹配 performselector CoreFound...

2016-06-06 12:27:32

阅读数 4910

评论数 0

关于文字集与编码

写Python2的人,很多人都见过下面这行ErrorTraceback (most recent call last): File "/Users/Jack/Documents/ApricotForestDoc/2_product_rnd/redspiderlily/mailfetc...

2016-06-06 12:00:44

阅读数 633

评论数 0

redux-async-connect

单页应用通常情况下都需要在进入某一个页面的时候去获取该页面的数据,当然 React 可以很轻松地完成,最简单的可以在 componentWillMount 里写获取数据的代码:class MyComponent extends React.Component { ... compo...

2016-05-09 15:00:24

阅读数 5539

评论数 5

Swift的协议默认实现

继承和组合的缺点 带默认实现的协议 小结继承和组合的缺点在开发工作中,继承总是用来在多个类之间共享代码。 设想一个场景,一个人类,可以说话和睡觉,而一个Worker,除了上述功能,还可以工作。 解决方案很简单,我们可以 Person 和 Worker 之间建立继承关系:class Person...

2016-05-09 11:52:07

阅读数 4176

评论数 0

OkHttp之Interceptors

简介OkHttp实现了强大的拦截器机制,它的强大之处在于你可以用它来实现请求监控、请求重写以及重试。以下为一个简单的拦截器实现:class LoggingInterceptor implements Interceptor { @Override public Response i...

2016-05-09 11:42:58

阅读数 2200

评论数 1

java instrument原理和Aattach API

上一次分享中有一个疑问,就是目标jvm进程和代理程序,也就是卧底程序是一起运行的.还记得吗? 通过使用如下命令:java -javaagent:jar 文件的位置 [= 传入 premain 的参数 ]这个势必会造成一个困惑,就是如果目标jvm进程已经先开始运行了,难不成卧底就监控不了了吗?这就好...

2016-05-09 11:41:12

阅读数 4192

评论数 0

mysql在互联网应用设计和开发中的注意事项

MySql是开源数据库,在互联网界非常受欢迎,有着极为广泛的应用。这是由MySql的特点和互联网公司的使用场景决定的。首先从MySql的特点上看,MySql简单易用,有着极高的稳定性,同时简单查询时性能极高;MySql的功能很完备,常用的功能几乎都有;开源,功能可自己定制,使用成本低廉;可以支持多...

2016-04-11 14:40:10

阅读数 3850

评论数 0

推荐系统的常用算法原理和实现

推荐系统的出现推荐系统的任务就是解决,当用户无法准确描述自己的需求时,搜索引擎的筛选效果不佳的问题。联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息能够展现在对他感兴趣的人群中,从而实现信息提供商与用户的双赢。推荐算法介绍基于人口统计学的推荐这是最为简单的一种推荐算法,它只是简...

2016-04-11 12:23:21

阅读数 12669

评论数 0

测试驱动开发(TDD)在海外组的实践总结

测试驱动开发(TDD, Test Driven Development)是什么?测试驱动开发是一套开发方法论, 有经验的开发人员都会对自己的代码编写测试, 而测试驱动试图将这一过程做到极致, “如果测试被证明是有价值的, 那么, 我们为什么不能更频繁的去做测试, 如果将测试时间提前有益于提高应用质...

2016-04-11 11:57:50

阅读数 1737

评论数 0

重新认识数据驱动

这两周干的最有意思的一件事,莫过于搞清楚数据录入时效性这个衡量指标了。先讲讲故事吧:故事起源于数据录入时效性的一个分析,可以看下面的图。以前我们认为通过所谓每天完成百分数这个数据可以实现对时效性的有效评估。说白了就是,当时的一个假设是,如果1天的当天数据完成100%,那么就意味着数据可以在一天内完...

2016-04-11 11:36:09

阅读数 532

评论数 0

将版本信息显示在App图标上

在测试App版本升级功能或者需要多版本切换的时候,可能需要经常去确定当前App的版本号,如果中途打断很有可能会忘记了当前的版本号,并且App内部如果没有显示版本号的功能,就只能从头来了。 如果能让App的版本信息直接显示到图标上,测试的时候是不是就会更加直观,更加效率,更加苏胡。 就像酱紫:怎...

2016-04-11 11:29:22

阅读数 760

评论数 0

RxJava之Schedulers详解

本来是想说说RxJava之转换器的,但是发现,如果不来讲讲Rx的Schedulers,好像总感觉少了点什么。因为RxJava让我们用的最爽的地方,莫过于这一块了。我们可以随意的进行线程切换,是那么的简洁优美,尤其是配合RxAndroid之后,我们可以随意的进行子线程和UI线程的切换。同时,我们也可...

2016-04-11 11:24:33

阅读数 2671

评论数 1

更聪明的搜索

人们已经越来越离不开搜索,搜索最大的目的其实就是让人在短时间内得到想要的东西,简单的说就是提升效率。 使用App也是在提升效率,淘宝、京东提升购物效率,微信、陌陌提升射交效率,猎聘、拉钩提升招聘效率… iOS中的Spotlight已经不新鲜了,个人使用习惯的不同可能让有些人不知道她的存在,在手...

2016-03-15 17:58:37

阅读数 568

评论数 0

redux源码详解

redux是基于flux单向数据流的一种实现,功能很强大,源码很精炼,可以扩展出各种中间件,so 酷。createStore.js这个文件其实很简单,首先我们来看一下它接受的参数。 function createStore(reducer, initialState){} 这里的reducer就是...

2016-03-15 17:57:08

阅读数 856

评论数 0

Pitfall in node crypto and base64 encoding

Base64 is a commonly used encoding for transmitting binary data in text format, although it is kind of standard encoding. But actually the implementa...

2016-02-29 11:55:24

阅读数 770

评论数 0

iOS Runloop

什么是Runloop在iOS开发中,NSObject对象的两个方法performSelector:withObject:,performSelector:withObject:afterDelay 问后者afterDelay参数传0与前者有何异同? 要回答这个问题,就不得不提起Runloop。...

2016-01-18 15:06:15

阅读数 442

评论数 0

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