Автор работы: Пользователь скрыл имя, 19 Февраля 2013 в 14:18, реферат
В данной работе приведена классификация языков программирования, рассмотрены основные языки программирования
Классификация языков программирования
Процедурное программирование - есть отражение фон Неймановской архитектуры компьютера. Программа, написанная на процедурном языке, представляет собой последовательность команд, определяющих алгоритм решения задачи. Основная идея процедурного программирования - использование памяти для хранения данных. Основная команда- присвоение, с помощью которой определяется и меняется память компьютера. Программа производит преобразование содержимого памяти, изменяя его от исходного состояния к результирующему.
Различают такие языки процедурного программирования:
Язык Фортран создан в начале 50-х годов 20-го века для программирования научно-технических задач;
Кобол – создан в конце 60-х годов 20-го века для решения задач обработки больших объемов данных, хранящихся на различных носителях данных;
Алгол (1960 год) –
это многоцелевой расширенный
язык программирования. В нем
впервые введены понятия «
В середине 60-х годов
20-го века был создан
Все перечисленные выше языки были ориентированы на различные классы задач, но они в той или иной мере были привязаны к конкретной архитектуре ЭВМ.
В 1963-1966гг был создан
многоцелевой универсальный
Язык Паскаль (PASCAL)
(1968-1971гг)- язык процедурного
К языкам процедурного
программирования можно
Язык СИ (начало 70-х
годов) также относится к
Объектно-ориентированное
программирование (ООП)
Объектно-ориентированное программирование (ООП) — это метод программирования, при использовании которого главными элементами программ являются объекты. В языках программирования понятие объекта реализовано как совокупность свойств (структур данных, характерных для данного объекта), методов их обработки (подпрограмм изменения их свойств) и событий, на которые данный объект может реагировать и, которые приводят, как правило, к изменению свойств объекта. Объединение данных и свойственных им процедур обработки в одном объекте, называется инкапсуляцией и является одним из важнейших принципов ООП.
Другим фундаментальным понятием является класс. Класс это шаблон, на основе которого может быть создан конкретный программный объект, он описывает свойства и методы, определяющие поведение объектов этого класса. Каждый конкретный объект, имеющий структуру этого класса, называется экземпляром класса.
Следующими важнейшими принципами ООП являются наследование и полиморфизм. Наследование предусматривает создание новых классов на базе существующих и позволяет классу потомку иметь (наследовать) все свойства класса – родителя.
Полиморфизм означает, что рожденные объекты обладают информацией о том, какие методы они должны использовать в зависимости от того, в каком месте цепочки они находятся.
Другим важнейшим принципом
ООП является модульность – объекты
заключают в себе полное определение
их характеристик, никакие определения
методов и свойств не должны располагаться
вне его, это делает возможным
свободное копирование и
Наиболее современными языками программирования являются С++ и Java. С середины 90-х годов многие объектно–ориентированные языки реализуются как системы визуального проектирования, в которых интерфейсная часть программного продукта создается в диалоговом режиме, практически без написания программных операторов. К объектно – ориентированным системам визуального проектирования относятся Visual Basic, Delphi, C++ Builder, Visual C++. Язык VBA (Visual Basic for Application) – язык приложений Microsoft Office (Excel, Word, Power Point и др). VBA соблюдает основной синтаксис языка и правила программирования языков Basic – диалектов, позволяет создавать макросы для автоматизации выполнения некоторых операций и графический интерфейс пользователя, интеграцию между различными программными продуктами.
Декларативные языки программирования
К ним относятся функциональные и логические языки программирования. Функциональное программирование- это способ составления программ, в которых единственным действием является вызов функции. В функциональном программировании не используется память, как место для хранения данных, а, следовательно, не используются промежуточные переменные, операторы присваивания и циклы. Ключевым понятием в функциональных языках является выражение. Программа, написанная на функциональном языке, представляет собой последовательность описания функций и выражений. Выражение вычисляется сведением сложного к простому. Все выражения записываются в виде списков. Первым языком стал язык Лисп (LISP, LIST Processing- обработка списков) создан в 1959г. Этот язык позволяет обрабатывать большие объемы текстовой информации. Логическое программирование- это программирование в терминах логики. В 1973 году был создан язык искусственного интеллекта Пролог (PROLOG) (Programming in Logic). Программа на языке Пролог строится из последовательности фактов и правил, затем формулируется утверждение, которое Пролог пытается доказать с помощью правил. Язык сам ищет решение с помощью методов поиска и сопоставления, которые в нем заложены. Логические программы не отличаются высоким быстродействием, так как процесс их выполнения сводится к построению прямых и обратных цепочек рассуждений разнообразными методами поиска.
Обзор языков программирования
Ассемблер
Языки программирования компьютеров делятся на 2 основные группы:
1) языки низкого уровня;
2) языки высокого уровня.
К языкам низкого уровня
относятся языки Ассемблера. Свое
название они получили от имени системной
программы Ассемблер, которая преобразует
исходные программы, написанные на таких
языках, непосредственно в коды машинных
команд. Частями здесь служат операторы,
а результатом сборки последовательность
машинных команд Язык Ассемблера объединяет
в себе достоинства языка машинных
команд и некоторые черты языков
высокого уровня. Ассемблер обеспечивает
возможность применения символических
имен в исходной программе и избавляет
программиста от утомительного труда
(неизбежного при
Ассемблер позволяет также
гибко и полно использовать технические
возможности компьютера, как и
язык машинных команд. Транслятор исходных
программ в Ассемблере проще транслятора,
требующегося для языка программирования
высокого уровня. На Ассемблере можно
написать столь же эффективную по
размеру и времени выполнения
программу, как и программу на
языке машинных команд. Это достоинство
отсутствует у языков высокого уровня.
Этот язык часто применяют для
программирования систем реального
времени, технологическими процессами
и оборудованием, обеспечение работы
информационно-измерительных
Паскаль
Язык программирования Паскаль был разработан профессором кафедры вычислительной техники Швейцарского Федерального института технологии Николасом Виртом в 1968 году как альтернатива существующим и все усложняющимся языкам программирования, таким, как PL/1, Algol, Fortran. Интенсивное развитие Паскаля привело к появлению уже в 1973 году его стандарта в виде пересмотренного сообщения, а число трансляторов с этого языка в 1979 году перевалило за 80. В начале 80-х годов Паскаль еще более упрочил свои позиции с появлением трансляторов MS-Pascal и Turbo-Pascal для ПЭВМ. С этого времени Паскаль становится одним из наиболее важных и широко используемых языков программирования. Существенно то, что язык давно вышел за рамки академического и узко профессионального интереса и используется в большинстве университетов высокоразвитых стран не только как рабочий инструмент пользователя. Важнейшей особенностью Паскаля является воплощенная идея структурного программирования. Другой существенной особенностью является концепция структуры данных как одного из фундаментальных понятий.
Основные причины популярности
Паскаля заключаются в
- простота языка позволяет
быстро его освоить и
- развитые средства
- наличие специальных
методик создания трансляторов
с Паскаля упростило их
- оптимизирующие свойства
трансляторов с Паскаля
- в языке Паскаль реализуются
идеи структурного
Си
Сотрудник фирмы Bell Labs Денис Ритчи создал язык Си в 1972 году во время совместной работы с Кеном Томпсоном, как инструментальное средство для реализации операционной системы Unix, однако популярность этого языка быстро переросла рамки конкретной операционной системы и конкретных задач системного программирования. В настоящее время любая инструментальная и операционная система не может считаться полной если в ее состав не входит компилятор языка Си. Ритчи не выдумывал Си просто из головы – прообразом служил язык Би разработанный Томпсоном. Язык программирования Си был разработан как инструмент для программистов-практиков. В соответствии с этим главной целью его автора было создание удобного и полезного во всех отношениях языка.
Си является орудием системного программиста и позволяет глубоко влезать в самые тонкие механизмы обработки информации на ЭВМ. Хотя язык требует от программиста высокой дисциплины, он не строг в формальных претензиях и допускает краткие формулировки.
Си – современный язык.
Он включает в себя те управляющие
конструкции, которые рекомендованы
теорией и практикой
Си – мощный и гибкий язык. Большая часть операционной системы Unix, компиляторы и интерпретаторы языков Фортран, Паскаль, Лисп, и Бейсик написаны именно с его помощью.
Си – удобный язык. Он достаточно структурирован, чтобы поддерживать хороший стиль программирования и вместе с тем не связан жесткими ограничениями. В некотором смысле язык Си – самый универсальный, т.к. кроме набора средств, присущих современным языкам программирования высокого уровня (структурность, модульность, определенные типы данных), в него включены средства для программирования практически на уровне ассемблера. Большой набор операторов и средств требуют от программиста осторожности, аккуратности и хорошего знания языка со всеми иго преимуществами и недостатками.
Си++
Язык C++ появился в начале 80-х годов. Созданный Бьерном Страуструпом с первоначальной целью избавить себя и своих друзей от программирования на ассемблере, Си или различных других языках высокого уровня.
По мнению автора языка, различие
между идеологией Си и C++ заключается
примерно в следующем: программа
на Си отражает “способ мышления”
процессора, а C++ - способ мышления программиста.
Отвечая требованиям
В отличие от традиционных
структур Си и Паскаля, членами класса
являются не только данные, но и функции.
Функции – члены класса имеют
привилегированный доступ к данным
внутри объектов этого класса и обеспечивают
интерфейс между этими