整理:著名软件是使用什么语言写的?

最近和一些学习计算机的朋友聊天,很多人都问我现在学什么语言最有前途?对于这个问题,我很难回答,(这里说的不是英语呵,是电脑的编程语言)。其实这个问题我常常很难回答,因为不管什么语言,只要你学的好,高薪工作肯定是不发愁的,所有的编程语言,最终都是编译成机器语言的,也就是0和1,不同的只是你用什么方式告诉计算机该做什么。
        不过,不同语言还是有差别的,比如Java跨平台性很好,除了可以开发桌面程序外,还常用来开发手机程序,C++一般用来开发大型程序,手机用的比较少。著名的《魔兽世界》很多部分就是用C++写的,如果用Java写,那么游戏速度将会慢到让你崩溃!
        近几天我关注整理了一些常用软件的编写语言,希望能对有志于从事软件开发的朋友有一定的指导。


一、 游戏
PC平台几乎所有的游戏
星际争霸、魔兽争霸、CS、帝国时代、跑跑卡丁车、传奇、魔兽世界.... 数不胜数了,自己数吧
        都是用C++开发的,C++语言靠近系统地称,执行速度最快。比如你的两个朋友与你分别玩用VB、Java、与C++编写的“跑跑卡丁车”,你玩C++编写的游戏已经跑玩结束了,发现你的两个朋友还没开始跑呢,那是相当的卡啊,
二、办公软件
微软Office (就是你常用的Word、Excel):汇编 -> C -> 稳定在C++
Sun Open Office (这个可能很多朋友不知道,但用Linux系统的都知道这个办公软件): 部分JAVA(对外接口),主要为C++ (开源,可下载其源代码)
三、图形处理
Adobe Photoshop : C++
GIMP:C
四、网站
eBay :2002年为C++,后主要迁至Java
Facebook : C++和PHP
新乡学院网站:网页程序用ASP写的,数据库应该是SQL
五、搜索引擎
Google : 汇编与C++,主要为C++
六、操作系统:
Windows :汇编 -> C -> C++
    备注:曾经在智能手机的操作系统(Windows Mobile)考虑掺点C#写的程序,比如软键盘,结果因为写出来的程序太慢,实在无法和别的模块合并,最终又回到C++重写。
    相信很多朋友都知道Windows Vista,这个系统开发早期比尔盖茨想全部用C#写,但是最终因为执行慢而放弃,结果之前无数软件工程师日夜劳作成果一夜之间被宣告作废。
Linux :C
苹果 MacOS : 主要为C,部分为C++。
    备注: 之前用的语言比较杂,最早是汇编和Pascal。
Symbian OS : 汇编,主要为C++。(诺基亚手机)
Google Android 2008年推出: C语言(有传言说是用Java开发的操作系统,但最近刚推出原生的C语言SDK)
七、图形界面层
Microsoft Windows UI :C++
苹果 MacOS UI (Aqua) : C++
Gnome (Linux图形界面之一,大脚丫): C和C++, 主要是C。
KDE (Linux图形界面),C++。
八、关系型数据库
Oracle : 汇编、C、C++、Java。主要为C++。
MySQL : C++
IBM DB2 :汇编、C、C++,主要为C。
微软SQL Server : 汇编 -> C->C++
IBM Informix : 汇编、C、C++,主要为C。
SAP DB/MaxDB : C++
九、浏览器:
微软IE: C++
火狐浏览器: C++
苹果Safari :(2003年1月发布)C++
谷歌Chrome :(2008的发布)C++
Opera : C++ (手机上占用率比较大)
十、邮件客户端
Outlook : C++
IBM Lotus Notes : Java
Foxmail:Delphi
十一、软件开发集成环境/IDE:
Microsoft Visual Studio : C++
    备注:是不是有点搞笑?用C++开发出来的Visual Studio又用来开发C++程序
Eclipse :Java (其图形界面SWT基于C/C++)
Code::Blocks : C++
十二、编译器
Microsoft Visual C++ 编译器:C++
Microsoft Visual Basic 解释、编译器:C++
Microsoft Visual C# : 编译器:C++
gcc (GNU C compiler) : C
javac (Sun Java compiler) : Java
Perl : C++
PHP : C
十三、3D 引擎
Microsoft DirectX : C++(相信玩游戏的同学都知道这个,现在最高版本是DX11)
OpenGL : C
OGRE 3D : C++
十四、Web Servers (网页服务)
Apache : C和C++,主要为C
Microsoft IIS : C++
十五:CD/DVD 刻录
Nero Burning ROM : C++
K3B : C++
十六:媒体播放器
Nullsoft Winamp : C++
Microsoft Windows Media Player : C++

Microsoft Windows Media Player : C++   


图例: “->” 表示有一个明显的迁移过程。

一、操作系统:

Microsoft Windows :汇编 -> C -> C++

备注:曾经在智能手机的操作系统(Windows Mobile)考虑掺点C#写的程序,比如软键盘,结果因为写出来的程序太慢,实在无法和别的模块合并,最终又回到C++重写。

Linux :C

Apple MacOS : 主要为C,部分为C++。 备注: 之前用的语言比较杂,最早是汇编和Pascal。

