Файл: Современные языки программирования.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 29.03.2023

Просмотров: 344

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

В языке "C" отсутствуют операции, имеющие дело непосредственно с составными объектами, такими как строки символов, множества, списки или с массивами, рассматриваемыми как целое. Здесь, например, нет никакого аналога операциям PL/1, оперирующим с целыми массивами и строками. Язык не предоставляет никаких других возможностей распределения памяти, кроме статического определения и механизма стеков, обеспечиваемого локальными переменных функций; здесь нет ни "куч"(HEAP), ни "сборки мусора", как это предусматривается в АЛГОЛЕ-68. Наконец, сам по себе "C" не обеспечивает никаких возможностей ввода-вывода: здесь нет операторов READ или WRITE и никаких встроенных методов доступа к файлам. Все эти механизмы высокого уровня должны обеспечиваться явно вызываемыми функциями.

Аналогично, язык "C" предлагает только простые, последовательные конструкции потоков управления: проверки, циклы, группирование и подпрограммы, но не мультипрограммирование, параллельные операции, синхронизацию или сопрограммы[4]. Хотя отсутствие некоторых из этих средств может выглядеть как удручающая неполноценность ("выходит, что я должен обращаться к функции, чтобы сравнить две строки символов ?!"), но удержание языка в скромных размерах дает реальные преимущества. Так как "C" относительно мал, он не требует много места для своего описания и может быть быстро выучен. Компилятор с "C" может быть простым и компактным. Кроме того, компиляторы легко пишутся; при использовании современной технологии можно ожидать написания компилятора для новой ЭВМ за пару месяцев и при этом окажется, что 80 процентов программы нового компилятора будет общей с программой для уже существующих компиляторов. Это обеспечивает высокую степень мобильности языка. Поскольку типы данных и структуры управления, имеющиеся в "C", непосредственно поддерживаются большинством существующих ЭВМ, библиотека, необходимая во время прогона изолированных программ, оказывается очень маленькой. На PDP -11, например, она содержит только программы для 32-битового умножения и деления и для выполнения программ ввода и вывода последовательностей. Конечно, каждая реализация обеспечивает исчерпывающую, совместимую библиотеку функций для выполнения операций ввода-вывода, обработки строк и распределения памяти, но так как обращение к ним осуществляется только явно, можно, если необходимо, избежать их вызова; эти функции могут быть компактно написаны на самом "C".

C#

C# является основным языком разработки программ на платформе .NET корпорации Microsoft. В нем удачно сочетаются испытанные средства программирования с самыми последними новшествами и предоставляется возможность для эффективного и очень практичного написания программ, предназначенных для вычислительной среды современных предприятий. Это, без сомнения, один из самых важных языков программирования XXI века.


Создание C#

Несмотря на то что в Java успешно решаются многие вопросы переносимости программ в среде Интернета, его возможности все же ограничены. Ему, в частности, недостает межъязыковой возможности взаимодействия,  называемой также многоязыковым программированием.  Это возможность кода, написанного на одном языке, без труда взаимодействовать с кодом, написанным на другом языке. Межъязыковая возможность взаимодействия требуется для  построения крупных, распределенных программных систем. Она желательна также для создания отдельных компонентов программ, поскольку наиболее ценным компонентом считается тот, который может быть использован в самых разных языках программирования и в самом большом числе операционных сред.

Другой возможностью, отсутствующей в Java, является полная интеграция с платформой Windows. Несмотря на то что программы на Java могут выполняться в среде Windows, при условии, что установлена виртуальная машина Java, среды Java и Windows не являются сильно связанными. А поскольку Windows является самой распространенной операционной системой во всем мире, то отсутствие прямой поддержки Windows является существенным недостатком Java.

Для удовлетворения этих и других потребностей программирования корпорация Microsoft разработала в конце 1990-х годов язык C# как часть общей стратегии .NET. Впервые он был выпущен в виде альфа-версии в середине 2000 года. Главным разработчиком C# был Андерс Хейльсберг — один из ведущих в мире специалистов по языкам программирования, который может похвалиться рядом заметных достижений в данной области. Достаточно сказать, что в 1980-е годы он был автором очень удачной и имевшей большое значение разработки — языка Turbo Pascal, изящная реализация которого послужила образцом для создания всех последующих компиляторов.

Язык C# непосредственно связан с С, C++ и Java. И это не случайно. Ведь это три самых широко распространенных и признанных во всем мире языка программирования. Кроме того, на момент создания C# практически все профессиональные программисты уже владели С, C++ или Java. Благодаря тому что C# построен на столь прочном и понятном основании, перейти на этот язык из С, C++ или Java не представляло особого труда. А поскольку и Хейльсбергу не нужно (да и нежелательно) было изобретать велосипед, то он мог сосредоточиться непосредственно на усовершенствованиях и нововведениях в С#.

На рис. 1.1 приведено генеалогическое дерево С#. Предком C# во втором поколении является С, от которого он унаследовал синтаксис, многие ключевые слова и операторы. Кроме того, C# построен на усовершенствованной объектной модели, определенной в C++. Если вы знаете С или C++, то будете чувствовать себя уютно и с языком С#.


