The Mozilla Firefox browser is considered to be one of the best web browsing programs. At the heart of the "fire fox" is Gecko - a multifunctional "engine", distributed under free licenses.
Instructions
Step 1
The Firefox browser consists of components written in C and C ++. The main component of the software package - the Gecko "engine" - consists entirely of code written in the second of these languages. Most of the source code of both the "engine" and the browser as a whole is subject to the so-called triple licensing. This means that a person who wants to use the developments of programmers has the right to independently choose the most convenient license for him: MPL, GPL or LGPL. But code is one thing, and trademarks are another. Not all developers are satisfied with their terms of use, so some of them have to rename their browser. For example, in Debian it is called IceWeasel - "ice ferret".
Step 2
The Gecko component supports not only the classic HTML4 markup language, but many new open web standards as well. Among them are XHTML, HTML5 (partially), CSS, JavaScript, XML. Thanks to this, Firefox was the third after Opera and Chrome to pass the Acid3 test with a score of 100. True, this happened after the verification of the correctness of rendering fonts in SVG files was canceled.
Step 3
But the "engine" is only concerned with decoding the page code and converting it into an image that the user sees on the screen. The program, whether it be a browser or a highly specialized application, interacts, on the one hand, with the user, providing a dialogue with him through the menu system, and on the other, with the "engine", passing commands to him through an interface called an API (application programming interface), and through it, receiving in response the information that you want to display. Thanks to this, not only several other browsers are based on Gecko, but, for example, the Picasa photo processing application.
Step 4
Firefox wouldn't be itself if it didn't support plugins. This applies not only to Java and Flash, but also to small add-ons developed specifically for this browser and designed to perform a variety of actions - from displaying the weather forecast to speech synthesis. Interaction with them is also carried out at the API level. Programmers write plugins in a variety of languages, including JavaScript and XUL (a kind of XML). The browser's built-in add-on manager allows you to quickly add and remove plugins.
Step 5
Because Firefox is written entirely in C and C ++, it is cross-platform. This means that it can be compiled to run on a variety of operating systems. These include not only Linux, BSD, Mac OS X and Windows, but also exotic software platforms such as RISC OS or HP-UX.