计算机专业5000字外文翻译.doc
文本预览下载声明
附录A 译文
利用Visual C++把代码运行在多平台上
在今天,多平台的开发是一个热门课题。开发人员希望能够支持不同的平台,例如Windows 3.x, Windows NT, 和 Windows 95 操作系统, 还有Apple, Macintosh, UNIX, 和 RISC (reduced instruction set computer)等。直到不久之前,希望开发多平台任务的开发者们,只有很少的几种选择:
根据各个平台的不同的应用程序接口,为每个平台准备一份单独的代码。
利用能跨平台的工具所提供的“虚拟API”。
构建们自己的多平台层并支持它。
但是到了今天,有了一种新的办法。开发人员可以通过使用微软和第三方的工具,把他们现存的针对Windows API写的代码,对以上列举的各种平台重新编译。本文要关注的就是与这种新办法相关的方法和论点。
目前,Macintosh是紧随Windows之后,市场上最流行的图形用户界面系统。但是这两个完全不同的操作系统之间有太多的不同,需要开发人员学习新的API、新的范例程序、新的工具。一般情况下,对Macintosh应用程序的开发,需要和Windows不同的代码库,这些都增加了维护和升级的复杂度。
因为从Windows到Macintosh的代码转换是最难的情形,所以本文重点是这个内容。如果你的代码能顺利地实现对Macintosh平台的再编译,那么你就会发现它其它平台上的再编译也不难。
Microsoft Visual C++针对Macintosh提供的跨平台编辑器提供了一些工具,这些工具是在Windows NT或 Windows 95平台上运行,可以把Windows代码再编译,使其适应Motorola 680x0和PowerPC 处理器。它还提供了一个转换库来辅助Windows程序在Macintosh上运行。这就使你可以开发单一的源代码(针对Win32? API的),并使它可以运行在Microsoft Windows 或 Apple Macintosh平台上。
下面的第一章,说明了Visual C++是怎样针对Macintosh工作的。你的源代码在Windows NT或Windows 95上面编写,编译,连接。这些工具将产生68000 和PowerPC的自然代码,以及Macintosh资源。一个基于以太网或串行连接的传输层会把目标代码移动远端的目的Macintosh机器上运行。Macintosh应用程序在Macintosh平台上运行,并且在远端的Windows机器上面调试。
现在,Apple公司有两个不同的Macintosh结构来竞争,可转换性尤其重要。转换的几个步骤取决于你处理的程序是16位还是32位。一般来说,一个Macintosh转换包括以下几步:
遵循一些转换性的方针以使你的程序更容易转换,这将不仅有助于保证基于680x0的 Macintosh机器的转换,也有助于更新,基于RISC 芯片的powerful PowerPC机器的转换。
把你的Windows应用程序从16位代码转换成32位代码,这也许是最复杂和耗时间的工作。
把你独特的Windows应用程序分割,从熟悉的执行方式到Macintosh。这将涉及到使用条件编译或者设计到你工程的资源树。
利用Macintosh转换库把Win32 API代码转换成Macintosh代码,并利用Visual C++来编译、连接、调试。
使用微软基础类库MFC 4.0实现一些新功能,例如OLE 2.0,服务器,客户端或者利用ODBC的数据库支持。使用MFC编写的代码对Macintosh有很高的可转换性。
编写专门的Macintosh代码,可以利用Macintosh的独特特点,利用Apple 事件或出版和定购。
开发人员通过Visual C++的特殊的多平台编辑器,可以充分利用新的RISC硬件,例如DEC Alpha AXP机器。这些包括针对MIPS R4000 处理器系列和前面说的DEC Alpha AXP 芯片还有Motorola Power PC.这些工具在Windows NT 3.51下运行,能都产生针对DEC Alpha和Motorola PowerPC的高度优化的Win32应用程序。已经使用过这些工具进行再编译Win32资源的开发人员,对这过程的简单感到惊讶,因为这些平台上的操作系统是各自独立的,它们的工具也是独立的,但是完成一个转换确只需要很少的工作量。
微软公司与两个第三方UNIX工具提供商合作密切(Bristol Technology和 Mainsoft公司),这使得开发人员把自己的Win32或MFC程序针对UNIX进行再编译。开发人员可以通过直接和这些公司接触来获得更多的信息。
很早的时候,你可以选择是编写基于原始AP
显示全部