¤¤¤
Why are you trying so hard to fit in

when you were born to stand out

xuzhe's blog
Dose LG on Macbook Pro with Retina Display really that bad?

Dose LG on Macbook Pro with Retina Display really that bad?

I and my company had bought & exchanged about 11 rMBPs, 9 of them have LG displays, 2 of them have...

既然给空指针发送消息不会崩溃,那么我们是否还有必要在发消息前判断一下指针是否为空?

既然给空指针发送消息不会崩溃,那么我们是否还有必要在发消息前判断一下指针是否为空?

在知乎上有人问到说,斯坦福课程里推荐不用判断 nil。但是有时候不判断 nil 又会导致程序崩溃,例如往 NSArray 里插入一个 nil 的情况。 以下是我的回答: 不管斯坦福怎么说,我的建议是如果这个指针可能为空,那么用之前都做一下判断。 为什么这么建议呢? 首先,最实际的理由是,给空指针发消息是非常慢的,而做一下 if 判断是否为空是非常快的操作。 这个速度上的差别是百倍这个单位的。 为什么呢?因为给 nil 发消息这件事情是在运行时判断的,而系统也并非简单的丢掉这个消息,系统还需要判断这个消息是否需要返回值,如果需要,还要判断返回值的类型:如果返回指针、数字、真伪等,则返回 0,如果返回的是 OS...

MacBook Pro 应当电池用完后充电,还是用到 20% 时充电?

MacBook Pro 应当电池用完后充电,还是用到 20% 时充电?

该用就用,想充就充。不要总是在同一个位置开始充电,甚至不需要每次都等到电池被充满了才拔掉电源。 因为锂电池更喜欢没有规律的充放电,总是让电池保持在充满或者完全空掉的状态,是让号称没有记忆现象的锂电池出现记忆现象的最好办法。 如果你把笔记本当台式机用,那么至少每个月做一次充放电(也不需要每次都完全放完)。 另外为何不去看看苹果的网站,人家有权威的官方建议,甚至还能给你的 iCal 加上一个充放电提醒的 event。 http://www.apple.com/batteries/notebooks.html

作为一个普通的网民如何能体验到“云计算”的相关应用?

作为一个普通的网民如何能体验到“云计算”的相关应用?

个人认为,作为普通网民,你完全没必要刻意去体验所谓的“云计算”。因为早在“云计算”这个概念被提出来之前,你所使用的大量网络服务其实就已经完全符合了“云计算”的定义了。 例如 Email 邮箱的 Web 界面,就相当符合现在的“云计算”的定义。以 Gmail 为例,你的所有邮件都存储在“云端”——Google 的服务器上,你在任何一台电脑上都能直接通过浏览器打开邮箱中的邮件。 再比如当年,在互联网尚且不发达的时候流行过一阵子的所谓“终端机”系统。通常由一堆只有极低 CPU 和 极少内存的“终端”,加上一台或若干台强劲的服务器组成。终端机主要负责接受鼠标键盘输入和显示内容,实际处理操作都是在服务器上完成的。后来随着 PC 成本的下降,这类终端机系统几乎消失了。但是,这种“终端机”系统却是相当符合今天的“云计算”定义的——至少也是块“本地云”。 还有很多例子,就不一一列举。现如今之所以到处都充斥着“云计算”的字样,其实绝大多数情况只不过是各家公司“与时俱进”的商业宣传手段而已。 所以,就像当初的 “Web2.0” 一样,“云计算”其实并不是什么新鲜的事物,这只不过是技术人员对计算机产业发展趋势进行总结和归纳后创造出来的一个名词而已——这里摘录一段 Wiki...

关于 iOS 界面交互设计,有哪些比较好的书籍?

关于 iOS 界面交互设计,有哪些比较好的书籍?

我认为,不要看书。 要入门,看苹果的官方 Guideline 足以。 要提高?看书不如看实际的 App。 多订阅国外知名 blog,遇到他们介绍的新 App 就下载下来用,把买书的钱拿去买 App,向牛人的作品学习,琢磨伟大的 App 的设计思路,才是正路。 看书?除非写书的那位作者真的有实际的、在 App Store 上被用户认可的作品,这本书也许还值得花时间一看。但你也必须知道设计潮流这件事情是不断在变化的,就算是大师写的书,也许等他的书写完,印刷出版,再被你拿到手里的时候,App Store 上的最新设计风格已经变了。 我甚至可以不客气地说,这年头跑来写所谓...