JasonLee的专栏

一个写着几行代码的理工科文学青年。

排序:
默认
按更新时间
按访问量

WWDC18《What's new in LLVM》小记

TL;DR 上周末看的部分WWDC18的视频,不过当时没来得及做些记录。 我个人的历年习惯通常是先浏览下目录,再挑一部分感兴趣的先看——通常是《What’s new in Cocoa Touch》和《What’s new in LLVM》,后续的再根据主题和实际需要再进一步了解,比如关于如何提...

2018-06-19 08:49:40

阅读数:126

评论数:0

在使用CocoaPod的Xcode工程中断点没有调试信息的问题跟进

通常客户端产品至少都会有Debug和Release两种编译配置,在编译Release版本中会进行一些优化,以减少最终产品的体积。 比如,在Release版本中会对代码执行步骤进行优化(如O1、O2等),这会导致有些代码被优化省略掉,有时无法单步调试;另外就是会去掉符号信息,这会导致断点调试时没有...

2017-03-03 12:17:13

阅读数:2844

评论数:0

再踩Python的Shallow Copy

最近人工智能很火,Python也不可避免地跟着再火一把。 有天在微博上刚好看到这么一段话:@寒冬winter:我来谈两个新标准:写出一个动态规划(最大子段和)再谈算法,写出模拟退火、遗传和神经网三大算法之一的小demo再谈AI。这不过分吧?由于我自己也是比较注重基础的,所以挺赞同这句话的。虽然现...

2017-01-25 12:02:15

阅读数:1530

评论数:3

Weex入门与进阶指南

原文地址:https://yq.aliyun.com/articles/57554前言相比较于React Native的“Learn once, write anywhere”,Weex的口号是“Write once, run everywhere”。考虑到React Native比较任性的向下兼...

2016-07-08 18:22:25

阅读数:77294

评论数:8

记一次帮同事排查由命名引发的问题

今天同事在群里发了一个问题,问有没有人碰到类似如下的问题:-[UILabel stringByTrimmingCharactersInSet:]: unrecognized selector sent to instance 0x7ff08c865970一位同事第一反应是不是对象被释放了,出现了野...

2016-04-20 21:20:03

阅读数:4207

评论数:0

从NSTimer的失效性谈起(二):关于GCD Timer和libdispatch

一、GCD Timer的创建和安放虽然GCD Timer并不依赖于NSRunLoop,但是有没有可能在某种情况下,GCD Timer也失效了?就好比一开始我们也不知道NSTimer对应着一个runloop的某种mode。先来看看GCD Timer的使用方法:dispatch_source_t ti...

2016-03-15 20:34:15

阅读数:4590

评论数:5

从NSTimer的失效性谈起(一):关于NSTimer和NSRunLoop

一、NSTimer的失效性在iOS中要设置一个定时器的通常做法是调用如下API:+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti invocation:(NSInvocation *)invocation repeats:...

2016-03-15 20:33:07

阅读数:3114

评论数:0

iOS中线程Call Stack的捕获和解析(二)

上接iOS中线程Call Stack的捕获和解析(一)。1. 部分参考资料做这一块时也是查阅了很多链接和书籍,包括但不限于: 《OS X ABI Mach-O File Format Reference》 《Mach-O Programming Topics》 《程序员的自我修养》——这本几年前读...

2015-11-18 16:36:55

阅读数:7096

评论数:3

iOS中线程Call Stack的捕获和解析(一)

这里对上个月做的一个技术项目做部分技术小结,这篇文章描述的功能和我们在使用Xcode进行调试时点击暂停的效果类似。一、获取任意一个线程的Call Stack如果要获取当前线程的调用栈,可以直接使用现有API:[NSThread callStackSymbols]。但是并没有相关API支持获取任意线...

2015-11-18 16:35:39

阅读数:9311

评论数:1

Auto Layout和UILabel

前段时间千牛iOS版本也从iOS 6.0开始支持,所以可以正式引入Auto Layout来进行界面布局。 这里记录下在UILabel上应用Auto Layout进行布局的过程。一、业务场景 用三个UILabel展示一件商品的基本信息:标题,价格,销量; 标题排在最上面,左右两边至少留出20的边距...

2015-05-25 16:40:09

阅读数:6021

评论数:1

在iOS中读取通讯录中联系人电话号码时需要注意的版本区别

