自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 关于文章的声明

关于iOS的blog都是基于https://developer.apple.com网站上的原文做的翻译,边学习边翻译,如果有读者对苹果官网感兴趣,可以给我留言,我可以自不量力的翻译以下。

2014-03-13 22:06:37 570

原创 iOS并发编程(下) --- Dispatch Queue

Dispatch QueuesGCD(Grand Central Dispatch)dispatch queues是一个执行任务的强大工具。对于调用者,dispatch queues可以让你同步或者异步地执行任意的代码块。你可以使用dispatch queues来执行你之前用分离的线程执行的几乎所有的任务。dispatch queues相对于线程代码的优势是它们在执行任务时更加方便易用并且

2014-03-16 18:46:38 1581

原创 iOS并发编程(上)-- NSOperation queue

并发是多件事情同时发生的一个概念。在过去,在应用中引入并发就需要创建一个或者多个额外的线程。不幸的是,写线程代码是一个挑战。线程是低层次工具必须手动的管理。给定应用可选的线程数会基于当前系统负载和硬件动态的改变。实现一个正确的线程方案变得额外的困难,很难达到。并且,线程同步机制的使用会增加软件的复杂度和风险而且还不能保证提升性能。iOS和OS X都提供了一个比传统基于线程更加异步的

2014-03-10 21:58:11 923

原创 iOS KVO

KVO是一种允许指定的对象在一些其他对象指定的属性改变时被通知的机制。为了明白KVO,你首先需要明白KVC。At a GlanceKVO是一种允许指定的对象在一些其他对象指定的属性改变时被通知的机制。它在你应用程序的模型和控制器交互时显得特别有用。一个控制器对象典型的观察模型的属性,视图对象通过控制器观察模型对象。并且,一个模型对象可能观察其他的模型对象或者观察它自己。

2014-03-02 17:05:22 940

原创 iOS Runtime

Objective-C 程序与runtime系统的交互有三个唯一的层次:通过Objective-C源代码的方式;通过NSObject类里面的方法;通过直接调用runtime函数。Objective-C源代码大部分情况,runtime系统自动工作并且隐藏在屏幕背后,编译器创建数据结构和函数调用(实现动态特性得语言)。数据结构捕获类或者category定义得信息和协议里面声明的东西;包

2014-03-02 17:03:43 995

原创 iOS内存管理--Core Foundation

Core Foundation使用引用计数,对象记录使用retain的拥有者的数量,如果对象没有拥有者,它就会被释放Core Foundation 为对象的拥有和释放定义了以下的规则:.如果你创建了对象(直接创建或者copy另外一个对象),你拥有这个对象。如果你从某个地方获取一个对象,你不拥有它,如果你想阻止它被释放,你必须将你自己添加为一个owner(using CFReta

2014-02-06 22:37:55 1421

原创 iOS内存管理--ARC

arc是一个编译特性用来提供自动管理Objective-c的内存。ARC的目的是把你从内存管理的泥潭中解放出来,更多的去关注你要做的事情。Arc是在编译的时候插入代码来确信让对象能够按需要来存在。ARC同样是以引用计数为基础。你可以选择在以文件或者项目为单位不使用ARC。但是建议尽量最好使用ARC,首先,编译器为你做内存管理往往比你自己要更优秀,其次,ARC导致的效率损失在UI面前基本可以

2014-01-22 23:42:17 960

原创 iOS内存管理

前提(1). 以下是针对cocoa对象,不包括core foundation(2). cocoa对象都是用引用计数来跟踪对象的内存使用情况的。(3). 在子类里面父类先初始化和后释放的原则。自己想下为什么栈空间和堆空间的区别。我们说的内存管理都是基于堆空间的,因为函数内的栈空间是由编译器自己控制的。 关于core foundation的内存管理,在下下一

2014-01-21 23:07:18 739

原创 如何写出好代码

好的代码不仅是对的,而且是看起来显然是对的。优雅,简洁,高效是程序员写代码的最高追求,也是干净代码的最高境界。如果自认为是个有追求的程序猿,请追求最美好的东西,代码美到极致那就是艺术,看到自己写的东西让别人赏心悦目那心情想必是极好的。要知道什么是干净的代码,自己才能写得出来,模仿是创造的前提。多看看别人写的东西。各种开源的apache项目和库的代码,不一定要深入的研究(当然如果深入研究更好

2014-01-21 00:31:34 1165

原创 音乐的随机播放

刚刚测试了一下android系统下三个音乐播放器关于随机播放音乐的实现方式:QQ音乐,小米的音乐播放器,以及百度音乐。把播放模式设定为随机播放,播放存在手机的上的音乐列表。经过测试,大概分析出了3个播放器各自随机播放的实现。1. 小米的音乐播放器小米音乐的随机算法:在进入一个列表的时候,一组随机数就已经生成,然后音乐播放的循序就是按随机数进行的。比如现在有5首歌曲,开始播放的时候生

2012-11-22 23:23:25 3919

原创 《代码大全》和《重构》读后感

最近一段时间看了很多书,有一些囫囵吞枣,但是开拓了一些眼界。为了更好的温习看过的内容,写一下读后感还是很有意义的。作为一个普通程序员,看两类书就可以了。一是代码大全这类的,教你如何写出规范的代码。二是编程珠玑这类,教你如何用逻辑去思考和解决程序算法问题。最早看的两本书是代码大全和重构。不涉及到太多应用技术。主要介绍为什么可读性代码很重要,如何写出可读性和复用好的代码。代码大全真的是大而

2012-11-02 21:07:10 1347

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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