Sun Solaris : C

HP-UX : C

Symbian OS : 汇编,主要为C++。 (诺基亚手机)

Google Android 2008年推出: C语言(有传言说是用Java开发的操作系统,但最近刚推出原生的C语言SDK)

RIM BlackBerry OS 4.x : 黑莓 C++

二、图形界面层

Microsoft Windows UI :C++

Apple MacOS UI (Aqua) : C++

Gnome (Linux图形界面之一,大脚): C和C++, 主要是C。

KDE (Linux图形界面),C++。

三、桌面搜索工具

Google Desktop Search : C++

Microsoft Windows Desktop Search : C++

Beagle (Linux/Windows/UNIX 下): C# (基于开源的.net : Mono)

四、办公软件

Microsoft Office :在 汇编 -> C -> 稳定在C++

Sun Open Office : 部分JAVA(对外接口),主要为C++ (开源,可下载其源代码)

Corel Office/WordPerfect Office : 1996年尝试过Java,次年被抛弃,重新回到C/C++

Adobe Systems Acrobat Reader/Distiller : C++

五、关系型数据库

Oracle : 汇编、C、C++、Java。主要为C++。

MySQL : C++

IBM DB2 :汇编、C、C++,主要为C。

Microsoft SQL Server : 汇编 -> C->C++

IBM Informix : 汇编、C、C++,主要为C。

SAP DB/MaxDB : C++

六、Web Browsers/浏览器:

Microsoft Internet Explorer : C++

Mozilla Firefox : C++

Netscape Navigator :The code of Netscape browser was written in C, and Netscape engineers, all bought to Java (see M. Cusumano book and article) redeveloped the browser using Java. It was too slow and abandoned. Mozilla, the next version, was later developed using C++.

Safari : (2003年1月发布)C++

Google Chrome : (2008的发布)C++

Sun HotJava : Java (死于1999年)

Opera : C++ (手机上占用率比较大)

Opera Mini : Opera Mini (2007) has a very funny architecture, and is indeed using both C++ and Java. The browser is split in two parts, an ultra thin (less than 100Kb) "viewer" client part and a server side responsible of rendering. The first uses Java and receives the page under the OBML format, the latter reuses classical Opera (C++) rendering engine plus Opera's Small Screen Rendering, on the server. This allows Opera to penetrate various J2ME-enabled portable devices, such as phones, while preserving excellent response time. This comes obviously with a few sacrifices, for instance on JavaScript execution.

Mosaic : 鼻祖(已死) C 语言

七、邮件客户端

Microsoft Outlook : C++

IBM Lotus Notes : Java

Foxmail : Delphi

八、软件开发集成环境/IDE:

Microsoft Visual Studio : C++

Eclipse : Java (其图形界面SWT基于C/C++)

Code::Blocks : C++

九、虚拟机

Microsoft .Net CLR  (.NET的虚拟机): C++

Java Virtual Machine (JVM) : Java 虚拟机:C++

十、ERP软件 (企业应用)

SAP mySAP ERP : C,后主要为“ABAP/4”语言

Oracle Peoplesoft : C++ -> Java

Oracle E-Business Suite : Java

十一、商业智能(Business Intelligence )

Business Objects : C++

十二、图形处理

Adobe Photoshop : C++

The GIMP : C

十三、搜索引擎

Google : 汇编 与 C++,主要为C++

十四、著名网站

eBay : 2002年为C++,后主要迁至Java

facebook : C++ 和 PHP

This line is only about facebook, not its plugins. Plugins can be developed in many different technologies, thanks to facebook's ORB/application server, Thrift. Thrift contains a compiler coded in C++. facebook people write about Thrift: "The multi-language code generation is well suited for search because it allows for application development in an efficient server side language (C++) and allows the Facebook PHP-based web application to make calls to the search service using Thrift PHP libraries." Aside the use of C++, facebook has adopted a LAMP architecture.

十五、 游戏 :汇编、C、C++

十六、编译器

Microsoft Visual C++ 编译器: C++

Microsoft Visual Basic 解释、编译器:C++

Microsoft Visual C# : 编译器: C++

gcc (GNU C compiler) : C

javac (Sun Java compiler) : Java

Perl : C++

PHP : C

十七、3D 引擎

Microsoft DirectX : C++

OpenGL : C

OGRE 3D : C++

十八、Web Servers (网页服务)

Apache : C和C++,主要为C

Microsoft IIS : C++

十九:邮件服务

Microsoft Exchange Server : C->C++

Postfix : C

hMailServer : C++

Apache James : Java

二十:CD/DVD 刻录

Nero Burning ROM : C++

K3B : C++

二十一:媒体播放器

Nullsoft Winamp : C++

Microsoft Windows Media Player : C++

Microsoft Windows Media Player : C++

二十二:Peer to Peer (P2P软件)

eMule : C++

µtorrent : C++

Azureus : Java (图形界面使用基于C/C++的SWT,类Eclipse)

二十三:全球定位系统(GPS)

TomTom : C++

Hertz NeverLost : C++

Garmin : C++
Motorola VIAMOTO : 2007年6月,停止服务。 Java。


已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页