今天遇到一个问题,发现同一个联系人的电话号码有时候读取得到,有时候读取不到。后来发现在iOS 8上是正常工作的,但是在iOS 7.1上获取到的值为空(也可能是iOS 8之前的所有版本,没有全部验证过)。123456789101112ABAddressBookRef abRef = ABAddres...

2014-12-03 15:36:32

阅读数:5873

评论数:0

读《反欺骗的艺术》有感

上个月月底参加了CSDN的读书活动,选取了《反欺骗的艺术——世界传奇黑客的经历分享》一书。作者凯文米特尼克这个名称太吸引眼球了,而译者潘爱民老师同样是大名鼎鼎。阅读这本书的时候正值我厂IPO期间,刚好公司内部也在强调信息和数据安全的重要性,受这些因素的影响,我最近两个月也没有在外部博客上(主要是C...

2014-09-23 00:47:26

阅读数:5604

评论数:1

再谈multistage text input(中文输入法)下UITextView的内容长度限制

之前写过一篇《如何更好地限制一个UITextField的输入长度》,在文章最后得到的结论是可以直接使用UIKIT_EXTERN NSString *const UITextFieldTextDidChangeNotification;进行监听,截断超出maxLength的部分。所以后来我在处理UI...

2014-07-04 15:50:53

阅读数:13355

评论数:6

利用objc的runtime来定位次线程中unrecognized selector sent to instance的问题

昨天我们一个只有一行错误信息的问题:-[NSNull objectForKey:]: unrecognized selector sent to instance 0x537e068由于这个问题发生在次线程,所以没有太有用的堆栈信息,而是只有简单的SIGABRT信息:考虑到unrecognized...

2014-06-17 15:32:16

阅读数:8292

评论数:1

Core Data浅谈系列之十 : 关于数据模型中实体的属性

之前写了《Core Data浅谈系列汇总》,今天稍微回顾了下,做些补充。在这个系列的第一篇《基础结构》中(2013年1月份的文章,时间过得好快啊!),有简单带过Entity的Attribute:数据类型、布尔值统一用NSNumber来表示;字符串类型用NSString表示;时间类型用NSDate表...

2014-06-08 20:23:37

阅读数:8664

评论数:2

随手记Swift基础和Optional Type(问号?和感叹号!)

距离Apple推出Swift已经有几天了,网上也时不时出现“急招Swift程序员,要求有一天工作经验”的帖子。看到Swift,除了苹果放的另外一门语言的链接(http://swift-lang.org/),还可能联想到Taylor Swift,或者铃木雨燕。这几天网上关于Swift的话题和材料应该...

2014-06-06 15:07:48

阅读数:34918

评论数:2

随手记UIKit Dynamics

趁着今年WWDC的开展,我又回顾了下去年的一些内容,发现有些新特性博客上都没有记录,想想iOS 8都出来了,iOS 7的特性再不随手记录下都晚了 :)参考WWDC 2013的Session Videos《Getting Started with UIKit Dynamics》和《Advanced ...

2014-06-03 23:53:32

阅读数:3730

评论数:0

再谈iOS 7的手势滑动返回功能

之前随手写过一篇《使用UIScreenEdgePanGestureRecognizer实现swipe to pop效果》,挺粗糙的。现在使用默认模板创建的iOS App都支持手势返回功能,如果导航栏的返回按钮是自定义的那么则会失效,也可以参考这里手动设置无效。if ([self.navigatio...

2014-06-03 20:00:13

阅读数:82292

评论数:5

Inside ARC — to see the code inserted by the compiler

这里的主题是“Inside ARC”,顾名思义,主要是探讨ARC在我们看不见的地方为我们做了什么事情,以及怎么做的。出发点是对底层实现的兴趣,不了解这些也不妨碍写好代码,了解一点应该有益。

2014-05-23 11:12:42

阅读数:4698

评论数:2

使用Objective-C处理UBB标签

有这么个业务需求,抽象出来如下: 展示一条文案,比如“某某人做了某某事”,这里的“某某人”是一个用户的昵称;用户可以修改昵称,修改过后再看之前的文案,“某某人”这个昵称需要跟着变化;文案数据从服务端获取; 根据上述需求,讨论确定了服务端下发的“某某人”采用[UserId]uid[/...

2014-05-23 10:06:29

阅读数:3293

评论数:0

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