Языки программирования высокого уровня разработаны для быстроты и удобства использования программистом. Основная черта таких языков - это абстракция, то есть введение смысловых конструкций, которые кратко описывают такие структуры данных и операции над ними, описания которых очень длинные и сложные для понимания на машинном коде (или другом низкоуровневом языке программирования). Наиболее распространёнными языками программирования подобного типа являются C++, Visual Basic, Java, Python, Ruby, Perl, Pascal, PHP. Языкам высокого уровня свойственно умение работать с комплексными структурами данных. В большинство из них встроена поддержка строковых типов, объектов, операций файлового ввода-вывода и т. п.
В последнее десятилетие активное развитие получают языки программирования с объектно-ориентированными возможностями. Объектно-ориентированный подход к проектированию сложных программных систем стал безусловным стандартом, поскольку способствует лучшей управляемости проектом на всех стадиях разработки, тестирования и внедрения.
Объектно-ориентированное программирование (ООП) - парадигма программирования, в которой основными концепциями являются понятия объектов и классов. ООП в настоящее время является абсолютным лидером в области прикладного программирования.
Одним из наиболее распространенных объектно-ориентированных языков высокого уровня является С++, созданный Бьерном Страуструпом в начале 1980-х годов. Язык С++ полностью унаследовал и расширил возможности языка Си, который используется в задачах системного программирования. К достоинствам языка С++ можно отнести кроссплатформенность; возможность работы на низком уровне с памятью, адресами, портами; возможность создания обобщенных алгоритмов для разных типов данных, их специализация, и вычисления на этапе компиляции, используя шаблоны.