go语言3d引擎 go语言游戏引擎( 三 )


二十三:全球定位系统(GPS)
TomTom :C++
Hertz NeverLost :C++
Garmin :C++
Motorola VIAMOTO :2007年6月,停止服务 。Java 。
二十四:3D 引擎
Microsoft DirectX :C++(相信玩 游戏 的同学都知道这个,现在最高版本是DX11)
OpenGL :C
OGRE 3D :C++
二十五:服务器软件
Apache: C
Nginx: C
IIS: C
二十六:其他相关
OpenStack: Python
综述
著名的软件一般是系统软件,软件一般都分为系统软件和应用软件 。开发软件分为一次开发和二次开发 , 比如开发操作系统(系统软件),就是一次开发;在操作基础上进行应用软件的开发,比如开发 游戏  , 就是二次开发 。
一次开发的系统软件,要直接调用硬件资源,必须使用简单、直接的底层语言和中层语言 , 比如汇编和C语言;二次开发应用软件等,因为应用软件的类别比较多的,针对的情况比较复杂和具体 , 因此可以选择的语言很多,比如,大数据人工智能方面的有Python;安卓手机APP就是Java等等 。
这里还有一个误区,其实语言不重要,每种语言都差不多,重要的是开发环境和编程思想 。要学习编程开发,学的不是语言,而是对于开发环境工具的使用和编程思维的锤炼 。很多著名的软件都是用C等底层语言编写的,但是也可以用其他语言编写,不过很少学C了 , 其中有商业的原因 。(后面会解释)
集成开发环境软件
计算机语言是不可以单独拿出来说的,比如我们说C语言,指的是C语言编译器,而Python语言,指的是Python解释器 。而编译器和解释器却都是用C语言编写,是不是很意外 , 所以著名的软件一般都是系统软件,使用的是C语言 , 一个语言就要初中水平就可以学会了,但必须了解IDE开发环境 。
要使用计算机语言,就必须安装编译器,或者是解释器,程序员是在TXT文本上编写语言的,用编译器可以一次性编译为可执行文件exe,用解释器则可以逐条翻译成机器语言并逐条执行 。编译器速度快,解释器可以跨系统,到了别的系统,不需要程序员改写程序,换一个解释器就行了 。
IDE集成开发环境具备图形操作界面、编译器、调制器、控制台,是非常重要的开发工具的,只会一个计算机的语言语法,却不会使用IDE,基本上是没用的!
编程思想
很多著名的软件都是使用C等底层语言编写的,而且所用的都是编译器 。当然还有另外一个原因,就是编程思想,C语言是面向过程 , Python是面向对象 。很明显,一次开发的系统软件肯定是面向过程的 , 而面向具体使用场景的应用软件肯定是面向对象的 。
高手可以自由使用编程思想、程序编写时,交替使用各种语言、切换解释器或者编译器 , 达到隐藏核心代码目的;又或者软件的核心模块采用C等底层代码,保证软件的运行速度 。毕竟开发时都是模块化的 , 不同模块使用不同的方法都是可以的!
所以很多著名的软件,往往是混合着各种语言 , 核心部分是C,其他部分则根据不同的情况选用不同语言,之所以会这样做,是因为使用C开发软件要耗费大量的时间太 。摩尔定律推动硬件发展 , 软件开发也受到影响,一个软件晚几天推出市场 , 效果完全不同,所以程序员经常加班赶工 , 速度才是最重要的 。
总结
如上所述,著名的软件是使用C等底层语言、编译器语言、面向过程的语言编写的,更多的是在一个软件的核心部分使用C等底层语言、编译器语言、面向过程的语言 , 其他则见机行事 。

推荐阅读