<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[MakeCodeClear的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/MakeCodeClear</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; MakeCodeClear]]></copyright><item><title><![CDATA[iOS并发编程（下） --- Dispatch Queue]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/21333135</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/21333135</guid><author>MakeCodeClear</author><pubDate>Sun, 16 Mar 2014 18:46:38 +0800</pubDate><description><![CDATA[Dispatch Queues
GCD（Grand Central Dispatch）dispatch queues是一个执行任务的强大工具。对于调用者，dispatch queues可以让你同步或者异步地执行任意的代码块。你可以使用dispatch
 queues来执行你之前用分离的线程执行的几乎所有的任务。dispatch queues相对于线程代码的优势是它们在执行任务时更加方便易用并且]]></description><category></category></item><item><title><![CDATA[关于文章的声明]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/21192669</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/21192669</guid><author>MakeCodeClear</author><pubDate>Thu, 13 Mar 2014 22:06:37 +0800</pubDate><description><![CDATA[关于iOS的blog都是基于https://developer.apple.com网站上的原文做的翻译，边学习边翻译，如果有读者对苹果官网感兴趣，可以给我留言，我可以自不量力的翻译以下。]]></description><category></category></item><item><title><![CDATA[iOS并发编程（上）-- NSOperation queue]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/20954819</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/20954819</guid><author>MakeCodeClear</author><pubDate>Mon, 10 Mar 2014 21:58:11 +0800</pubDate><description><![CDATA[并发是多件事情同时发生的一个概念。
在过去，在应用中引入并发就需要创建一个或者多个额外的线程。不幸的是，写线程代码是一个挑战。线程是低层次工具必须手动的管理。给定应用可选的线程数会基于当前系统负载和硬件动态的改变。实现一个正确的线程方案变得额外的困难，很难达到。并且，线程同步机制的使用会增加软件的复杂度和风险而且还不能保证提升性能。


iOS和OS X都提供了一个比传统基于线程更加异步的]]></description><category></category></item><item><title><![CDATA[iOS KVO]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/20295781</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/20295781</guid><author>MakeCodeClear</author><pubDate>Sun, 02 Mar 2014 17:05:22 +0800</pubDate><description><![CDATA[KVO是一种允许指定的对象在一些其他对象指定的属性改变时被通知的机制。
为了明白KVO，你首先需要明白KVC。


At a Glance
KVO是一种允许指定的对象在一些其他对象指定的属性改变时被通知的机制。它在你应用程序的模型和控制器交互时显得特别有用。一个控制器对象典型的观察模型的属性，视图对象通过控制器观察模型对象。并且，一个模型对象可能观察其他的模型对象或者观察它自己。]]></description><category></category></item><item><title><![CDATA[iOS Runtime]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/20295651</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/20295651</guid><author>MakeCodeClear</author><pubDate>Sun, 02 Mar 2014 17:03:43 +0800</pubDate><description><![CDATA[Objective-C 程序与runtime系统的交互有三个唯一的层次：通过Objective－C源代码的方式；通过NSObject类里面的方法；通过直接调用runtime函数。


Objective-C源代码
大部分情况，runtime系统自动工作并且隐藏在屏幕背后，编译器创建数据结构和函数调用（实现动态特性得语言）。数据结构捕获类或者category定义得信息和协议里面声明的东西；包]]></description><category></category></item><item><title><![CDATA[iOS内存管理--Core Foundation]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18953981</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18953981</guid><author>MakeCodeClear</author><pubDate>Thu, 06 Feb 2014 22:37:55 +0800</pubDate><description><![CDATA[Core Foundation使用引用计数，对象记录使用retain的拥有者的数量，如果对象没有拥有者，它就会被释放

Core Foundation 为对象的拥有和释放定义了以下的规则：
.如果你创建了对象（直接创建或者copy另外一个对象），你拥有这个对象

。如果你从某个地方获取一个对象，你不拥有它，如果你想阻止它被释放，你必须将你自己添加为一个owner（using CFReta]]></description><category></category></item><item><title><![CDATA[iOS内存管理--ARC]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18678437</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18678437</guid><author>MakeCodeClear</author><pubDate>Wed, 22 Jan 2014 23:42:17 +0800</pubDate><description><![CDATA[arc是一个编译特性用来提供自动管理Objective-c的内存。ARC的目的是把你从内存管理的泥潭中解放出来，更多的去关注你要做的事情。
Arc是在编译的时候插入代码来确信让对象能够按需要来存在。ARC同样是以引用计数为基础。你可以选择在以文件或者项目为单位不使用ARC。
但是建议尽量最好使用ARC，首先，编译器为你做内存管理往往比你自己要更优秀，其次，ARC导致的效率损失在UI面前基本可以]]></description><category></category></item><item><title><![CDATA[iOS内存管理]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18628973</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18628973</guid><author>MakeCodeClear</author><pubDate>Tue, 21 Jan 2014 23:07:18 +0800</pubDate><description><![CDATA[前提


(1). 以下是针对cocoa对象，不包括core foundation
(2). cocoa对象都是用引用计数来跟踪对象的内存使用情况的。
(3). 在子类里面父类先初始化和后释放的原则。自己想下为什么


栈空间和堆空间的区别。
我们说的内存管理都是基于堆空间的，因为函数内的栈空间是由编译器自己控制的。 

关于core foundation的内存管理，在下下一]]></description><category></category></item><item><title><![CDATA[如何写出好代码]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18572337</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/18572337</guid><author>MakeCodeClear</author><pubDate>Tue, 21 Jan 2014 00:31:34 +0800</pubDate><description><![CDATA[好的代码不仅是对的，而且是看起来显然是对的。
优雅，简洁，高效是程序员写代码的最高追求，也是干净代码的最高境界。如果自认为是个有追求的程序猿，请追求最美好的东西，代码美到极致那就是艺术，看到自己写的东西让别人赏心悦目那心情想必是极好的。
要知道什么是干净的代码，自己才能写得出来，模仿是创造的前提。多看看别人写的东西。各种开源的apache项目和库的代码，不一定要深入的研究（当然如果深入研究更好]]></description><category></category></item><item><title><![CDATA[音乐的随机播放]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/8214563</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/8214563</guid><author>MakeCodeClear</author><pubDate>Thu, 22 Nov 2012 23:23:25 +0800</pubDate><description><![CDATA[刚刚测试了一下android系统下三个音乐播放器关于随机播放音乐的实现方式：QQ音乐，小米的音乐播放器，以及百度音乐。
把播放模式设定为随机播放，播放存在手机的上的音乐列表。经过测试，大概分析出了3个播放器各自随机播放的实现。
1. 小米的音乐播放器
小米音乐的随机算法：在进入一个列表的时候，一组随机数就已经生成，然后音乐播放的循序就是按随机数进行的。
比如现在有5首歌曲，开始播放的时候生]]></description><category></category></item><item><title><![CDATA[《代码大全》和《重构》读后感]]></title><link>https://blog.youkuaiyun.com/MakeCodeClear/article/details/8142240</link><guid>https://blog.youkuaiyun.com/MakeCodeClear/article/details/8142240</guid><author>MakeCodeClear</author><pubDate>Fri, 02 Nov 2012 21:07:10 +0800</pubDate><description><![CDATA[最近一段时间看了很多书，有一些囫囵吞枣，但是开拓了一些眼界。为了更好的温习看过的内容，写一下读后感还是很有意义的。
作为一个普通程序员，看两类书就可以了。一是代码大全这类的，教你如何写出规范的代码。二是编程珠玑这类，教你如何用逻辑去思考和解决程序算法问题。
最早看的两本书是代码大全和重构。不涉及到太多应用技术。主要介绍为什么可读性代码很重要，如何写出可读性和复用好的代码。
代码大全真的是大而]]></description><category></category></item></channel></rss>