Это короткая статья, которая пытается охватить краткий обзор упомянутых языков и предназначена для начинающих.

Javascript
- Динамический
// hello.js var a = ‘hello’; console.log(a);
- интерпретируется
$ node hello.js hello
- Выполняется на движке Javascript (обычно имеет два компонента кучи памяти и стека вызовов), он может быть в браузере (SpiderMonkey) или на бэкэнде (движок Chrome V8).
- Он однопоточный и имеет модель параллелизма, основанную на «цикле событий».
- Объектно-ориентированное программирование (с использованием наследования прототипов)
let animal = {
eats: true,
walk() {
alert("Animal walk");
}
};
let rabbit = {
jumps: true,
__proto__: animal
};
// walk is taken from the prototype
rabbit.walk(); // Animal walk
- Автоматическое управление памятью
- Известен своим простым и процедурным программированием, легковесностью
- Печально известен своим дизайном и некоторыми ошибками
// true
console.log(0=="0")
// returns as expected
return {
'ok': false
};
// returns undefined
return
{
'ok': false
};
- Полезно для интерфейсных приложений (веб-приложений и мобильных приложений)
- Полезно для внутренних приложений (приложений с интенсивным вводом-выводом) из-за его параллельной модели.

Ресурсы для изучения JS
https://www.udemy.com/share/10008CA0UZdl9UTHg=/
Питон
- Динамический
#!/usr/bin/env python3
# hello.py
message = 'hello'
print(hello)
- интерпретируется
$ python hello.py hello

- CPython — интерпретатор по умолчанию.
- Использует частную кучу для хранения всех объектов и структур данных.
- Вы можете писать модули расширения на таких языках, как C, C++
- Поддерживает многопоточность, но не параллельное выполнение из-за GIL
- Известен своим чистым синтаксисом, идиоматическим подходом и элегантными функциями, такими как модули, декораторы, включения, генераторы, магические методы
- Печально известный своей производительностью, GIL
- Полезно для сценариев и инструментов
- Полезно для создания поддерживаемых приложений
- Полезно для проектов по науке о данных (доступно множество библиотек, таких как numpy, pandas, scipy, matplotlib, scikit-learn)
- Полезно для прототипирования
Ресурсы для изучения Python
Голанг
- Статически типизированный
// hello.go
package main
import "fmt"
func main(){
var msg string = "hello"
fmt.Println(msg);
}
- Скомпилировано (компилятор работает быстро)
$ go build hello.go $ ./hello hello
- Встроенное управление памятью
- C-подобный синтаксис
- Не поддерживает объектно-ориентированное программирование.
- Известен своей простотой, параллелизмом и облегченной системой типов.

- Печально известен отсутствием многих функций современного языка.
- Полезно для системного программирования, ресурсоемких приложений, небольших микросервисов.
- Низкое использование ЦП и памяти
Ресурсы для изучения Go
C++

- Статически типизированный
// hello.cpp
#include <iostream>
using namespace std;
// main() is where program execution begins.
int main() {
char msg[] = "hello";
cout << msg << endl;
return 0;
}
- Скомпилировано
$ g++ hello.cpp $ ./a.out hello
- Нет автоматического управления памятью, используется стек и куча для хранения различных сущностей.
- Объектно-ориентированный
// Base class
class Shape {
public:
void setWidth(int w) {
width = w;
}
void setHeight(int h) {
height = h;
}
protected:
int width;
int height;
};
// Derived class
class Rectangle: public Shape {
public:
int getArea() {
return (width * height);
}
};
- Известен производительностью и широко используемым языком
- Печально известный из-за времени разработки, отсутствия автоматического управления памятью или сборки мусора, требует много предварительных знаний и опыта, чтобы делать вещи оптимальным образом.

- Полезно для создания ресурсоемких приложений
- Полезно для программирования игр
- Низкое использование ЦП и памяти
Ресурсы для изучения C++
Основы C++
Контекст Добро пожаловать в раздел «Введение в C++. Меня зовут Кейт Грегори, и я хотела бы представиться, рассказав людям…www.pluralsight.com»
Вывод
Каждый из этих языков программирования широко используется для разных целей. Я бы порекомендовал вам пройти их все.

Изучение разных языков может помочь вам лучше понять программирование.
Удачного кодирования и отладки :)