Рис. 1.1. Генеалогическое дерево C#

Родственные связи C# и Java более сложные. Как пояснялось выше, Java также происходит от С и C++ и обладает общим с ними синтаксисом и объектной моделью. Как и Java, C# предназначен для получения переносимого кода, но C# не происходит непосредственно от Java. Напротив, C# и Java — это близкие, но не кровные родственники, имеющие общих предков, но во многом отличающиеся друг от друга. Впрочем, если вы знаете Java, то многие понятия C# окажутся вам знакомыми. С другой стороны, если вам в будущем придется изучать Java, то многие понятия, усвоенные в С#, могут быть легко распространены и на Java.

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

2.2. Паскаль

Паскаль – язык программирования на английском языке, созданный Никлаусом Виртом в 20 веке. Назван так этот язык программирования в честь Блеза Паскаля, который создал механическую машину, способную складывать пару чисел. Сам Никлаус Вирт является швейцарским ученым в области информатики, разработавшим не только Паскаль, но и некоторые другие языки программирования. Паскаль был представлен Виртом, как язык программирования, поддерживающий процедурный стиль программирования. Будучи достаточно простым и удобным в изучении, он используется на школьных уроках информатики. Однако далеко не всегда он был предназначен для этого, ведь в 20 веке его пытались использовать на практике. На нем создавались важные программы, а также Паскаль считался языком системного программирования. Программное обеспечение некоторых микрокомпьютеров было написано именно на нем. Этот язык программирования получил в свой адрес много критики за определенное количество недостатков. Керниган даже написал статью на тему «Почему Паскаль не является моим любимым языком программирования». В итоге разработчик все-таки исправил ошибки.


Как и программы на других языках, любая программа на языке Паскаль начинается с заголовка программы. Затем следует блок описания используемых данных. После него находится программный блок. В заголовке, конечно же, указывается название программы. Блок описания данных представляет собой описание констант и переменных с указанием их имен и типов. У программы может и не быть заголовка и блока описания данных. Однако программный блок – то, без чего не может существовать ни одна программа. Этот блок состоит из всех команд, которые нужны для решения какой-либо задачи.

Основными особенностями языка считаются строгая типизация и средства процедурного программирования. Синтаксис Паскаля понятен даже на самых ранних этапах изучения. Еще одной чертой данного языка является допуск пустых строк. Основой Паскаля является алфавит – набор символов, допустимых для использования во время написания алгоритмов. Точка с запятой – разделитель между операторами, поэтому нельзя забывать ее ставить, иначе программа не будет работать. В данном языке есть много операторов, которые используются для решения различных задач.

2.3.Python

Официально Python – это интерпретируемый, интерактивный, объективно –ориентированный язык программирования с достаточно странным названием, он получил свое название в честь популярного в Британии комедийного телевизионного шоу. Python –это язык общего назначения, который особенно хорошо подходит для управления текстом, хотя программисты часто используют его в качестве связующего языка , который объединяет различные программные проекты, благодаря чему они могут обмениваться данными при совместной работе над проектами.

Python достаточно популярен, поскольку прост в изучении и переносим, что означает , что если вы напишите программ на Python , то сможете выполнять их различных типах компьютерах , работающих под управлением таких операционных систем, как Linux, Windows или Macintosh. Несмотря на то, что Python часто используется для создания Интернет – приложений, например программ получающих данные от Web-страниц и сохраняющих их в базе данных, его можно использовать и для создания практически других любых приложений.

Например в Университете Калифорнии создана программа для управления учебным процессом, написанная исключительно на Python. Даже поисковое средство Google при работе полагается на Python.

Python – это язык программирования, чувствительный к регистру используемых символов , поэтому команда Print не будет распознана как правильная ( правильный вариант print).


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

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

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

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

2.4.Бейсик

Язык Бэйсик (он же Бейсик, он же BASIC) входит в семейство языков программирования высокого уровня.

BASIC - это аббревиатура, которая расшифровывается так: Beginner’s All-purpose Symbolic Instruction 

Code - универсальный код символических инструкций для начинающих).

Язык программирования Бейсик был разработан в 1964 году. Затея заключалась в том, чтобы создать язык, с помощью которого студенты, не имеющие навыков программирования, могли самостоятельно создавать компьютерные программы для решения своих задач.

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

Бэйсик с момента создания многократно дорабатывался и усложнялся, повинуясь законам современного программирования. По этой причине к настоящему времени он уже утратил (по сравнению с первыми версиями) свою простоту. Хотя, даже с учётом этого, современный Бэйсик всё-равно остаётся относительно простым языком, по сравнению с такими языками, как, например, С++.

Начиная с 1960-х годов компьютеры становились всё более доступными. На компьютерах могли работать уже не только учёные-программисты, но и школьники и студенты, которые не являлись программистами. Однако у этих школьников и студентов уже появились задачи, которые надо было решать с помощью компьютеров.