【IOS介绍】
iOS是苹果公司研发的一款手机操作系统。于2007年开始运用于iPhone,iPod Touch和苹果电视。
iOS从OS X演化而来,并且和OSX共享Darwin。iOS是OSX运用于苹果电脑操作系统的一款手机操作系统。
IOS开发语言
ios目前流行两种开发语言:Objective-C 和 Swift 。前者有C语言基础者上手会容易些;后者Swift是iOS/Mac未来开发的主要语言,无论从编程思想还是从api书写,都赏心悦目,但缺点是没有Objective更稳定,且事实上去面试一些公司都要求的是用 Objective-C,只是把 Swift 作为学习语言。
要开发iOS的应用程序,你需要一台安装有Xcode工具和Mac OS X的电脑。Xcode是苹果提供的开发工具集、提供项目管理、代码编辑、创建执行程序、代码级调试、代码库管理和性能调节等等功能。这个工具集的核心就是Xcode程序,提供了基本的源代码开发环境。
iOS内存管理简介
iOS下内存管理的基本思想就是引用计数,通过对象的引用计数来对内存对象的生命周期进行控制。具体到编程时间方面,主要有两种方式:
1:MRR(manual retain-release),人工引用计数,对象的生成、销毁、引用计数的变化都是由开发人员来完成。
2:ARC(Automatic Reference Counting),自动引用计数,只负责对象的生成,其他过程开发人员不再需要关心其销毁,使用方式类似于垃圾回收,但其实质还是引用计数。
面临的问题
根据苹果说明文档,面临的两个主要问题是:
释放或覆盖的数据仍然在使用。这将造成内存损坏,通常在应用程序崩溃,或者更糟,损坏用户数据。
不释放不再使用的数据会导致内存泄漏。分配的内存,内存泄漏不会释放,即使它从来没有再次使用。泄漏会导致应用程序的内存使用量日益增加,这反过来又可能会导致系统性能较差或死机。
内存管理规则
我们创建自己的对象,当他们不再需要的时候,释放他们。
保留需要使用的对象。如果没有必要必须释放这些对象。
不要释放我们没有拥有的对象。
使用内存管理工具
可以用Xcode工具仪器的帮助下分析内存的使用情况。它包括的工具有活动监视器,分配,泄漏,僵尸等