Java—an object-oriented programming language developed by Sun Microsystems (later acquired by Oracle). Java applications are usually translated into special bytecode, so they can run on any Java virtual machine, regardless of computer architecture. Date of official release—May 23, 1995. The advantage of this way of executing programs is the complete independence of the bytecode from the operating system and hardware, which allows you to run Java applications on any device for which there is a corresponding virtual machine. Another important feature of Java technology is a flexible security system, in which the execution of the program is completely controlled by the virtual machine. Any operation that exceeds the program's set permissions (such as attempting unauthorized access to data or connecting to another computer) causes an immediate abort.
Initially, the language was called Oak. It was developed by James Gosling for programming consumer electronic devices. Subsequently, it was renamed to Java and began to be used for writing client applications and server software. It is named after the Java coffee brand, which, in turn, received the name of the island of the same name (Java), so the official emblem of the language shows a cup of hot coffee. There is another version of the origin of the name of the language, associated with an allusion to a coffee machine as an example of a household device for programming which the language was originally created.
ASP.NET (Active Server Pages for .NET)—technology for creating web applications and web services from Microsoft. It is an integral part of the Microsoft .NET platform and an evolution of the older Microsoft ASP technology. At the moment, the latest version of this technology is ASP.NET. ASP.NET retains many similarities to the older ASP technology in appearance, making it relatively easy for developers to migrate to ASP.NET. At the same time, ASP.NET is very different internally from ASP because it is based on the .NET platform and therefore takes advantage of all the new features provided by this platform. After the release of Internet Information Services 4.0 in 1997, Microsoft began to explore the possibility of a new web application model that would satisfy complaints about ASP, especially those related to the separation of design from content, and that would allow writing "clean" code The job of developing such a model was assigned to Mark Anders, IIS team manager, and Scott Guthrie, who joined Microsoft in 1997. Anders and Guthrie developed the initial design within two months, and Guthrie coded the initial prototype during the 1997 Christmas break.
The original project was called "XSP"; Guthrie explained in a 2007 interview that "they always ask what the X stands for. At the time, it didn't mean anything. XML starts with it; XSLT starts with it. Everything cool starts with X, which is why we named it that.”[2] The XSP prototype was written in Java because Microsoft didn't have Java-like technology at the time. At that time, it was already assumed (not unreasonably, as it turned out later) that the Java license for Microsoft would not be renewed in 2003 (the license issued by Sun Microsystems expired in 2003). In 1999, it was decided to build a new platform based on the Common Language Runtime (CLR), since it, like Java, had OOP programming, garbage collection, and other features. Guthrie described the decision as a "huge risk" as the success of the new development was tied to the success of the CLR, which, like XSP, was in its early stages of development.
PHP(/pi:.eɪtʃ.pi:/ - Hypertext Preprocessor — "PHP: hypertext preprocessor"; originally Personal Home Page Tools «Tools for creating personal web pages» a general-purpose scripting language heavily used for developing web applications. It is currently supported by the vast majority of hosting providers and is one of the leading languages used to create dynamic websites. The language and its interpreter are being developed by a group of enthusiasts as part of an open source project. The project is distributed under its own license, which is incompatible with the GNU GPL. One of the strengths of PHP 3.0 was the ability to extend the core with additional modules. Subsequently, the interface for writing extensions attracted many third-party developers to PHP, working on their modules, which gave PHP the ability to work with a huge number of databases, protocols, and support a large number of APIs. A large number of developers led to the rapid development of the language and the rapid growth of its popularity. As of this version, the php acronym stands for "PHP: hypertext Preprocessor", instead of the deprecated "Personal Home Page".
By the winter of 1998, almost immediately after the official release of PHP 3.0, Andy Gutmans and Zeev Suraski began reworking the PHP core. The objectives included increasing the performance of complex applications and improving the modularity of the PHP code base. The new engine, called Zend Engine, successfully coped with the tasks and was first introduced in mid-1999. PHP 4.0, based on this engine and bringing with it a set of additional features, was officially released in May 2000. In addition to performance improvements, PHP 4.0 had several other key innovations such as session support, output buffering, safer ways of handling user input, and several new language constructs.
Front-end и back-end — terms in software engineering that distinguish according to the principle of separation of concerns between the presentation layer and the data access layer, respectively. Front-end — interaction interface between the user and the main hardware and software (back-end). Front-end and back-end can be distributed between one or more systems. In a software architecture, there can be many layers between the hardware and the end user, each of which can also have a front-end and a back-end. Front end — it is an abstraction that provides a user interface. For example, in software engineering, the Model-View-Controller architecture provides the front-end and back-end between the database, data processing components, and users.
The separation between front-end and back-end software systems simplifies development. Front (or client) side — it's any user controlled component and the back (server) side runs on the server. The confusion arises when someone has to apply front-end changes to files on the server side. Most HTML designers, for example, do not need to know the specifics of the server during site layout, and vice versa, back-end programmers do not need deep knowledge of Javascript, HTML and CSS.
In most cases, the exact definition of the line between verification and validation is not so important, and even more so speculation on the topic of which is which. It is important to shift the focus, for example, the developer reviewing the specification has more focus on the future, i.e. how to implement it. In an interview, the question often asked is "What is the difference between QA and testing?", or its variant "What is the difference between Quality Assurance and Quality Control?". Interesting but very few can explain the difference.
So, QC – part QA. In other words, Quality Assurance ensures the correctness and predictability of the process, while Quality Control ensures compliance control. Testing, in turn, ensures the collection of statistical data and their inclusion in documents created as part of the QC-process.