一些著名的软件都用什么语言编写?
原文链接:http://k.sina.com.cn/article_5292883723_13b7aff0b00100yimn.html
1、操作系统
Microsoft Windows :汇编 -> C -> C++
备注:曾经在智能手机的操作系统(Windows Mobile)考虑掺点C#写的程序,比如软键盘,结果因为写出来的程序太慢,实在无法和别的模块合并,最终又回到C++重写。
相信很多朋友都知道Windows Vista,这个系统开发早期比尔盖茨想全部用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++
2、图形界面层
Microsoft Windows UI :C++
Apple MacOS UI (Aqua) : C++
Gnome (Linux图形界面之一,大脚): C和C++, 但主要是C
KDE (Linux图形界面): C++
3、桌面搜索工具
Google Desktop Search : C++
Microsoft Windows Desktop Search : C++
Beagle (Linux/Windows/UNIX 下): C# (基于开源的 .net : Mono)
4、办公软件
Microsoft Office :在 汇编 -> C -> 稳定在C++
Sun Open Office : 部分JAVA(对外接口),主要为C++ (开源,可下载其源代码)
Corel Office/WordPerfect Office : 1996年尝试过Java,次年被抛弃,重新回到C/C++
Adobe Systems Acrobat Reader/Distiller : C++
5、关系型数据库
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++
6、Web Browsers/浏览器
Microsoft Internet Explorer : C++
Mozilla Firefox : RUST
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 语言
7、邮件客户端
Microsoft Outlook : C++
IBM Lotus Notes : Java
Foxmail : Delphi
8、软件开发集成环境/IDE
Microsoft Visual Studio : C++
Eclipse : Java (其图形界面SWT基于C/C++)
Code::Blocks : C++
易语言:C++
火山中文:C++
火山移动:C++
9、虚拟机
Microsoft .Net CLR (.NET的虚拟机): C++
Java Virtual Machine (JVM) : Java 虚拟机:C++
10、ERP软件 (企业应用)
SAP mySAP ERP : C,后主要为“ABAP/4”语言
Oracle Peoplesoft : C++ -> Java
Oracle E-Business Suite : Java
11、商业智能(Business Intelligence )
Business Objects : C++
12、图形处理
Adobe Photoshop : C++
The GIMP : C
13、搜索引擎
Google : 汇编 与 C++,但主要为C++
14、著名网站
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.
阿里巴巴和淘宝:php->C++/Java(主要用)
15、游戏
汇编、C、C++
星际争霸、魔兽争霸、CS、帝国时代、跑跑卡丁车、传奇、魔兽世界.... 数不胜数了,自己数吧
都是用C++开发的,C++语言靠近系统地称,执行速度最快。比如你的两个朋友与你分别玩用VB、Java、与C++编写的“跑跑卡丁车”,你玩C++编写的游戏已经跑玩结束了,发现你的两个朋友还没开始跑呢,那是相当的卡啊。
16、编译器
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
17、3D引擎
Microsoft DirectX : C++
OpenGL : C
OGRE 3D : C++
18、Web Servers (网页服务)
Apache : C和C++,但主要为C
Microsoft IIS : C++
Tomcat : Java
Jboss : Java
19、邮件服务
Microsoft Exchange Server : C->C++
Postfix : C
hMailServer : C++
Apache James : Java
20、CD/DVD刻录
Nero Burning ROM : C++
K3B : C++
21、媒体播放器
Nullsoft Winamp : C++
Microsoft Windows Media Player : C++
22、Peer to Peer (P2P软件)
eMule : C++
μtorrent : C++
Azureus : Java (图形界面使用基于C/C++的SWT,类Eclipse)
23、全球定位系统(GPS)
TomTom : C++
Hertz NeverLost : C++
Garmin : C++
Motorola VIAMOTO : 2007年6月,停止服务,Java
24、3D引擎
Microsoft DirectX : C++(相信玩游戏的同学都知道这个,现在最高版本是DX11)
OpenGL : C
OGRE 3D : C++
25、服务器软件
Apache:C
Nginx:C
IIS:C
26、其它
OpenStack:Python
- END -
推荐阅读 31天拿下K8s含金量最高的CKA+CKS证书! 三只兔子的故事理解 Kubernetes 污点和容忍,真的很简单! 比 netstat 好用?Linux 网络状态工具 ss 详解 Linux Shell 脚本编程最佳实践 做了这么多年运维工作,现在才看清职业方向 一篇文章讲清楚云原生图景及发展路线 Gitlab+Jenkins+k8s+Helm 的自动化部署实践 K8s kubectl 常用命令总结(建议收藏) 一名运维小哥对运维规则的10个总结 K8s运维锦囊,19个常见故障解决方法 Linux 系统日常巡检脚本 终于明白了 DevOps 与 SRE 的区别! 编写 Dockerfile 最佳实践 搭建一套完整的企业级 K8s 集群(kubeadm方式)
点亮,服务器三年不宕机