This article contains the basic terms used on the site and their explanation.

Database (DB)

One of the definitions of the term says that a database is a set of data organized in accordance with certain rules and maintained, characterizing the current state of a certain subject area and used to meet the information needs of users.

Simply put, a database contains structured data used in your project. All user accounts, orders, delivery addresses, products, categories, articles and news are stored in the database.

There are many different kinds of databases that are used in different situations. However, most often, when talking about a database, they mean not so much the database itself, but the database management system.

A database management system (DBMS) is a set of software and linguistic tools that manage the creation and use of databases. Those the DBMS is a kind of software implementation of the approach to storing, creating, modifying and deleting data in the database.

The most popular DBMS, according to the frequency of use in projects, are:

  • mySQL (free, great for small to medium projects);
  • PostgreSQL (free, good for projects of any size);
  • Microsoft SQL Server (paid, suitable for medium and large projects);
  • Oracle Database (paid, suitable for medium and large projects).

Content management system (CMS)

Content management system – an information system used to provide and organize a joint process of creating, editing and managing content (content).

In simpler terms, CMS is a system that allows you to edit the contents of a project online, without having to edit the program code. Using CMS, a simple user can change the content of site blocks, add news, articles and products, edit system messages, and much more.

Typically, a CMS is built around an internal framework that dictates features, rules, and limitations. Due to this, all modern CMS use a modular structure, allowing you to increase the functionality by installing additional modules.

A website created on the basis of a CMS usually consists of:

  1. CMS itself;
  2. a set of additional modules that implement the desired functionality;
  3. site theme which is a site design template;
  4. the site content itself.

The most popular CMS: WordPress, Drupal, PrestaShop.

Framework

The structure or framework of a software system that facilitates the development and integration of the different components of a large software project. Thus, the framework includes everything necessary for the development of a new project and is what is the basis, the starting point for a future software project.

We can also talk about a framework approach to building programs, where any system configuration is built from two parts: the first, constant part is a framework that does not change from configuration to configuration and carries nests that house the second, variable part – replaceable modules (or functional extension points).

When developing a project, the developer is faced with a number of routine tasks of the same type, for which, however, high-quality implementation is very important. For example, almost every project requires:

  • database access and data management;
  • routing requests between system components;
  • form data validation;
  • rendering typical HTML elements (tables, lists, forms, etc.);
  • registration, user authorization and password recovery;
  • export data to Excel;
  • etc.

All this can be done from scratch or you can use a ready-made framework, which not only has this functionality in the form of libraries, but everything is grouped into a single structure that defines the boundaries and options for the interaction of all components.

Popular frameworks will be listed in the section below.

Programming language

A programming language is a formal sign system designed to write computer programs. A programming language defines a set of lexical, syntactic, and semantic rules that define the appearance of a program and the actions that a computer under its control will perform.

The easiest way to understand what a programming language is is by comparing it with foreign languages. Someone knows and writes in French, someone in English, someone in several at once. So it is with programming languages, depending on the language – there are rarely used, but there are very popular ones.

Of the popular languages ​​used in web programming, the following should be briefly mentioned.

PHP

PHP is an interpreted scripting programming language. In the field of web programming, PHP is by far one of the most common due to its simplicity, speed of execution and rich functionality. PHP is distributed freely and is supported by all hosting companies.

Probably the most popular PHP frameworks are Laravel, Yii, Symfony, Zend.

Ruby

Ruby is a high-level interpreted scripting language for fast and convenient object-oriented programming. Ruby has a large number of text processing tools for solving system problems. Ruby is a completely free programming language that can be copied, modified, and redistributed. Hosting for a project is more difficult to find than for PHP projects and may be a little more expensive.

The most popular framework is Ruby on Rails. Usually speaking about development in Ruby, they mean exactly the use of the Ruby on Rails framework.

C#

C# is an object-oriented programming language from Microsoft. It is designed to generate server code in ASP pages in Web applications within the Microsoft .NET platform.

The Microsoft .NET framework is a software platform for building various applications. In this case, not only C#, but also various other programming languages ​​can be used. For example, the main ones are J#, VB .NET, JScript .NET, C++/CLI, F#.

JavaScript

JavaScript is a programming language from Netscape that is an implementation of the ECMAScript standard. Microsoft has released similar versions of the language called JScript, so JavaScript is often used to refer to any version of the language, including Microsoft JScript.

In most cases, when JavaScript is mentioned, it refers to the so-called client-side JavaScript, the interpreter of which is built into Web browsers. However, JavaScript was originally designed as a general-purpose programming language for embedding and scripting in any application.

Recently, more and more programmers are using jQuery instead of pure JavaScript. jQuery is a JavaScript library that focuses on the interaction between JavaScript and HTML. The jQuery library makes it easy to access any page element (DOM), access and manipulate the attributes and content of DOM elements.

HTML

HTML (HyperText Markup Language) is the standard markup language for documents on the Internet. Most web pages contain descriptions of the markup in HTML. The HTML language is interpreted by browsers and rendered as a document in a human-readable form.

There are many versions of this HTML markup language: 2.0, 3.2, 4.0, 4.01, 5, 5.1. Various new features appear from version to version. At the same time, it should be understood that a site written under HTML 5 standards requires appropriate support for the standard from the browser. In browsers without HTML 5 support (old versions), such a site will not work or will work with errors.

CSS

CSS (Cascading Style Sheets, cascading style sheets) is a formal language for describing the appearance of a document written using a markup language.

It is mainly used as a means of describing, designing the appearance of web pages written using HTML markup languages.

As in the case of HTML, there are several versions of CSS: 1.0, 2.0, 2.1, 3.0, 4.0. Also, the larger the version, the more features, but support from the client browser is required. CSS3, for example, allows you to create animations on websites without the use of other technologies such as JavaScript or Flash.

Popular set of tools for building websites and web applications is Twitter Bootstrap. It includes HTML and CSS design templates for typography, web forms, buttons, labels, navigation blocks and other web interface components, including JavaScript extensions. In fact, this is a kind of HTML and CSS framework for creating website design templates.