首页
学习
活动
专区
工具
TVP
发布

冰霜之地

专栏作者
79
文章
126659
阅读量
23
订阅数
深入浅出 FlatBuffers 之 Schema
FlatBuffers 是一个序列化开源库,实现了与 Protocol Buffers,Thrift,Apache Avro,SBE 和 Cap'n Proto 类似的序列化格式,主要由 Wouter van Oortmerssen 编写,并由 Google 开源。Oortmerssen 最初为 Android 游戏和注重性能的应用而开发了FlatBuffers。现在它具有C ++,C#,C,Go,Java,PHP,Python 和 JavaScript 的端口。
一缕殇流化隐半边冰霜
2018-08-30
3.4K0
四叉树上如何求希尔伯特曲线的邻居 ?
关于邻居的定义,相邻即为邻居,那么邻居分为2种,边相邻和点相邻。边相邻的有4个方向,上下左右。点相邻的也有4个方向,即4个顶点相邻的。
一缕殇流化隐半边冰霜
2018-08-30
9970
Google S2 中的 CellID 是如何生成的 ?
笔者在《高效的多维空间点索引算法 — Geohash 和 Google S2》文章中详细的分析了 Google S2 的算法实现思想。文章发出来以后,一部分读者对它的实现产生了好奇。本文算是对上篇文章的补充,将从代码实现的角度来看看 Google S2 的算法具体实现。建议先读完上篇文章里面的算法思想,再看本篇的代码实现会更好理解一些。
一缕殇流化隐半边冰霜
2018-08-30
1.6K0
神奇的德布鲁因序列
数学中存在这样一个序列,它充满魔力,在实际工程中也有一部分的应用。今天就打算分享一下这个序列,它在 Google S2 中是如何使用的以及它在图论中,其他领域中的应用。这个序列就是德布鲁因序列 De Bruijn。
一缕殇流化隐半边冰霜
2018-08-30
2K0
Google S2 中的四叉树求 LCA 最近公共祖先
首先需要回顾一下希尔伯特曲线的生成方式,具体代码见笔者上篇文章的分析,在这个分析中,有4个方向比较重要,接下来的分析需要,所以把这4个方向的图搬过来。
一缕殇流化隐半边冰霜
2018-08-30
8820
高效的多维空间点索引算法 — Geohash 和 Google S2
每天我们晚上加班回家,可能都会用到滴滴或者共享单车。打开 app 会看到如下的界面:
一缕殇流化隐半边冰霜
2018-08-30
3.2K0
ReactiveCocoa 中 RACCommand 底层实现分析
在ReactiveCocoa 过程中,除去RACSignal和RACSubject这些信号类以外,有些时候我们可能还需要封装一些固定的操作集合。这些操作集合都是固定的,每次只要一触发就会执行事先定义好的一个过程。在iOS开发过程中,按钮的点击事件就可能有这种需求。那么RACCommand就可以实现这种需求。
一缕殇流化隐半边冰霜
2018-08-30
1K0
ReactiveCocoa 中 RACSignal 所有变换操作底层实现分析(下)
高阶操作大部分的操作是针对高阶信号的,也就是说信号里面发送的值还是一个信号或者是一个高阶信号。可以类比数组,这里就是多维数组,数组里面还是套的数组。
一缕殇流化隐半边冰霜
2018-08-30
9360
ReactiveCocoa 中 RACSignal 所有变换操作底层实现分析(中)
过滤操作也属于一种变换,根据过滤条件,过滤出符合条件的值。变换出来的新的信号是原信号的一个子集。
一缕殇流化隐半边冰霜
2018-08-30
1.1K0
Objc 对象的今生今世
在面向对象编程中,我们每天都在创建对象,用对象描述着整个世界,然而对象是如何从孕育到销毁的呢?
一缕殇流化隐半边冰霜
2018-08-30
6340
神经病院 Objective-C Runtime 出院第三天——如何正确使用 Runtime
到了今天终于要"出院"了,要总结一下住院几天的收获,谈谈Runtime到底能为我们开发带来些什么好处。当然它也是把双刃剑,使用不当的话,也会成为开发路上的一个大坑。
一缕殇流化隐半边冰霜
2018-08-30
1.3K0
深入研究Block捕获外部变量和__block实现原理
Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS和Mac系统各个API中,并被大家广泛使用。一句话来形容Blocks,带有自动变量(局部变量)的匿名函数。
一缕殇流化隐半边冰霜
2018-08-30
1.1K0
关于IB_DESIGNABLE / IBInspectable的那些需要注意的事
IB_DESIGNABLE / IBInspectable 这两个关键字是在WWDC 2014年"What's New in Interface Builder"这个Session里面,用Swift讲过一个例子。也是随着Xcode 6 新加入的关键字。
一缕殇流化隐半边冰霜
2018-08-30
1.5K0
WWDC2016 Session笔记 - Xcode 8 Auto Layout新特性
Incrementally Adopting Auto Layout是什么意思呢?在我们IB里面布局我们的View的时候,我们并不需要一次性就添加好所有的constraints。我们可以一步步的增加constraints,简化我们的步骤,而且能让我们的设置起来更加灵活。
一缕殇流化隐半边冰霜
2018-08-30
6640
WWDC2016 Session笔记 - iOS 10  推送Notification新特性
在今年6月14号苹果WWDC开发者大会上,苹果带来了新的iOS系统——iOS 10。苹果为iOS 10带来了十大项更新。苹果高级副总裁Craig Federighi称此次对iOS的更新是“苹果史上最大的iOS更新”。
一缕殇流化隐半边冰霜
2018-08-30
8410
Weex 事件传递的那些事儿
在前两篇文章里面分别谈了Weex如何在Native端初始化的和Weex是如何高效的渲染Native的原生UI的。Native这边还缺一块,那就是Native产生的一些事件,是怎么传回给JS的。这篇文章就详细分析这一部分。
一缕殇流化隐半边冰霜
2018-08-29
2.5K0
手把手教你给一个iOS app配置多个环境变量
谈到多环境,相信现在大多公司都至少有2-3个app环境了,比如Test环境,UAT(User Acceptance Test)用户验收测试环境,Release环境等等。当需要开发打多个包的时候,一般常见做法就是直接代码里面修改环境变量,改完之后Archive一下就打包了。当然这种做法很正确,只不过不是很优雅很高效。如果搭建好了Jenkins(搭建教程),我们利用它来优雅的打包。如果利用Jenkins来打包,我们就需要来给app来配置一下多个环境变量了。之后Jenkins分别再不同环境下自动集成即可。接下来,我们来谈谈常见的2种做法。
一缕殇流化隐半边冰霜
2018-08-29
8420
深入研究Block用weakSelf、strongSelf、@weakify、@strongify解决循环引用
在上篇中,仔细分析了一下Block的实现原理以及__block捕获外部变量的原理。然而实际使用Block过程中,还是会遇到一些问题,比如Retain Circle的问题。
一缕殇流化隐半边冰霜
2018-08-29
1.3K0
iOS 开发者的 Weex 伪最佳实践指北
这篇文章是笔者近期关于Weex在iOS端的一些研究和实践心得,和大家一起分享分享,也算是对学习成果的总结。文章里面提到的做法也许不是最佳实践,也许里面的方法称不算是一份标准的指南手册,所以标题就只好叫“伪最佳实践指北”了。有更好的方法欢迎大家一起留言讨论,一起学习。
一缕殇流化隐半边冰霜
2018-08-29
9650
神经病院Objective-C Runtime住院第二天—消息发送与转发
现在越来越多的app都使用了JSPatch实现app热修复,而JSPatch 能做到通过 JS 调用和改写 OC 方法最根本的原因是 Objective-C 是动态语言,OC 上所有方法的调用/类的生成都通过 Objective-C Runtime 在运行时进行,我们可以通过类名/方法名反射得到相应的类和方法,也可以替换某个类的方法为新的实现,理论上你可以在运行时通过类名/方法名调用到任何 OC 方法,替换任何类的实现以及新增任意类。今天就来详细解析一下OC中runtime最为吸引人的地方。
一缕殇流化隐半边冰霜
2018-08-29
6880
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档