Файл: История возникновения и развития языка программирования С/С++ и Java.pdf

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

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

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

Добавлен: 29.06.2023

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

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

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

ВВЕДЕНИЕ

Информационные технологии своим быстрым развитием не только революционизировали человеческий образ работы, но и его само существование. Революция ИТ (информационных технологий) охватывает нашу цивилизацию, приводящую к необъяснимым изменениям в нашей современной жизни. Двадцать первый век принадлежит миру ИТ.

Термин «информационные технологии» или просто известный как ИТ - это общее название, данное всем улучшениям, которые происходят в нашем мире из-за взаимосвязанного прогресса в области технологий, обучения и информации. Этот термин относится к новейшим технологическим достижениям, которые происходят в нашем мире благодаря лучшим технологиям.

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

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

Изучение этих языков является очень актуальным в XXI веке, поскольку большое количество окружающего нас IT мира, реализовано на этих языках [14].

НЕМНОГО О C/C++

Язык программирования C первоначально использовался для работы по разработке больших систем, особенно программ, которые составляют операционную систему. C был принят как язык разработки системы, поскольку он реализует программы, которые работают почти так же быстро, как код, написанный на ассемблере. С очень широко используется уже много лет. К некоторым областям в которых используется этот язык относятся следующие:

- операционные системы;

- компиляторы языка;

- текстовые редакторы;

- сетевые драйверы;

- базы данных;

- языковые переводчики.

Язык С составляет подмножества языка С++. Практически более новый язык включает в себя весь С и добавляет ему новые функции, а самое главное — объектно-ориентированную парадигму.

Программа на C может состоять от 3 до миллионов строк и может быть записана в один или несколько текстовых файлов с расширением «.c» ; например, hello.c

C++ — это язык объектно-ориентированного программирования общего назначения (OOP), является расширением языка C. Это даёт возможность программировать на C ++ в стиле «C» или же в «объектно-ориентированном стиле». В некоторых случаях он может использовать оба варианта, что показывает эффективным примером гибридного языка [3].


C++ считается языком промежуточного уровня, поскольку он инкапсулирует как языковые функции высокого, так и низкого уровня. Первоначально язык назывался «C с классами», так как он обладал всеми свойствами языка C с дополнительным понятием «классы». Однако в 1983 году он был переименован в C ++.

C++ — один из самых популярных языков, в основном используется в системном и прикладном программном обеспечении, при написании драйверов, и при разработке клиент-серверных приложений.

Основная особенность языка C++ в наборе шаблонных классов, в которых имеются самые часто используемые алгоритмы и контейнеры. Они уже написаны и могут много раз использоваться разработчиками при написании своих программ. Язык также облегчает объявление пользовательских классов. Классы используют функции для реализации определенных требований. Можно создавать множество объектов класса, у которых будут все свойства определенные для данной сущности. Объекты могут быть определены как экземпляры, и созданы прямо во время выполнения. Эти классы также могут быть унаследованы другими новыми классами, которые по умолчанию используют публичные свойства своих предков и реализует их в своих объектах [5].

C ++ включает в себя большое количество операторов, таких как:

- арифметически операторы;

- операторы сравнения;

- операторы составного присваивания;

- побитовые операторы;

- логические операторы;

- операторы работы с указателями и членами класса.

Одной из наиболее привлекательных особенностей C ++ является то, что он позволяет перегружать определенные операторы.

К основным концепциям С++ относятся полиморфизм, инкапсуляция и наследование. Они вместе составляют основную концепцию объектно-ориентированного программирования [12].

НЕМНОГО О JAVA

Java - это язык программирования и вычислительная платформа, впервые выпущенная Sun Microsystems в 1995 году. Существует множество приложений и веб-сайтов, которые не будут работать, если у вас нет установленной Java, и c каждым днём их создается всё больше и больше. Java быстрый, безопасный и надежный. Технология Java используется для разработки широкого круга приложений от потребительских устройств до корпоративных систем, от ноутбуков до датацентров, игровых приставок до научных суперкомпьютеров и для разработки мобильных операционных систем.

Как и любой язык программирования, язык Java имеет свою собственную структуру, синтаксические правила и парадигму программирования. Парадигма программирования языка Java основана на концепции ООП, которую поддерживают все основные функции языка.


Язык Java является производным языка С, поэтому его синтаксические правила очень похожи на C. Например, кодовые блоки модулируются в методы и ограничены фигурными скобками {и}, а переменные объявляются до их использования [21].

Структурно язык Java начинается с пакетов. Пакет - это механизм пространства имен языка Java. В пакетах есть классы, а внутри классов - методы, переменные, константы и т. д.

Программы, созданные на Java, являются кроссплатформенными. Исходный код компилируется в то, что в Java называется байт-код, который можно запустить в любом месте, на сервере или на клиенте, который имеет виртуальную машину Java (JVM). JVM интерпретирует байт-код в код, который будет работать на компьютерном оборудовании. Напротив, большинство языков программирования, таких как COBOL, C ++, Visual Basic или Smalltalk, компилируют код в двоичный файл. Бинарные файлы зависят от платформы, поэтому программа, написанная для компьютера под управлением Windows на базе Intel, не может быть запущенной на Mac или Linux. JVM включает в себя необязательный (JIT) компилятор, который динамически компилирует байт-код в исполняемый код. Во многих случаях динамическая компиляция JIT быстрее, чем интерпретация виртуальной машины [19].

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

