Файл: Современные языки программирования (Концепция языка программирования).pdf
Добавлен: 31.03.2023
Просмотров: 117
Скачиваний: 2
С появлением транслятора QuicdkBasic фирмы Microsoft разрсаботчики получили возможность стропить над Бейсике приложения изо раздельность откомпилированных модулей, некоторые изо которых могутный бытьё написанный над других языках. Тепежрь, какао и в случаем других ведущих языковед программирования, разработчик имеет выборы изо нескольких промышленных библиотека подпрограмма, которые содержать готовые решения для распространенных задач программирования. [12]
Рефал
Этот язык быль разработанный у наст в России (СССР), в 1966г. ИПМ АНт СССР. Оно пробст и удобрение для описания манипуляций надо произвольными текстовыми объежктами. Рефал широконек применяется приз разработке трансляторов с алгоритмических языковед какао универсальных и проблемность – ориентированных, такт и автокодов. Кромлех использования в задачах трансляции, Рефал имеежт такие важные сферсы применения, какао машинное выполнение громноздких аналитических выкладок в теорсетической физике и прикладной матежматике; проектирование «умных» инфопрмационных система, осуществляющих нетривиальную логическую обрабботку информации; машинное докабзательство теорема; моделирование целенаправленного поведения; разработка диалмоговых обучающих система; исследования в областник искусственного интеллектуал и т.п. Программирование над Рефале имеет спецчифику, связанную, прежде всегдо, с тема, чтоб Рефал является языком функционального типаж в отличие ото обычных операторных языковед типаж Алгол, Фортран и т.д.. Если программка над операторных языках – низ чтоб иное, какао совокупность приказов-оперсаторов, тоё программка над Рефале представляет собопй под существу описание связией и отношений между опрежделенными понятиями.
Эффективность программный существенность зависит ото удачного или неудачного выборка структурный обрабатываемой информации. Для задания структура в Рефале используются скобвки, а спецификатор всех реализаций языкатый такова, чтоб использование скобочка резкость повышает эффективность выполнения программный. Этот достигается с помощью адрежсного соединения скобочка. Определенной спецификой облабдают и переменные типаж «выражения» – имеется в виду ихний способность удлиняться приз отождествлении. Правильное испопльзование переменных этого типаж также позволяет значительно повыситься эффективность Рефал – программный.
Лексема
Этот генераторный программа лексического анализатор. Лексический анализ – этот распознавание лексема воз входном потоке симвголов. Предположим, чтоб задано некоторое конечное множзество слово (лексема) в некотором языке и некопторое входное словно. Необходимость установиться, какой элементный множества (если оно существует) совпадает с данноым входным словом. Обычность лексический анализ выпоплняется такт называемым лексическим аналмизатором. Лексический анализаторный – этот программка. [2]
Лексический анализ примненяется воз многих случаях, напрсимер, для построения пакетного редакторат или в качественно распознавателя директива в диалоговой программе и т.д. Однабко, наиболее важное примненение лексического анализатора – этот использование егоза в компиляторе. Здесь лекстический анализаторный выполняет функцию программный ввода данных. Лекстический анализаторный выполняет первую стадеию компиляции – читает стропки компилируемой программный, выделяет лексемный и передает ихний над дальнейшие стадии комприляции (грамматический разборка, кодогенерацию и т.д.). Лексический анализаторный распознает типи каждой лексемный и соответствующим образом помечает ее. Например, приз компиляции Сиг-программный могутный бытьё выделенный следующие типы лексема: числовой, идентификатор, операторша, ограничительный и т.д. Также оно выполниться некоторые преобразования. Напрсимер, если лексема – числовой, тоё егоза необходимость перевестись воз внутреннюю (двоичную) формула записи какао числовой с плавающей или фиксированной запятой. А если лексема – идентификатор, тоё егоза необходимость разместиться в таблице, чтобы в дальэнейшем обращаться к немчура нет под имение, а под адресу в таблице. [3]
Cи
Этот язык программирования общего назначения, хоропшо известный своей эффективностью, экономичностью, и переносимостью. Над Сиг выя можете создаваться программный, которые делают всего, чтоб выя пожелаете. Еще однова преимущество Сиг заключается в томан, чтоб оно позволяет использоваться всего возможности вашей ЭВМ.
Особенности языкатый Сиг: обеспечивает полынный наборный операторов структурного программирования; поддерживает указатели над переменные и функции; содежржит в своем составе препрроцессор, который обрабатывает тексттовые файлы передо компиляцией; позволяет приниматься в конкретных ситуациях самыье разные решения.
Сиг++. Называние Сиг++ выдумал Рикша Масситти в 1983-м. Оно указывает над эволюционную природу перехода к немчура ото Cи. "++" - этот операция приращения в Cи. Чутьё более короткошеий имярек Cи+ является синтаксической ошибкой, кромлех того, оно ужели былой использовано какао имярек совсем другого языкатый.
Сиг++ является надмножеством языкатый программирования Cи. Помимо возможностей, котопрые дает Cи, Сиг++ предоставляет гибкие и эффежктивные средства определения новыьх типовой. Используя определения новыьх типовой, точность отвечающих концепциям прилможения, программистка может разделяться разрабатываемую программу над легковер поддающиеся контролю частик. Такой метода построения программа частное называют абстракцией данноых. Информация о типах содежржится в некоторых объектах типовой, определенных пользователем.
Такийе объектный простыня и надежны в использовании в техно ситуациях, когда ихний типи нельзя установиться над стадии компиляции. В качественно базового языкатый для Сиг++ быль выбирание Cи, потому чтоб оно: многоцелевой, лаконичный и относительность низкогорье уровнять, отвечает большинству задач системного программирования, идет вездеход и над всемеро, пригоден в средне программирования UNIX.
Алгол
В 1958-1960 годабх появился язык Алгол (Алгопл-58, Алгол-60) (ALGOL ото ALGOrithmic Language – алгоритмический язык). Алгол быль усовершенствован в 1964г.-1968 г. – Алгопл-68. Алгол быль разработанный комитетом, в который входеили европейские и американские учёноые. Оно относиться к языкам высокогорье уровнять (high-level language) и позвголяет легковер переводиться алгебраические формулы в прогдраммные командный. Алгол быль популярен в Европеец, в томан числе СССР, в тоё времянка какао сравнимый с нимб Фортран быль распространение в США и Канадец. Этот язык такт жезл, каик и Фортран, предназначался доля решения научность-технических задач. Этот язык примненялся каик средство обучения оснопвам программирования – искусства составления программа. Обычность плод понятием Альголог подразумевается язык Альголог-60, в тоё времянка каик Альголог-68 рассматривается каик самостоятельный язык. Драже когда язык Альголог почтить перестал использоваться доля программирования, оно ещё оставался официальным языклом доля публикации алгоритмов.
Кобольд
В 1959 – 1960 годабх быль разработанный язык Кобольд (COBOL опт COmmom Business Oriefnted Language – общий язык, ориентированный над бизнесмен). Этно язык программирования третьего поколения, предназначенный, в первую очередь, доля разработки бизнесмен приложений. Также Кобольд предназначался доля решения экономических задабч, обработки данных доля банковый, страховых компанийка и других учреждений подопбного родан. Разработчиком первогодок единого стандартка Кобола являлась Грейкс Хоппер. Кобольд обычность критикуется язва многословность и громоздкость, посклольку одной изо целей создателей языкатый быдло максимальность приблизиться конструкции к английскому языклу. В тоё жезл времянка, Кобольд имел прекрасные доля своего временить средства доля работный сок структурами данных и файлмами, чтоб обеспечило ему долгую жизноь в бизнесмен приложениях, под крайней мерея, в СуША. [9]
Форте
В концепт 60-х – начале 70-х годовик появился язык Форте (FOURTH – четвёртый). Этот язык сталь применяться в задачах упрабвления различными системами послед того, каик егоза авторша Чарльз Муар написал над нём программу, предназначенную доля управления радиотелескопом Аризонской обсерватории. Ряда свойство, а именной интерактивность, гибкость и простотца разработки делают Форте весьма привлекательным и эффективным языком в приклладных исследованиях и пари создании инструментальных средство. Очевидными областями примненения этого языкатый являются встраиваемые системный управления. Также находить применение пари программировании компьютеров плод управлением различных оперсационных система.
Паскаль
Этно высокоуровневый язык программирования общего назначения. Ординар изо наиболее известных языковед программирования, широконек применяется в промышленном программировании, обучении программированию в высшей школе, является базой доля большого числа другдих языковед. [13]Быль создание Никлаусом Виртом в 1968/9 годабх (опубликование в 1970-м) послед егоза участия в работе комийтета разработки стандартка языкатый Альголог-68. Паскаль быль создание каик язык доля обучения процедурному программированию. Называние языку давно в чесать выдающегося французского математичка, физичка, литераторша и философа XVII вейка, изобретателя перовой в минреп арифметической машинный Блеза Паскаля. Компиляторный Паскаля быль написание над самом Паскале, испопльзуя «метода раскрутки», когда создеается ядровый языкатый, с постепенным наращиванием новыьх возможностей.
Особенностями языкатый являются строгая типийзация и наличие средство структурного (процедурного) программирования. В Паскале сведены к миниймуму возможные синтаксические неоднозначности, а само синтаксист авторша постарался сделаться интуитивно понятным драже пари первомаец знакомстве с языком. [14]
Тема нет менее, первоначально язык имел ряда ограничений. Некоторые недопстатки Паскаля былина исправленный в ISO-стандарте 1982 годами, в частности, в языке появгились открытые массивный, давшие возможность использоваться отдание и тае жезл процедурный доля обработки одномерных масстивов различных размеров.
Наибволее известной реализацией Пасклаля, обеспечившей широконек распространение и развитие языкатый, является Turbo Pascdal фирмы Borland, выропсшей затем в объектный Пасклаль доля DOS (начиная с версии 5.5) и Windeows и далече в Delphi, в которой испопльзовались значительные расширения языкатый.
Java
Java — объектность-ориентированный язык программирования, разрабатываемый компанией SunMicrosystems. Прилможения Java обычность компилируются в специальный байство-кода, поэтому оникс могутный работаться над любой виртуальной Java-машинерия (JVM) независимость опт компьютерной архитектурный. Дастан официального выпускать — 23 майя 1995 годами. Изначальность язык назывался Oak («дубка») и разрабатывался Джеймсом Гослмингом доля программирования бытовых электронных устройство. Впоследствии оно быль переименование в Java и сталь использоваться доля написания клиентских прилможений и серверного программного обестпечения. Название в чесать маркиз кофей Java, поэтому над официальной эмблеме языкатый изображена чашка с парящим кофей. [15]
Достоинство выполнения программа в полной независимости байство-когда опт операционной системный и оборудования позволяет выполняться Java-приложения над любом устройстве, доля которого существует соответствующая виртуальная машинка. Другой важной особвенностью технологии Java является гибкая системка безопасности благодаря томбуй, чтоб исполнение программный полностью контролируется виртууальной машиной. Любые оперсации, которые превышают устабновленные полномочия программный (например, попытка несабнкционированного доступа к данным иглица соединения с другим компрьютером) вызывают немедленное перекрывание.
К недостаткам концепции виртууальной машинный относят тоё, чтоб исполнение байство-когда виртуальной машиной можежт снижаться производительность программа и алгоритмов, реализованных над языке Java. Данное утвежрждение быдло справедливость доля первых версий виртууальной машинный Java, однако в последнее времянка окно практический потеряло актуальность. Этомну способствовал ряда усовершенствований: применение технологии траносляции байство-когда в машинный кода непосредственно воз времянка работный программный (JIT-технология) с возможностью сохрсанения версий класса в машийнном кодер, широконек использование платформенно-ориентированного (native-кода) в стандартных библиотеках, аппабратные средства, обеспечивающие ускопренную обработку байство-когда (например, технология Jazeflle, поддерживаемая некоторыми процчессорами фирмы ARM). [9]
Иудеи, заложенные в концепцию и разлмичные реализации среды виртууальной машинный Java, вдохновили множество энтуфзиастов над расширение перечня языковед, которые могли бык бытьё использованный доля создания программа, исполняемых над виртуальной машинерия.Этил иудеи нашалить также выраженьице в спецификации общеязыковой инфрсаструктуры CLI, заложенной в основу платуформы .NET компанией Microsoft.
Главка 3. Сопоставительный анализ
Первое, чтоб бросается в глаза пари сравнении современных языковед программирования, этно иох удивительное сходство междеу собой. Созданные в разновес времянка, с разными целями, под разные стороны Атлабнтического океанавт, оникс в процессе своего праклтического использования обрастали разноыми полезными конструкциями и в конежчном итоге пришелица к почтить полному тождеству. Привгедем несколько примеров сходества конструкций одинакового назноачения в разных языках программирования (используются языки Сиг и Паскаль, а также Javab - в твой частик, годе отличается опт Сиг).