QQ在线服务: 风舞残阳风舞残阳 年满19岁年满19岁 小罗小罗 晴天晴天 心雨心雨 叮叮肉叮叮肉 小周小周 小童小童 小破孩小破孩 遥望当年遥望当年

用户导购指南

水货IBM笔记本电脑报价

行货IBM笔记本电脑报价

IBM服务器报价

IBM笔记本电脑配件报价

本周水货IBM笔记本电脑特价

IBM笔记本电脑驱动下载

水货IBM笔记本电脑验机流程

水货IBM笔记本电脑保修政策

IBM笔记本电脑FRU查询

IBM笔记本电脑常见问题

IBM笔记本电脑使用手册

笔记本电脑验机软件

论坛积分使用说明

水货IBM笔记本电脑异地购机流程

笔记本电脑购机经历及现场

贵宾申请入口

贵宾用户FTP入口

查看笔记本配置

水货APPLE苹果笔记本电脑报价

 
发新话题
打印

苹果开发人员技术文档连载之-系统架构(3)

苹果开发人员技术文档连载之-系统架构(3)

苹果开发人员技术文档连载之-系统架构(3)
Cocoa

Cocoa应用程序环境基于两个面向对象框架:Foundation基本框架(Foundation.framework)与ApplicationKit应用程序工具箱框架(AppKit.framework)。这些框架都提供了面向Java和Objective-C的API(其中大部分的Java只是简单地“桥接”了他的Objective-C实现)。

对与核心服务层和应用服务层的各自关系来说,Foundation与ApplicationKit在某些方面有着相似之处。Foundation框架中的类提供了不对用户界面产生影响的对象和功能;Foundation框架直接基于CoreFoundation。而ApplicationKit中的类提供了所有能够影响用户界面上所呈现内容的对象和动作,例如:窗口和按钮、对鼠标键盘的响应。ApplicationKit直接依赖于Foundation框架。

Foundation框架的类可归为以下几种类别:

  ·用于基本编程类型和操作的对象包装(或“助手(helper)”),包括:字符串、数组、字典、数字、字节交换、解析和异常处理等。
  ·用于内核环境实体和服务的对象包装,例如任务、端口、运行循环、计时器、线程和锁。
  ·对象相关功能,尤其是内存管理(自动释放缓冲区),远程调用、存档和串行化。
  ·文件系统和I/O功能,包括了URL处理、文件查找和代码以及本地化资源的动态装载。
  ·其他服务,例如分布式通知、取消(和重做)、格式化数据、使用系统日期和时间

正如所期待的一样,许多ApplicationKit类被设计成用于创建和管理显示在图形用户界面上的对象。在这些类中,包括了窗口、对话框、按钮、图表、文本框、滚动条、弹出式菜单、滚动图、应用程序(下拉)菜单,甚至是用于QuickTime流的电影播放界面。

然而,ApplicationKit所拥有的特性与功能使得它远比作为一个用户界面对象的类集合更为有用。

  ·它有着对事件处理、应用程序管理与文档管理的成熟机制。
  ·它提供了对色彩、字体和打印进行管理与整合的应用方式(甚至提供了针对这些功能的对话框)。
  ·它允许以许多不同的图形格式来合成图像,还为绘画、矢量图处理提供了框架。
  ·它具有针对拼写检查、拖拽和复制粘贴等操作所提供的工具。

其他的Cocoa框架还能用于支持脚本、网络管理和其他用途。

Cocoa包罗框架(Cocoa.framework)中引入了Foundation框架和ApplicationKit框架。如果您正在编写一个应用程序,可以连接Cocoa框架。而如果您正在编写一个没有图形用户界面的Cocoa程序(例如:后台服务器),那么您至少需要连接Foundation框架。


JAVA

Java应用程序环境允许您在MacOSX上开发和执行Java程序,包括100%的纯Java应用程序和applets。该环境由一个统一的工业标准所实现--那就是包括了Java虚拟机(VM)在内的最新版本的Java开发工具(JDK)。因为这个原因,在该环境下生成的Java应用程序是可移植的。你可以把它复制到一个硬件完全不同,操作系统也不同的机器上,只要该系统具有兼容的Java虚拟机,您的应用程序就可以在该系统上运行。另外,Javaapplet可以在任何性能合适的互联网浏览器中运行。

