在 Java 语言 25 周年时,Java 杂志做了一个调查,看看 Java 这门编程语言自诞生之日起(1991年),发展到现在为止,在地球上到底应用有多广泛。并最终选出了前 25 个投票最高的项目作为代表。
在这25个项目中,包括了从星际探索,视频游戏,机器学习,自动驾驶,网络安全等领域,有些已经如雷灌耳,有些正在改变现在和未来。
Final frontier
1. 火星漫游者号控制系统
2004年,Java 跟随火星探测器 —— 漫游者号登陆火星,称为人类历史上第一个登陆地外行星的编程语言。NASA 喷气推进实验室(JPL,钱学森是早期创始人之一)的科学家用 Java 开发了漫游者号的控制系统软件。
其实早在 1995 年,JPL为火星号的"火星日志"建立指挥和控制系统时,JPL 就开始了在探测器使用 Java 的试验,Java 创始人——詹姆斯·高斯林,为此在 JPL 待了很长时间,并成为顾问委员会成员之一。
附源码地址:https://github.com/nasa-jpl/open-source-rover
2. 深空轨道探测
美国航空航天承包商a.i.Solutions从事太空飞行业务,其产品和工程服务已为国防公司和民用空间机构服务超过 20 年。
该公司的JavaFX深空轨道探测器帮助轨道设计人员计算探测器到达深空目标的路径和轨道,并且可以为任何行星-月球系统或小行星生成多维视图和模型,并在密集的视觉搜索中过滤数百万个点。
3. NASA WorldWind.
美国宇航局(NASA)开源(WorldWind)虚拟星空软件,WorldWind 的地理空间数据远远超出了谷歌地球(Google Earth)的范围,他的数据由美国宇航局的工程师生成,并且支持从高程模型和其他数据源中可视化地形。
据称有了该软件后,世界各地的组织利用他监测天气模式,可视化城市和地形,跟踪车辆移动,分析地理空间数据,并帮助人类了解地球。
4. JMARS and JMoon.
自2003年起公开提供,并且仍然被美国宇航局的科学家普遍使用。他是一款是由亚利桑那州立大学火星空间飞行设施的人编写的地理空间信息系统(GIS)。
5. 小行星可视化工具
由约翰霍普金斯大学应用物理实验室开发,它利用航天器任务的数据,在3D中可视化小行星、彗星和小卫星等不规则天体。黎明号、罗塞塔号、OSIRIS-REX号和哈亚布萨2号的飞行任务小组在探索彗星、小行星和矮行星时都使用了SBMT。
SBMT以 Java 语言编写,并使用开源可视化工具包(VTK)在进行3D图形展示。