Click the blue text
Follow us
Due to changes in the public account’s push rules, please click “View” and add “Star” to get exciting technical shares at the first time
Source from the internet, infringement will be deleted
We often talk about how powerful C/C++ is, but it’s always just hearsay; we need to see it to believe it. So how can we see it? Of course, we start from the “results”. Today, let’s find some content together to see which excellent software works are masterpieces of C and C++.Main Content:
1. Operating Systems (OS)
Microsoft Windows: Assembly -> C -> C++
Note: At one time, the operating system for smartphones (Windows Mobile) considered incorporating some C# programs, such as the soft keyboard, but ultimately the programs written were too slow and could not be integrated with other modules, so it was rewritten in C++.Many friends should know about Windows Vista. In the early development of this system, Bill Gates wanted to write it entirely in C#, but ultimately abandoned it due to slow execution, rendering the hard work of countless software engineers overnight obsolete.Linux: C
Apple MacOS: Mainly C, with some C++. Note: The languages used before were quite varied, initially Assembly and Pascal.
Sun Solaris: CHP-UX: CSymbian OS: Assembly, mainly C++. (Nokia phones)Google Android: Launched in 2008: C language (there are rumors that it was developed using Java, but a native C language SDK was just released)RIM BlackBerry OS 4.x: BlackBerry C++
2. Graphical User Interface Layer
Microsoft Windows UI: C++Apple MacOS UI (Aqua): C++Gnome (one of the Linux graphical interfaces, GNOME): C and C++, mainly C.KDE (Linux graphical interface): C++.
3. Desktop Search Tools
Google Desktop Search: C++
Microsoft Windows Desktop Search: C++Beagle (Linux/Windows/UNIX): C# (based on open-source .net: Mono)
4. Office Software
Microsoft Office: Assembly -> C -> stabilized in C++
Sun Open Office: Partially JAVA (for external interfaces), mainly C++ (open source, source code available for download)Corel Office/WordPerfect Office: Attempted Java in 1996, abandoned the next year and returned to C/C++Adobe Systems Acrobat Reader/Distiller: C++
5. Relational Databases
Oracle: Assembly, C, C++, Java. Mainly C++.
MySQL: C++
IBM DB2: Assembly, C, C++, mainly C.
Microsoft SQL Server: Assembly -> C -> C++IBM Informix: Assembly, C, C++, mainly C.SAP DB/MaxDB: C++
6. 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++.(Friendly translation: The code of Netscape browser was written in C, and all Netscape engineers were introduced to Java (see M. Cusumano’s book and article) and redeveloped the browser using Java. It was too slow and abandoned. The next version, Mozilla, was later developed using C++.)Safari: (Released January 2003) C++Google Chrome: (Released 2008) C++
Sun HotJava: Java (died in 1999)Opera: C++ (has a large market share on mobile)Opera Mini: Opera Mini (2007) has a very interesting architecture, and is indeed using both C++ and Java. The browser is split into two parts, an ultra-thin (less than 100Kb) “viewer” client part and a server side responsible for rendering. The first uses Java and receives the page in the OBML format, while the latter reuses the 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 maintaining excellent response time. This obviously comes with a few sacrifices, such as JavaScript execution.(Friendly translation: Opera Mini (2007) has a very interesting architecture, which indeed uses both C++ and Java. The browser is divided into two parts, an ultra-thin (less than 100Kb) “viewer” client part and a server side responsible for rendering. The former uses Java and receives the page in OBML format, while the latter reuses the classic Opera (C++) rendering engine and Opera’s small screen rendering on the server. This allows Opera to penetrate various J2ME-enabled portable devices, like phones, while maintaining a good response time. This obviously requires some sacrifices, such as JavaScript execution.)Mosaic: The ancestor (now dead) C language
7. Email Clients
Microsoft Outlook: C++
IBM Lotus Notes: Java
Foxmail: Delphi
8. Software Development Integrated Environment/IDE
Microsoft Visual Studio: C++
Eclipse: Java (its graphical interface SWT is based on C/C++)
Code::Blocks: C++
Easy Language: C++
Volcano Chinese: C++Volcano Mobile: C++
9. Virtual Machines
Microsoft .Net CLR (the .NET virtual machine): C++
Java Virtual Machine (JVM): Java Virtual Machine: C++
10. ERP Software (Enterprise Applications)
SAP mySAP ERP: C, later mainly in “ABAP/4” languageOracle Peoplesoft: C++ -> Java
Oracle E-Business Suite: Java
11. Business Intelligence
Business Objects: C++
12. Graphics Processing
Adobe Photoshop: C++
The GIMP: C
13. Search Engines
Google: Assembly and C++, mainly C++
14. Famous Websites
eBay: C++ in 2002, later mainly migrated to JavaFacebook: C++ and PHPThis 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 from the use of C++, Facebook has adopted a LAMP architecture.(Friendly translation: This line is only about Facebook, not its plugins. Thanks to Facebook’s ORB/application server Thrift, plugins can be developed in many different technologies. Thrift contains a compiler written in C++. People on Facebook have written about Thrift: “Multi-language code generation is very suitable for search because it allows for application development in an efficient server-side language (C++) and allows Facebook’s PHP-based web application to make calls to the search service using Thrift PHP libraries.” Besides using C++, Facebook also adopts a LAMP architecture.)
Alibaba and Taobao: PHP -> C++/Java (mainly used)
15. Games
Assembly, C, C++StarCraft, Warcraft, CS, Age of Empires, KartRider, Legend, World of Warcraft… countless, count for yourself
All developed using C++. C++ is known for its proximity to the system, which provides the fastest execution speed. For example, if you have two friends playing “KartRider” written in VB, Java, and C++, you will finish the game written in C++ and find that your two friends haven’t even started yet; that is pretty laggy.
16. Compilers
Microsoft Visual C++ Compiler: C++Microsoft Visual Basic Interpreter, Compiler: C++Microsoft Visual C#: Compiler: C++gcc (GNU C compiler): Cjavac (Sun Java compiler): JavaPerl: C++PHP: C
17. 3D Engines
Microsoft DirectX: C++
OpenGL: C
OGRE 3D: C++
18. Web Servers
Apache: C and C++, mainly C
Microsoft IIS: C++Tomcat: Java
Jboss: Java
19. Email Services
Microsoft Exchange Server: C -> C++Postfix: ChMailServer: C++Apache James: Java
20. CD/DVD Burning
Nero Burning ROM: C++
K3B: C++
21. Media Players
Nullsoft Winamp: C++
Microsoft Windows Media Player: C++ 
22. Peer to Peer (P2P Software)
eMule: C++μtorrent: C++Azureus: Java (the graphical interface uses SWT based on C/C++, similar to Eclipse)
23. Global Positioning Systems (GPS)
TomTom: C++
Hertz NeverLost: C++Garmin: C++Motorola VIAMOTO: Stopped service in June 2007. Java.
24. 3D Engines
Microsoft DirectX: C++ (believed to be known by students who play games, the highest version now is DX11)OpenGL: COGRE 3D: C++
25. Server Software
Apache: CNginx: C
IIS: C
26. Other Related
OpenStack: Python
If you are over 18 years old and find learning [C language] too difficult? Want to try other programming languages, then I recommend you learn Python. The existing Python zero-based course worth 499 yuan is available for free for a limited time, limited to 10 places!
▲ Scan the QR code - Get it for free
Click to read the original text to learn more