Java объектно-ориентированный язык. Объект может воспользоваться тем, что он является частью класса объектов и наследует код, который является общим для класса. Объекты считаются «сущностями», к которым может относиться пользователь, а не к традиционным процедурным «действиям». Метод можно рассматривать как один из возможностей или вариантов поведения объекта. Объектно-ориентированность, относительно распространена в современном мире программирования, но в 1996 году только несколько языков эффективно реализовывали объектно-ориентированные концепции и шаблоны проектирования. Способность развиваться с использованием языка, созданного с нуля с объектной ориентацией, в качестве его явной цели сделала этот язык интересной платформой для программирования.

Апплет предлагает гибкость. В дополнение к выполнению на клиенте, а не на сервере, Java-апплет имеет другие характеристики, предназначенные для быстрого запуска [20].


Разработчики могут быстро изучить Java. С синтаксисом, аналогичным C++, Java относительно легко изучать, особенно для тех, у кого есть база на C.

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

Существуют три ключевые платформы, на которых программисты разрабатывают Java-приложения:

Java SE. Простые, автономные приложения разрабатываются с использованием Java Standard Edition. Ранее известный как J2SE, Java SE предоставляет все API, необходимые для разработки традиционных десктопных приложений.

Java EE. Java Enterprise Edition, ранее известная как J2EE, обеспечивает возможность создания серверных компонентов, которые могут проводить весь веб цикл запроса и ответа. Такая компоновка позволяет создавать Java-программы, которые могут взаимодействовать с интернет-клиентами, включая веб-браузеры, клиенты на базе CORBA и даже веб-сервисы на основе REST и SOAP.

Java ME. Java также предоставляет легкую платформу для мобильной разработки, известную как Java Micro Edition, ранее известная как J2ME. Java ME зарекомендовала себя очень популярной платформой для разработки встраиваемых устройств, она изо всех сил пыталась добиться успеха на арене разработки смартфонов. С точки зрения развития смартфонов, Android стал платформой мобильной разработки номер один в мире Java [26].

1 ВОЗНИКНОВЕНИЕ И РАЗВИТИЕ ЯЗЫКА C/C++

1.1 ИСТОРИЯ И НАЧАЛО C

Разработка C первоначально не была целью его создателей. Фактически, различные обстоятельства и проблемы создали идеальную ситуацию для ее появления. В 1960-х годах Деннис Ритчи, который был сотрудником Bell Labs (AT&T), вместе с некоторыми из его коллег, работал над разработкой операционной системы, которая могла бы использоваться многими пользователями одновременно. Эта операционная система была известна как Multics, и она должна была позволить многим пользователям совместно использовать общие вычислительные ресурсы. Multics добавляли много преимуществ, но также имели много проблем. Это была большая система, и казалось, с точки зрения выгоды, что затраты перевешивают вложенные усилия и ресурсы. Постепенно Bell Labs отказались от проекта.


Именно тогда Ричи присоединился к Кен Томпсону и Брайану Кернигану в другом проекте. Проект включал разработку новой файловой системы. Томпсон разработал новую файловую систему для суперкомпьютера DEC PDP- 7 на ассемблере. После этого создатели файловой системы сделали много улучшений, что привело к рождению операционная системы UNIX. Даже в имени новой операционной системы UNIX можно найти следы его предшественника Multics. Первоначально это была Unics (Uniplexed Information and Computing Service). Позже Unics изменилась на UNIX. Она была написана на ассемблере, который, хотя и идеален для машин, сложен для работы людьми. Для интерпретации и управления UNIX использовались языки Fortran и B. Именно в этот момент идея появления языка C начала формироваться в сознании ее создателей [8].

1.2 ПОЧЕМУ C БЫЛ РАЗРАБОТАН

Язык B был полезен в контексте проблем, с которыми сталкиваются создатели UNIX в операционной системе. Язык B был взят из BCPL Мартином Ричардсом. Как уже говорилось, UNIX была написана на ассемблере. Чтобы выполнять даже небольшие операции в UNIX, нужно было писать много страниц кода. Язык B решил эту проблему. В отличие от ассемблера требовал значительно меньше строк кода для выполнения каких-то задач в UNIX. Тем не менее, было много того, что B не мог сделать. Гораздо больше ожидалось от B в контексте быстро меняющихся требований. Например, B не распознает типы данных. Даже в языке B типы данных были выражены машинным языком. Он также не поддерживает структуры данных.

Было ясно, что-то должно измениться. Итак, Ритчи и его коллеги приступили к преодолению препятствий, стоящих перед ними. Язык C был разработан в 1971-73 годах. При всех своих ограничениях C обязан своим рождением B, поскольку C сохранил много того, что предложил B, добавив такие новшества, как типы данных и структуры данных. Название C было выбрано потому, что оно шло за B [12].

В ранние годы C был разработан с учетом UNIX. C использовался для выполнения задач и управления UNIX системой. Сохранив производительность многие компоненты UNIX были переписаны на язык C с языка ассемблер. Например, ядро UNIX было переписано в 1973 году на DEC PDP-11.

Ритчи и Керниган задокументировали их новый язык в виде книги под названием «Язык программирования C». Хотя Керниган утверждал, что не играл роли в создании C, он был автором знаменитой программы «Hello World» и многих других программ UNIX [13].