注意:Cocoa应用程序环境中包含了适应ApplicationKit和Foundation框架的Java包。这些包允许您使用Java作为开发语言来开发Cocoa应用程序。(出于某种原因)您可以混合使用这些包里的API和本机JavaAPI(不包括AWT或SwingAPI)。关于Cocoa应用程序环境的更多内容,参见“Cocoa”。另外,苹果公司的Jdirect和Sun公司的JNI(JavaNativeInterface)编程界面允许您的Java程序调用其他框架,包括Carbon。并且您可以使用QuickTimeforJavala来为MacOS和Windows平台编写多媒体Java应用程序。

MacOSX内的Java应用程序环境有三个主要的构件:

  ·开发环境,包括Java编译器(javac)和Java调试器(jdb)以及其它工具,包括:javap、javadoc和appletviewer等。这个"命令行"环境需要一个BSDshell,例如它可以由苹果的终端应用程序来提供。苹果还提供了ProjectBuilder应用程序,作为这个环境的前端开发工具,而且第三方也可以使用他们自己的前端开发工具。命令行工具位于JavaVM.framework/Commands子目录下,并提供符号连接来将其连接到目录/usr/bin中。
  ·运行时环境由Sun公司的高性能HotspotJava虚拟机、“just-in-time”(J99v)字节码编译器和基本的Java包所组成。Java虚拟机位于/System/Library/Frameworks/JavaVM.framework/Libraries目录下。这些基础包包括 ava.lang、java.util、java.io和java.net;它们都在同一框架下的Classes目录中的classes.jar归档文件中。
  ·一个应用程序框架含有为建立一个Java应用程序所必需的类。

这些包中较为重要的是java.awt和javax.swing,通常它们被称为AWT(AbstractWindowingToolkit)和Swing。AWT包实现了标准的用户界面组件(例如:按钮和文本框)、基本绘图组件、布局管理器和事件处理机制。Swing包则极大的扩展了这套用户界面组件。这些组件能自动呈现出符合其宿主平台的外观风格(lookandfeel)。Swing在基于当前版本的AWT组件集的基础上扩充了一组高级组件,例如目录视图、列表框和分页框。AWT和Swing的包位于JavaVM.framework/Classes/classes.jar中的jar归档文件中。


比较起Carbon和Cocoa环境,Java虚拟机连同最基本的Java包(java.lang、java.util和java.io)等同于系统软件中的核心服务层。它们从内核环境中获得资源以实现低级别的服务(例如:进程管理、线程和输入/输出),而不必访问系统软件中的核心服务层(OpenTransport,CoreFoundation,等等)。

MacOSX中Java的所有其它部分被分层置于虚拟机和基本Java包之上。如果一个Java程序不具用户界面(或者说它是一个工具或应用服务器),那么它仅仅只需要使用这些基本的Java包。但是100%的纯Java应用程序或applet(根据定义,applet具有图形用户界面)必须使用AWT或Swing,这两者均与系统软件应用服务层中的许多框架和库绑定在一起。Swing自身也被分层置于AWT包的原始部分之上。AWT和Swing在结构上等同于面向GUI的工具箱或框架,例如Carbon的人性化接口工具箱(HumanInterfaceToolbox)或Cocoa的ApplicationKit。

如同任何一个Carbon或Cocoa应用程序一样,Java应用程序也可以是能双击执行的束(double-clickablebundle),您可以使用MRJAppBuilder工具软件来绑定Java应用程序。另外,用户也可以在命令行环境中运行Java程序,或者通过系统exec调用和JavaRuntime.exec方法来执行Java应用程序。对于后一种情况,所启动Java程序的进程名会被显示成用于启动可执行Java程序的工具,即:java,或针对applet的appletviewer(例如,在ProcessViewer中察看)。
(※本文搜集自:重庆未来科技 http://www.wlkj.net 重庆IBM笔记本电脑、重庆IBM水货笔记本电脑、重庆苹果笔记本电脑、重庆IBM服务器专卖)

TOP

******请登陆论坛查看内容******

(※本文搜集自:重庆未来科技 http://www.wlkj.net 重庆IBM笔记本电脑、重庆IBM水货笔记本电脑、重庆苹果笔记本电脑、重庆IBM服务器专卖)
这是赤果果的灌水呐
What good would wings be
if you couldn't feel wind on your face

TOP

发新话题