В данном видеоуроке мы поговорим об истории и развитии вычислительных машин и программирования; приведём классификацию языков программирования по методам, используемым при написании программ; разберём составляющие языков программирования и рассмотрим одни из популярных из них.
Ещё в древности люди пытались создать устройства, которые облегчили бы им процесс вычисления. Так, древние греки и римляне использовали устройство абак, что переводится как «счётная доска».
У китайцев такое устройство называлось «суанпань», а у японцев — «соробан». На Руси тоже применялось похожее устройство — «дощатый счёт».
В XVII веке Блез Паскаль создал механическое устройство — Паскалина, которое выполняло сложение и вычитание. В том же веке Вильгельм Лейбниц разработал ступенчатый вычислитель. В XIX веке Чарльз Бэббидж разработал механическую вычислительную машину. А программу для неё написала леди Ада Лавлейс.
Леди Ада Лавлейс по праву считается первым программистом. В честь неё был даже назван разработанный в 1980 году язык программирования — АДА, который массово использовался в США.
Российский математик и механик Пафнутий Львович Чебышев, в том же XIX веке, создал суммирующий аппарат с непрерывной передачей десятков, в котором была достигнута автоматизация выполнения арифметических действий.
В конце XIX века Герман Холлерит создал устройство — табулятор Холлерита — в котором числовая и буквенная информация, записанная на перфокарты, обрабатывалась автоматически.
А в XX веке Алан Тьюринг придумал устройство с программным управлением, пошаговыми действиями и памятью — «машину Тьюринга».
Алгоритм которой используют современные информационные системы. Однако его изобретение было только на бумаге, но оно стало моделью программируемого компьютера как вычислительного устройства, обрабатывающего данные с определённой последовательностью команд.
Но давайте разберёмся, что такое язык программирования?
Язык программирования — это формальная знаковая система, которая предназначена для описания алгоритмов. Это искусственный язык для разработки программ, которые выполняются на компьютере.
Программа — это некая последовательность команд (инструкций, шагов), которые обеспечивают реализацию конкретного алгоритма на компьютере.
Команда (инструкция, шаг) — это указание, которое определяет действие, для выполнения.
На данный момент существует огромное количество языков программирования.
Так как человеку понятнее оперировать словами, а не числами, то были созданы ассемблеры.
Это языки, в которых взамен численного обозначения команд используются слова или аббревиатуры. Но чтобы компьютер понял слова, под каждый язык программирования были разработаны трансляторы — это программы, осуществляющие преобразование программного кода на машинный.
Существуют две разновидности трансляции: компиляция и интерпретация.
Любой язык программирования имеет такие составляющие, как алфавит, словарь, синтаксис и семантика.
Приведём классификацию по методам, используемым при написании программ.
Итак, языки программирования можно разделить на процедурные и непроцедурные.
При процедурном программировании код можно разделить на подпрограммы: процедуры и функции. Описание алгоритма на таком языке представляется в виде последовательности операторов.
В непроцедурном программировании в явном виде указывается, какими свойствами должен обладать результат программы, но не говорится, каким способом он должен быть получен.
Процедурные языки программирования делятся на языки низкого уровня и высокого.
Языки низкого уровня направлены на конкретные команды определённого процессора и учитывают его особенности. Поэтому такие языки ещё называют машинно-зависимыми. С помощью таких языков удобно разрабатывать драйверы, системные программы и другое, так как программист имеет доступ ко всем возможностям процессора. К таким языкам относится Ассемблер.
Языки высокого уровня не учитывают особенности процессора и могут быть перенесены на другой компьютер. Такие языки называются ещё машинно-независимыми. Описание программы на таком языке максимально удобно для восприятия человека. К таким языкам относятся Fortran, Basic, Pascal и другие.
Непроцедурные языки программирования делятся на декларативные и объектно-ориентированные.
Декларативное программирование — это программирование, в котором задаётся спецификация решения задачи, то есть даётся описание того, что представляет собой проблема и какой результат ожидается.
Декларативные языки делятся на функциональные и логические.
В функциональном программировании программа состоит из совокупности функций, которые вызывают друг друга, и выражений, которые записываются в виде списка. Могут отсутствовать переменные. К таким языкам относятся Haskel, Lisp, Miranda и другие.
Логическое программирование основано на формальной логике и Булевой алгебре. Такие программы ориентированы на решение задач без конкретных алгоритмов. В них задаётся описание условий задачи и логических отношений, по которым система программирования сама рассчитывает возможные следствия и взаимосвязи введённых данных и формул. Представителем логического языка программирования является Prolog.
Объектно-ориентированное программирование — это такой подход проектирования программы, который базируется на представлении программы в виде совокупности объектов. Объект — это некая программная сущность, у которой есть свойства и поведение. Например, объект — человек, у него есть фамилия, имя, отчество, он может спать, читать, есть.
К таким языкам относятся Simula, С++, C#, Delphi, Java и многие другие.
Объектно-ориентированный язык программирования основан на том, что предметную область удобно описать в виде совокупности взаимодействующих объектов.
Мы рассмотрели классификацию языков программирования по методам, используемых при написании программ. Но не забывайте: языков большое количество, и классифицировать их можно по многим признакам.
А теперь давайте немного поговорим о языках программирования, которые наиболее популярны и чаще используются в современном мире.
С++.
Высокоуровневый компилируемый язык программирования, подходящий для разработки различный приложений. Часто используется при создании операционных систем, драйверов, антивирусов, утилит. Кстати, большая часть операционной системы Windows написана как раз на С++. Данный язык также широко применяется для разработки игр с интенсивной визуализацией.
Python.
Также высокоуровневый язык программирования. Довольно мощный, но простой для изучения. Применяется для написания прикладных приложений и веб-разработки. Синтаксис языка программирования Python максимально облегчён, что даёт возможность выучить его за небольшой промежуток времени.
JavaScript.
Относительно простой объектно-ориентированный язык, предназначенный для создания небольших клиентских и серверных приложений для Internet. Программы на JavaScript называются скриптами. Скрипт — это небольшая программа, запускаемая сервером по специальному запросу, который поступает с веб-страницы для выполнения определённой задачи. JavaScript позволяет придать веб-странице интерактивности, например, анимировать изображение, скачивать и загружать файлы, управлять мультимедиа, реагировать на действия пользователя, показывать сообщения, отправлять сетевые запросы на удалённые сервера и многое другое.
PHP.
Распространённый скриптовый язык веб-программирования. Благодаря возможности применения PHP на любой операционной системе, его скорости выполнения, функциональности и простоте его используют практически все разработчики сайтов. Код PHP можно внедрять в HTML-код. С помощью PHP можно создавать динамические сайты, характеризующиеся конкретной логикой поведения, а также практически неограниченно расширить функционал сайта.
Java.
Является объектно-ориентированным языком общего назначения.
На Java разрабатываются приложения в различных сферах: веб-разработка, игры, мобильное программное обеспечение, программы для научных целей и многое другое.
C#.
Это современный язык программирования, который также является объектно-ориентированным. Синтаксис С# очень близок к C++ и Java. По сути, этот язык программирования является универсальным инструментом всех направлений разработки, это и веб, и мобильные, и десктопные приложения. На этом языке программирования можно написать практически всё что угодно.
SQL.
Декларативный язык, используемый для создания и изменения информации в реляционной базе данных, а также управления данными. Этот информационно-логический язык является самым широко используемым лингвистическим средством для взаимодействия баз данных с прикладными приложениями.
В описании языков говорилось, что некоторые используются для создания веб-приложений. Имеет смысл рассмотреть, что такое HTML и CSS.
HTML — это язык разметки гипертекста, применяемый для создания веб-страниц. Браузер обрабатывает HTML и отображает его в виде документа в форме, удобной для человека. HTML можно назвать средством логической разметки страницы.
CSS — это каскадные таблицы стилей. Применяется для описания внешнего вида HTML-документа, тем самым минимизируя объём кода. С помощью CSS мы задаём позиционирование элементов веб-страницы, шрифт, цвета элементов, отступы и многое другое.
Мы рассмотрели несколько распространённых языков программирования, но, как уже упоминалось, их намного больше.
Мы живём во время стремительного развития информационных технологий. Спрос на программистов растёт. И если вы решите связать себя с программированием, нужно лишь выбрать язык, на котором вы хотите работать. И здесь как с иностранными языками: знаешь один — и проще выучить другой. Самое главное — начать!
После просмотра видеоурока предлагаем проверить полученные знания и пройти мультимедийный тест «Языки программирования». Удачи!