分享
 
 
 

Java 的可移植性

王朝java/jsp·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

序言 我一直都怀疑被那些自以为博学的人不停讨论的最热门的话题Java™ 。您可以用一分为二的观点来对待这些问题,最终你被迫相信 Java 将带来世界和平并能偿还美国的国债或者它完全是在浪费时间。我经常想涉足这些讨论,但我还是尽量避而不谈,直到我能够提供广博的观点。

设想一下当我从圣诞节假期归来时发现我的下一个任务是需要学习 Java 时,我是多么的惊慌(或者应当说成是惧怕)。你能说“留心你想要得到的东西,因为你可能正在得到它”吗?但是,我很兴奋的发现学习比我预计的要轻易。Java 是面向对象的设计方法,作为一个长期在复杂凌乱的 C++ 世界挣扎的 C 程序员,经过多年的面向对象的编程,作为一种回报我发现确实学到了一些原理和技术。的确,我承认我是一个 OLE 热衷者(阅读过 Nigel Tompson 的系列文章的 MSDN 订阅者都会理解我的意思),至少在产品代码迁移方面如此。但是,渐渐的我离开了无序的行列,至少在考虑 Java 时是这样。

我的第一个决定??并且是一个正确的决定??避免了选择类似于《利用你五天刷牙的时间学会 Java》这样的书。假如你最近到过书店的计算机技术部分(假如你可以外出),会知道那里有许多 Java 书籍。为了缩小你的查找范围,你可以选择适合自己的书。因为我有丰富的 C 程序经验,我找到一些适用于 C 程序员学习 Java 的书。例如,找到一本David Flanagan 所著的《简单的Java》(Java in a Nutshell 专用系统参考 1996年12月。ISBN:1556592183)。我还买了一本Addison-Wesley 出的《Java 系列》(参见http://www.awl.com/cp/javaseries/),这些书的确十分有用,但大部分都是编程参考。按照我自己通过实践进行学习的习惯,没过多久我就熟悉了。我开始时编写示例 Applet 程序,这在当时看来是很有用的,但很快我就熟悉到自己的知识很有限需要深入的学习。于是我开始浏览微软的Java 开发者 Web 站点和Sun MicroSystems 站点, 并且在下列站点也找到一些资料(这不是一个全面的列表):

? Java 开发者 (最好的Java 编程疑问与解答)

? “Java Jolt” (Web Developer.com 的指导专栏周刊)

? “Digital Espresso” (Java 邮件列表摘要周刊和Mentor Software Solutions 的新闻组活动)

? JavaWorld (每月更新的关于 Java 社团的IDG 杂志)

? Javology (每月更新的 Java 新闻和在线见解e-zine)

权威人士一些关于 Java 的观点让我感到鼓舞,我又回到原先起步阶段的 Applet 示例中,但是很快就又转移了视线,开始阅读 Sun Java 开发工具(JDK)的 Applet 示例源程序??可以从http://www.javasoft.com/nav/developer/index.Html 下载。自然,当我开始看实现系统类的源代码时,觉得阅读示例源程序更有趣。

我的 Java 学习方法实践证实是比较成功的。由于正确的选择了适合自己 C 编程背景的启蒙书籍,我对 Java 有了相当充分深入的理解。学习的第二阶段通过到 Web 站点浏览,我又把握了关于 Java 开发工具和相关问题的最新信息。经过阅读源代码,使我对 Java 的结构和实现有了本质的熟悉。

关于 Java 系列文章的第一篇将帮助每个 C 程序员解答“Java 可移植性的要害是什么?”这个问题。我将重点介绍设计方面使 Java 应用程序比其他技术在不同计算机平台之间有更好的可移植性的原因。但是,假如你想彻底理解这一切,Java 良好的可移植性内部的理论将是你学习的一个重点。我看到在 Java 新闻组中有大量的布告,反映出实际使用时不断出现的真正的问题。当然,人们也在抱怨 Java 的兼容性问题,我将从根本上解释这一问题。假如你认为该主题的文章有帮助,我将很感激你能告诉我(我的 e-mail 地址是michaele@microsoft.com )。

关于可移植性

提供创建高可移植性应用程序的便利是 Java 设计体系的核心要素。我的大部分编程经验是关于 C 语言的,八十年代当我开始自己的计算机游戏程序员生涯时,我就开始与可移植代码问题朝夕相伴。我所在的游戏公司常期支持几个不同的平台,包括Apple II、C64、Mac、Amiga、Atari ST 和 PC??使用游戏控制台,但未能成功。因此,“移植仪定”仿佛成了我的名字。当我在这些平台之间移植游戏时我学到了重要的一课:不存在完全可移植的代码;仅仅是可移植代码多和少的问题。我同时也把握了一个可以产生尽可能多的可移植代码的方法。对我们来讲,这个方法包括尽可能多的用 C 语言编写代码,使用我们称为虚拟机的技术??我们移植到不同平台时所使用的基本库代码,该库充当运行我们的游戏程序所需的虚拟图形和用户输入库。因此,从我个人来之不易的创建可移植软件经验,我能证实 Java 通常使用可靠性好的技术来生成高可移植性的代码更轻易。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有