apple iphone开发之大概理解

apple iphone开发之大概理解,第1张

概述Objective-C大体上只是在C语言上加上一层薄薄的、动态的面向对象层。Cocoa则是相当容易上手的API。透过Cocoa就可以用面向对象的方式存取OS X八成上的系统服务(其余两成可以用C来呼叫)。Objective-C可以跟C完全混用。同时Apple也提供了所谓的"Objective-C++",可以在C++程序中呼叫Objective-C程序,或者在Objective-C里撰写C++程序代 Objective-C大体上只是在C语言上加上一层薄薄的、动态的面向对象层。Cocoa则是相当容易上手的API。透过Cocoa就可以用面向对象的方式存取OS X八成上的系统服务(其余两成可以用C来呼叫)。Objective-C可以跟C完全混用。同时Apple也提供了所谓的"Objective-C++",可以在C++程序中呼叫Objective-C程序,或者在Objective-C里撰写C++程序代码。Apple自家的浏览器Safari就有不少核心的程序代码(WebKit)使用了Objective-C++来撰写。
OS X的绘图系统核心是Quartz。Quartz的绘图基础概念是路径(path),而不是像素(pixel)。惊人的事实是:Quartz是一套pdf绘图系统。所有Quartz能绘制的对象都能轻易转换为pdf文件。至于在图像处理上,Quartz提供了一套完整的合成模型(compositing model)。Quartz的默认分辨率是72 DPI,所使用的单位是点(point),这跟pdf绘图系统是一致的。Quartz默认的坐标系统跟数学上的习惯相同,也就是(0,0)坐标起点是位于左下方,而不是一般计算机绘图使用的左上方(当然,Quartz有各种坐标变换功能,因此当然还是可以把(0,0)设定为左上方的)。

Quartz的基础API是以C写成的,所有对象 *** 作方式都跟CoreFoundation一样(从Quartz建立的对象都是用reference counting的方式在管理内存,同时也都可以用CFRelease来释放)。不过,Cocoa也提供了绝大多数的API对应。使用Objective-C来 *** 作绘图对象会更轻松些。

在Quartz之上,或者与Quartz并行的,还有Apple的各种图形和媒体相关的子系统。诸如可以快速制作动画的Quartz Composer、新一代文字输出编排系统CoreText、应用层的2D动画系统CoreAnimation,以及Apple的招牌多媒体架构QuickTime,还有业界标准的OpenGL,这些构成了Mac OS X在视觉及媒体经验上的核心。

Mac OS X使用的是一种叫做property List(文件扩展名为.pList,简称pList)的XML文件。PList可以直接变成CoreFoundation及Cocoa的各种容器对象,也可以将后者轻易地serialize成pList。因此OS X上的应用程序大量使用pList作为配置文件的格式,甚至作为数据单元格式。

总结

以上是内存溢出为你收集整理的apple iphone开发之大概理解全部内容,希望文章能够帮你解决apple iphone开发之大概理解所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1069409.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存