Языки программирования: понятие и виды

Автор работы: Пользователь скрыл имя, 06 Ноября 2010 в 21:53, Не определен

Описание работы

курсовой проект

Файлы: 1 файл

языки программирования .doc

— 718.50 Кб (Скачать файл)

     Любая программа на Лиспе состоит из последовательности выражений (форм). Результат работы программы состоит в вычислении этих выражений. Все выражения записываются в виде списков — одной из основных структур Лиспа, поэтому они могут легко быть созданы посредством самого языка. Это позволяет создавать программы, изменяющие другие программы или макросы, позволяющие существенно расширить возможности языка.

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

  1.   Бейсик

     В середине 60-х годов (1963 г.) в Дартмутском  колледже (США) был создан язык Бейсик (англ. BASIC от Beginner’s Allpurpose Instruction Code –  всецелевой символический код инструкций для начинающих). Со временем, когда стали появляться другие диалекты, этот «изначальный» диалект стали называть Dartmouth BASIC. Язык был основан частично на Фортран II и частично на Алгол-60, с добавлениями, делающими его удобным для работы в режиме разделения времени и, позднее, обработки текста и матричной арифметики. Первоначально Бейсик был реализован на мейнфрейме GE-265 с поддержкой множества терминалов. Вопреки распространённому убеждению, в момент своего появления это был компилируемый язык.

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

     

  1.   Форт

     В конце 60-х – начале 70-х годов  появился язык Форт (англ. FOURTH – четвёртый). Этот язык стал применяться в задачах управления различными системами после того, как его автор Чарльз Мур написал на нём программу, предназначенную для управления радиотелескопом Аризонской обсерватории.

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

  1.   Паскаль

     Появившийся в 1972 году язык Паскаль был назван так в честь великого французского математика XVII века, изобретателя первой в мире арифметической машины Блеза Паскаля. Этот язык был создан швейцарским учёным, специалистом в области информатики Никлаусом Виртом как язык для обучения методам программирования. Паскаль – это язык программирования общего назначения.

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

       Язык Паскаль учит не только  тому, как правильно написать  программу, но и тому, как правильно  разработать метод решения задачи, подобрать способы представления и организации данных, используемых в задаче. С 1983 года язык Паскаль введён в учебные курсы информатики средних школ США.

  1. Ада

     В 1983 году под эгидой Министерства Обороны  США был создан язык Ada. Язык замечателен  тем, что очень много ошибок может быть выявлено на этапе компиляции. Кроме того, поддерживаются многие аспекты программирования, которые часто отдаются на откуп операционной системе (параллелизм, обработка исключений). В 1995 году был принят стандарт языка Ada 95, который развивает предыдущую версию, добавляя в нее объекно-ориентированность и исправляя некоторые неточности. Оба этих языка не получили широкого распространения вне военных и прочих крупномасштабных проектов (авиация, железнодорожные перевозки). Основной причиной является сложность освоения языка и достаточно громоздкий синтаксис.

        Непосредственными предшественниками Ada являются Pascal и его производные, включая Euclid, Lis, Mesa, Modula и Sue. Были использованы некоторые концепции ALGOL-68, Simula, CLU и Alphard.

    Разработчики Ada прежде всего беспокоились о:

  • надежности и эксплуатационных качествах программ;  
  • программировании как разновидности человеческой деятельности;  
  • эффективности.

    В табл. 1 приведены основные характеристики языка Ada с точки зрения объектного подхода.  
     
     
     
     

    Абстракции
    Переменные  экземпляра  
    Методы экземпляра  
    Переменные класса  
    Методы класса
         Да  
    Да  
    Нет  
    Нет
    Инкапсуляция
    Переменных  
    Методов
    Открытые, закрытые  
    Открытые, закрытые
    Модульность
    Разновидности модулей
    Пакет
    Иерархии
    Наследование  
    Шаблоны  
    Метаклассы
    Нет (входит в Ada9x)  
    Да  
    Нет
    Типизация
    Сильная типизация  
    Полиморфизм
          Да  
    Нет (входит в Ada9x)
    Параллельность
    Многозадачность
    Да
    Сохраняемость
    Долгоживущие  объекты
    Нет

    Таблица 1. Ada.

  1.   Си

     В настоящее время популярным среди программистов является язык Си (С – буква английского алфавита). Язык Си берёт своё начало от  двух  языков - BCPL  и  B.  В  1967  году  Мартин  Ричардс разработал  BCPL  как  язык  для   написания   системного   программного   обеспечения   и компиляторов.  В  1970  году  Кен  Томпсон  использовал  В  для  создания  ранних   версий операционной системы UNIX на компьютере DEC PDP-7. Как в BCPL, так и  в В переменные  не разделялись  на  типы -  каждое  значение  данных  занимало   одно   слово   в   памяти   и ответственность на различение, например, целых и действительных чисел целиком ложилась  на плечи программиста.

     Язык  Си был разработан (на основе В) Деннисом Ритчи из Bell Laboratories  и  впервые  был реализован в 1972 году на компьютере DEC PDP-11. Известность Си получил  в  качестве  языка ОС UNIX. Сегодня практически все основные операционные системы были написаны на Си  или С++. По прошествии двух десятилетий Си имеется в наличии на большинстве компьютеров. Он  не зависит от аппаратной части.

     В конце 70-х годов Си превратился  в то, что мы называем «традиционный  Си».  В  1983  году Американским  комитетом  национальных  стандартов  в  области  компьютеров   и   обработки информации был учрежден единый стандарт этого языка.

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

  1. Пролог

     Ещё один язык, который считается языком будущего, был создан в начале 70-х  годов группой специалистов Марсельского университета. Это язык Пролог. Своё название он получил от слов «ПРОграммирование на языке ЛОГики». В основе этого языка лежат законы математической логики. Как и язык Лисп, Пролог применяется, в основном, при проведении исследований в области программной имитации деятельности мозга человека. В отличие от описанных выше языков, этот язык не является алгоритмическим. Он относится к так называемым дескриптивным (от англ. descriptive – описательный) – описательным языкам. Дескриптивный язык не требует от программиста разработки всех этапов выполнения задачи. Вместо этого, в соответствии с правилами такого языка, программист должен описать базу данных, соответствующую решаемой задаче, и набор вопросов, на которые нужно получить ответы, используя данные из этой базы.

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

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

     Первый  объектно-ориентированный язык Simula-67 был создан как средство моделирования работы различных приборов и механизмов. Большинство современных языков программирования – объектно-ориентированные. Среди них последние версии языка Turbo-Pascal, C++, Ada и другие.

     В настоящее время широко используются системы визуального программирования Visual Basic, Visual C++, Delphi и другие. Они позволяют создавать сложные прикладные пакеты, обладающие простым и удобным пользовательским интерфейсом.

  1. Java

     С 1995 года стал широко распространяться новый объектно-ориентированный  язык программирования Java, ориентированный  на сети компьютеров и, прежде всего, на Internet. Синтаксис этого языка  напоминает синтаксис языка C++, однако эти языки имеют мало общего. Java интерпретируемый язык: для него определены внутреннее представление (bytecode) и интерпретатор этого представления, которые уже сейчас реализованы на большинстве платформ. Интерпретатор упрощает отладку программ, написанных на языке Java, обеспечивает их переносимость на новые платформы и адаптируемость к новым окружениям. Он позволяет исключить влияние программ, написанных на языке Java, на другие программы и файлы, имеющиеся на новой платформе, и тем самым обеспечить безопасность при выполнении этих программ. Эти свойства языка Java позволяют использовать его как основной язык программирования для программ, распространяемых по сетям (в частности, по сети Internet).

  1. Object Pascal

       Object Pascal создавался сотрудниками компании Apple Computer (некоторые из которых были участниками проекта Smalltalk) совместно с Никлаусом Виртом (Niklaus Wirth), создателем языка Pascal. Object Pascal известен с 1986 года и является первым объектно-ориентированным языком программирования, который был включен в Macintosh Programmer's Workshop (MPW), среду разработки для компьютеров Macintosh фирмы Apple.

     В этом языке нет методов класса, переменных класса, множественного наследования и метаклассов. Эти механизмы  исключены специально, чтобы сделать язык простым для изучения начинающими "объектными" программистами.

    В табл. 2 приведены  общие характеристики Object Pascal.  

     

    Абстракции
    Переменные  экземпляра  
    Методы экземпляра  
    Переменные класса  
    Методы класса
    Да  
    Да  
    Нет  
    Нет
    Инкапсуляция
    Переменных  
    Методов
    Открытые  
    Открытые
    Модульность
    Разновидности модулей
    Модуль (unit)
    Иерархии
    Наследование  
    Шаблоны  
    Метаклассы
    Одиночное  
    Нет  
    Нет
    Типизация
    Сильная типизация  
    Полиморфизм
    Да  
    Да (одиночный)
    Параллельность
    Многозадачность
    Нет
    Сохраняемость
    Долгоживущие  объекты
    Нет

Информация о работе Языки программирования: понятие и виды