Дисциплине введение в специальность. Основные понятия и виды языков программирования, страница 4

            2.7. Язык C

Один из самых популярных сегодня языков с незамысловатым названием C (читается как буква английского алфавита C — си) создан в 1972 г. Деннисом Ритчи. Язык C был разработан для программирования в новой малоизвестной на тот момент операционной системе UNIX. Он явился последователем практически неизвестного языка B. Язык C считается наследником языков Algol и Pascal, поскольку вобрал в себя многие их черты; как и они, это процедурный язык для структурного программирования. Одна из отличительных особенностей C — то, что при его создании не ставились сложные концептуальные цели, такие, как получение универсального языка для записи вычислений (FORTRAN), академического языка для процедурного программирования (Algol), дидактического, учебного языка (Pascal). Язык  C разработан профессиональными программистами как удобный для них язык.

Поскольку язык C — результат труда не комитетов и ученых, а программистов, пишущих реальные программы,  в нем были учтены практически все моменты, которые мешали нормальному использованию других языков при создании сложных систем. Вместе с языком была создана стандартная библиотека основных функций, облегчающих работу программиста, снимающих с него заботу о написании тривиальных действий и позволяющих сосредоточиться над программой. Причем библиотека основных функций вошла в описание языка, т.е. явилась его неделимой частью, и каждый программист мог быть уверен, что  на любой платформе, где есть компилятор C, есть и данная библиотека.

По сравнению с языком Pascal язык C обладал большей гибкостью при выборе разработчиками средств создания программ. Для эффективности стало возможным пожертвовать строгой концепцией структурного программирования и написать программу, используя нетривиальные и временами опасные расширения.

В языке C не только появились новые конструкции, но и прошли доработку старые. С точки зрения управляющих структур ничего кардинального внесено не было, но новые операторы позволили более компактно записать существующие программы, их «смысл» стал ближе машинному коду.

               2.8.Объектно-ориентированные языки программирования

               2.8.1. SmallTalk

В версиях SmallTalk-72 и SmallTalk-74 были заложены основы объектно-ориентированного подхода, но не было еще механизма наследования классов (такой язык — язык с классами, но без наследования — можно назвать объектным языком программирования в противовес объектно-ориентиро-ванному).

     SmallTalk представлял собой не только язык программирования, но и целую среду разработки с редактором текста, средствами для просмотра иерархии класса, библиотеками графического пользовательского интерфейса. Его версия SmallTalk-80 получила широкое признание и была перенесена на многие компьютерные платформы.

          2.8.2. Object Pascal

Язык программирования Object Pascal был включен в 1986 г. в среду разработки MPW (Macintosh Programmer’s Workshop) для компьютера Macintosh. Этот язык явился первым объектно-ориентированным  языком разработки для персонального компьютера. Он не только представлял программисту удобный инструментарий, все необходимые библиотеки, но и позволял воспользоваться всеми преимуществами объектно-ориентированного подхода без потери производительности программы.

В то же время для облегчения языка из него были убраны многие возможности, такие, как множественное наследование (класс «журнал» является наследником нескольких классов: «учетная единица», «многотомное издание» и «сборник»), глобальные функции и переменные класса. Например, общее количество книг в библиотеке можно определить как глобальную переменную класса «учетная единица».

          2.8.3. C++

На базе языков C и Simula Бьёрном Страуструпом, сотрудником AT&T Bell Laboratories, был создан язык «C с классами». Потом на его основе разработали настоящий объектно-ориентированный язык C++, который поддерживает одиночное наследование, перегрузку методов, строгую типизацию, полиморфизм.

В начале XXI в. язык C++ является одним из самых популярных языков программирования. Компиляторы  этого языка и системы программирования (как коммерческие, так и бесплатные, с открытым кодом) существуют практически на всех компьютерных платформах.

          2.8.4. Java

Язык Java зародился как специализированный язык для разработки программного  обеспечения встроенных компьютеров.

В 90-х гг.  ХХ в. сотрудник фирмы Sun Microsystems Патрик Нотон в ходе работы по поддержанию большого количества однотипных программ  для различных устройств начал испытывать разочарование. Когда он уже собирался покинуть компанию и перейти на другую работу, ему предложили составить проект решения возникшей проблемы. Данный документ неожиданно нашёл поддержку не только у других инженеров компании, но и у её  руководства. Сразу была создана группа по разработке специального объектно-ориентированного языка для встроенных систем.

Особенностью нового языка стало то, что он компилировался не в машинный код для каждого конкретного устройства, а в специальный промежуточный код для определённой машины. Во встраиваемых  системах существовала специальная среда выполнения, которая обеспечивала функциональность этой машины и позволяла воспринимать полученный код без  перекомпиляции.

Для переноса получившейся программы на другую компьютерную платформу (конечно, такую, на которой существует соответствующая среда выполнения) её не надо перекомпилировать, поскольку двоичный код не зависит от процессора и будет выполняться специальным интерпретатором.