Скачать книгу

программирования, ориентированные на конкретный тип процессора, и, операторы которых были близки к машинному коду.

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

      При этом происходило смещение от программирования деталей к программированию компонентов, развитие инструментов программирования и возрастание сложности программных систем.

      Также развивался подход или стиль написания программ.

      В начале использовалось процеду́рное программи́рование, при котором последовательно выполняемые операторы собирались в подпрограммы.

      При этом данные и процедуры для их обработки формально не были связаны.

      Как следствие возрастания сложности программного обеспечения появилось структу́рное программи́рование – методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков.

      И наконец появилось объектно-ориентированное программирование – методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определённого класса, а классы образуют иерархию наследования.

      Событи́йно-ориенти́рованное программи́рование – парадигма программирования, в которой выполнение программы определяется событиями – действиями пользователя, сообщениями других программ и потоков, и событиями операционной системы.

      Компонентно-ориентированное программирование – парадигма программирования, опирающаяся на понятие компонента – независимого модуля исходного кода программы, предназначенного для повторного использования и развёртывания, и реализующегося в виде множества языковых конструкций.

      В 1960-х годах двумя наиболее популярными языками программирования были COBOL и Fortran.

      Эти языки следовали императивной парадигме, которая разбивала большие программы на более мелкие программы, называемые подпрограммами, которые похожи на методы в Java.

      В 1960-х, время обработки компьютера было дорогостоящим.

      Поэтому было важно максимизировать производительность обработки.

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

      С глобально доступными переменными все подпрограммы могли получить к ним доступ для выполнения необходимых вычислений.

      Однако при этом возникали некоторые проблемы.

      С глобальными данными возможно, что изменения в данных могут иметь побочные эффекты для программы.

      Иногда подпрограммы запускались с теми данными, которые были не такими, как ожидалось.

      Необходимость лучшего управления данными привела к изменениям в императивном программировании и появлению таких языков, как Algol 68 и Pascal в 1970-х годах.

      Была введена идея локальных переменных.

      Подпрограммы назывались процедурами, которые могут содержать вложенные процедуры.

      И каждая процедура могла иметь свои собственные переменные.

      Алгол

Скачать книгу