Автор работы: Пользователь скрыл имя, 06 Сентября 2013 в 20:47, реферат
Цель работы – исследовать виды языков программирования тенденцию развития, иерархию и способы программирования.
В процессе выполнения работы необходимо было проделать следующее.
Изучение языка Ассемблера
Изучение языков высокого уровня
Изучение объектно-ориентированных языков
Изучение парадигм программирования
ВВЕДЕНИЕ 3
1. ЯЗЫК АССЕМБЛЕРА 4
2.ЯЗЫКИ ВЫСОКОГО УРОВНЯ................................................................................................8
2.1 FORTRAN................................................................ ........ ... ....... .........................................10
2.2 LISP..................................................................... ...... .......... ........................ . ......................12
3. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЕ ЯЗЫКИ 14
3.1 ЯЗЫК С++ 15
4. ПАРАДИГМЫ ПРОГРАММИРОВАНИЯ: 18
4.1 Процедурное программирование 18
4.2-Модульное программирование 18
4.3-Абстракция данных 18
4.4-Объектно-ориентированное программирование 19
4.5-Поддержка абстракции данных 21
4.6-Поддержка объектно-ориентированного программирования 21
ЗАКЛЮЧЕНИЕ 23
ЛИТЕРАТУРА.............................................................................................................................239
К языкам высокого уровня относят:
В качестве примеров рассмотрим:
2.1 FORTRAN
FORTRAN — первый язык программирования высокого уровня,
имеющий транслятор. Создан в период
с 1954 по1957 год группой программистов
под руководством Джона Бэкуса в корпорации IBM (язык Планкалкю
Современный Фортран (Fortran 95 и Fortran 2003) приобрёл черты, необходимые для эффективного программирования для новых вычислительных архитектур, позволяет применять современные технологии программирования, в частности, ООП.
Fortran имеет достаточно большой набор встроенных математических функций, поддерживает работу с целыми, вещественными и комплексными числами высокой точности. Выразительные средства языка изначально были весьма бедны, поскольку Fortran был одним из первых языков высокого уровня. В дальнейшем были добавлены многие лексические конструкции, характерные для структурного, функционального и даже объектно-ориентированного программирования.
Структура
программ изначально была ориентирована
на ввод с перфокарт и имела
ряд удобных именно для этого
случая свойств. Так, 1-я колонка служила
для маркировки текста как комментария
(символом C), с 1-й по 5-ю располагалась
область меток, а с 7-й по 72-ю
располагался собственно текст оператора
или комментария. Колонки с 73-й
по 80-ю могли служить для
Именно поэтому в стандарт, начиная с Fortran 90, в добавление к фиксированному формату исходного текста появился свободный формат, который не регламентирует позиции строки, а также позволяет записывать более одного оператора на строку. Введение свободного формата позволило создавать код, читабельность и ясность которого не уступает коду, созданному при помощи других современных языков программирования, таких как C или Java.
Своего рода «визитной карточкой» старого Fortran является огромное количество меток, которые использовались как в операторах безусловного перехода GOTO, так и в операторах циклов, и в операторах описания форматного ввода/вывода FORMAT. Большое количества меток и операторов GOTO часто делало программы на Фортране трудными для понимания.
Поначалу переносимость для Fortran была весьма насущной проблемой, потому что не существовало ни одного единого стандарта и даже справочной информации от IBM. И компьютерные фирмы соперничали между собой, обеспечивая несовместимость для разных компиляторов. Исправило дело появление стандартов. Стандарт 1966 года устанавливал синтаксис и семантику, но продавцы продолжали внедрять несовместимые расширения. Осмотрительные программисты понимали, что использование несовместимых расширений вызовет проблемы переносимости и зачастую использовали программы наподобие «The PFORT Verifier» для выявления несовместимых расширений.
Несовместимые расширения были не единственной проблемой. Существовал ряд проблем с численными вычислениями. Позже была развита и внедрена практически универсальная идея двоичной арифметики с плавающей запятой.
Доступ к исполняемой среде (например, к командной строке, переменным среды) был весьма затруднителен, пока на это не обратили на это внимание в стандарте 2003 года.
Сейчас относительно просто реализовать полностью переносимую программу на Fortran.
Однако современный Fortran избавлен от избытка меток за счет введения таких операторов, как DO … END DO, DO WHILE, SELECT CASE. Также к положительным чертам современного Fortran стоит отнести большое количество встроенных операций с массивами и гибкую поддержку массивов с необычной индексацией.
2.2 LISP
LISP (от англ. LISt Processing language — «язык обработки списков»; современное написание: Lisp) — семейство языков программирования, программы и данные в которых представляются системами линейных списков символов. Лисп является вторым в истории (после Фортрана) используемым по сей день высокоуровневым языком программирования. Создатель Лиспа Джон Маккарти занимался исследованиями в области искусственного интеллекта (в дальнейшем ИИ) и созданный им язык по сию пору является одним из основных средств моделирования различных аспектов ИИ.
Традиционный Лисп имеет динамическую систему типов. Язык является функциональным, но многие поздние версии обладают
также чертами императивности, к тому же, имея полноценные
средства символьной обработки становится возможным реализовать объектно-
Одной из базовых идей языка Lisp является представление каждого символа как узла многокоординатной символьной сети; при этом координаты, свойства, уровни сети записаны в так называемых слотах символа. Основные слоты:
Основной механизм языка Лисп — инкапсулированная в список определяющая голова списка и подключённый к ней хвост списка, который рекурсивно также может быть списком. Лисп-машина способна воспринимать каждый поступающий на неё список на самом абстрактном уровне, например как мета-Лисп-машину, модифицирующую воспринимающую машину. В такой динамичной, высокоабстрактной среде можно реализовать как строго научные системы, так и неисчислимое множество программистских трюков и генераторов всевозможных машин.
Любая программа на языке Лисп состоит
из последовательности выражений (
Первые области применения языка Лисп были связаны с символьной обработкой данных и процессами принятия решений.
Наиболее популярный сегодня диалект Common Lisp является универсальным языком программирования. Он широко используется в самых разных проектах: Интернет-серверы и службы, серверы приложений и клиенты, взаимодействующие с реляционными и объектными базами данных, научные расчёты и игровые программы.
Одно из направлений использования языка Lisp — его использование в качестве скриптового языка, автоматизирующего работу в ряде прикладных программ:
Сферы применения языка Лисп многообразны: наука и промышленность, образование и медицина, от декодирования генома человека до системы проектирования авиалайнеров.
Объектно-ориентированные языки программирования (Visual BASIC, C++, Object Pascal, Java) — это новая ступень развития процедурных языков программирования. Они ориентированы на создание очень больших и сложных программ. Многие из этих языков созданы путем расширения синтаксических правил процедурного языка-предка.
Объектно-ориентированные языки вводят понятие программного объекта, содержащего как данные, так и средства их обработки (методы). Такое объединение называют инкапсуляцией. Объекты программы образуют иерархическую систему и могут наследовать методы и элементы данных у других объектов.
В современных Объектно-
Программы, написанные на объектно-ориентированном
языке программирования, обычно используют
событийный механизм управления. Различные
воздействия на программные объекты
рассматриваются как
3.1 ЯЗЫК С++
С++ в настоящее время считается господствующим языком, используемым для разработки коммерческих программных продуктов. В последние годы это господство слегка поколебалось вследствие аналогичных претензий со стороны такого языка программирования, как Java, но маятник общественного мнения качнулся в другую сторону, и многие программисты, которые бросили С++ ради Jаvа, в последнее время поспешили вернуться к своей прежней привязанности. В любом случае эти два языка настолько похожи, что, изучив один из них, вы автоматически осваиваете 90% другого.
С# — это новый язык, разработанный Мiсгоsоft для сетевой платформы. По существу С# является разновидностью С++, и несмотря на ряд принципиальных отличий, языки С# и С++ совпадают примерно на 90%. Вероятно, пройдет немало времени, прежде чем язык С# составит серьезную конкуренцию языку С++; но даже если это и произойдет, то знание языка С++ окажется существенным преимуществом.
С++ является языком программирования общего назначения. Естественная для него область применения - системное программирование, понимаемое в широком смысле этого слова. Кроме того, С++ успешно используется во многих областях приложения, далеко выходящих за указанные рамки. Реализации С++ теперь есть на всех машинах, начиная с самых скромных микрокомпьютеров - до самых больших супер-ЭВМ, и практически для всех операционных систем.