Файл: История возникновения и развития языка программирования Си (С++) и Java.(История возникновения языка C).pdf
Добавлен: 24.04.2023
Просмотров: 244
Скачиваний: 1
Таблица 1 – Различия в архитектурах и синтаксисе Javaи C++
|
# |
Java |
C++ |
|
1 |
Не поддерживает указатели, перегрузку операторов, объединения и шаблоны. Вместо этого используют «ссылки» |
Поддерживает указатели, перегрузку операторов, объединения и шаблоны |
|
2 |
Не поддерживает деструкторы объектов. Поддерживает динамическое высвобождение памяти |
Поддерживает и использует деструкторы объектов |
|
3 |
Не использует условную компиляцию |
#ifdef #ifndeftype– одна из ключевых возможностей С++ |
|
4 |
Использует встроенную поддержку потоков |
Не имеет встроенной поддержки потоков |
|
5 |
Методы, описывающие классы, определяются в нем же |
Методы определяются вне классов с помощью оператора разрешения (::) |
|
6 |
Есть оператор перехода, но он не используется |
Есть оператор перехода goto |
|
7 |
Не поддерживает множественное наследование |
Поддерживает множественное наследование |
|
8 |
Имеет встроенную поддержку комментирования |
Не поддерживает комментирование |
|
9 |
Интерпретируемый язык, т.е. не зависит от используемой платформы |
Генерирует код, который может и не запускаться на прочих платформах |
|
10 |
Есть сборщик мусора |
Память очищается вручную |
|
11 |
Запускается на собственной виртуальной машине, что автоматически делает исполняемый код кроссплатформенным |
С++-код может компилироваться еще только под Linux, но не без дополнительного конфигурирования |
Вообще, следует отметить, что все зависит от задач, решаемых выбранным языком программирования. Анализ, предложенный выше, является объективным, однако, все еще существуют задачи, в основном, академического плана, с которыми Javaсправляется значительно хуже. С++ в свое время годился для написания производительных приложений, для которых требовалось управлять выделяемой памятью. Однако в конце второго десятилетия 21 века необходимо учесть, что настольные приложения давно уступили место корпоративным, мобильным и интернет-сервисам, для чего у C++ просто нет ни возможностей, ни библиотек.
Заключение
Как было обещано в первом издании книги «Бьерн Страуструп. Язык программирования С++», запросы пользователей определили развитие С++. Его направлял опыт широкого круга пользователей, которые трудились в различных сферах программирования. За 6 лет, которые отделяли нас от первого издания описания С++, количество пользователей увеличилось в сотни раз. За этот небольшой период усвоились множество уроков, рассмотрены в теории и применено на практике достаточное число приемов программирования.
Благодаря языку C++ произошел стремительный прорыв в развитии всего программирования. С++ и сегодня занимает доминирующее положение среди всех зыков программирования в мире. Благодаря ему множество программистов разрабатывает огромное число различных проектов. И в будущем этот язык программирования сохранит свои позиции, совершенствуясь изо дня в день
Язык Java является объектно-ориентированным и поставляется с достаточно объемной библиотекой классов. Благодаря библиотекам классов Java значительно упростилась разработка приложений, ведь в распоряжение программиста предоставлены мощные средства решения распространенных задач. Вследствие этого программист имеет возможность больше внимания уделить решению прикладных задач, а не таких, как, например, организация динамических массивов, взаимодействие с ОС или реализация элементов пользовательского интерфейса.
Свойства языка Java:
- язык программирования объектно-ориентирован, оснащён богатой библиотекой классов и одновременно довольно прост для освоения;
- цикл разработки приложений сокращен при помощи того, что система построена на основе интерпретатора;
- приложение получается автоматически переносимым между множеством платформ и ОС;
- за счет встроенной системы сборки неиспользуемого кода программист освобождается от необходимости явного управления памятью;
- приложение легко сопровождается и модифицируется, т.к. модули могут быть загружены с сети;
- в приложения встроена система безопасности, не допускающая незаконного доступа и проникновения вирусов.
Список использованной литературы
- Беркунський Е.Ю. Объектно-ориентированное программирование на языке Java: Методические указания для студентов направления «Компьютерные науки». - М.: НУК, 2006. - 52 с.
- «Бьерн Страуструп. Язык программирования С++», изд. Диалектика, М-СПб.2019 –332 с.
- Вязовик Н.А. Программирование на Java. Курс лекций, Интернет-университет информационных технологий, 2003. 592 с.
- Грэхем Иан. Объектно-ориентированные методы. Принципы и практика. — 3-е изд. — М.: «Вильямс», 2004. 800 с.
- Джесс Либерти, «Освой самостоятельно C++ за 21 день», изд. Дом «Вильямс», Москва - Санкт-Петербург - Киев, 2001. – 834с.
- Джон Родли Создание Java-апплетов.-TheCoriolis Group,Inc.,1996, Издательство НИПФ "ДиаСофт Лтд.",1996 – 654с.
- Майкл Эферган. Java: справочник.- QUE Corporation, 1997, Издательство «Питер Ком», 1998. – 687с.
- ДейтелП.Дж., Дейтел Х.М. Как программировать на С++. Введение в объектно-ориентированное проектирование с использованием UML. / Пер. с англ. - М.: Издательство <Бином>, 2009. 1454 с.
- Пол Ирэ, «ООП с использованием С++», Киев, «ДиаСофт», 2010. 480 с.
- Секунов Н. Самоучитель Visual C++ 6. изд. «БХВ-Петербург», Санкт-Петербург, 2003. 925 с.
- Синтес Антони. Освой самостоятельно объектно-ориентированное программирование за 21 день. — М.: «Вильямс», 2002. 372 с.
- Хабибуллин И.Ш. Самоучитель Java 2. СПб.: БХВ-Петербург, 2007. 720 с.
- Эккель Б. Философия Java. Библиотека программиста. СПб.: Питер, 2001. 640 с.
- ГербертШилдт, Холмс Джеймс, Искусство программирования на Java, 2005.
- Герберт Шилдт. C + + для начинающих. Пер. с англ. М: ЭКОМПаблишерз 2007. – 546с.
- Герберт Шилдт. Полный справочник по C + + 4-е издание. Пер. с англ. М: издательский дом « Вильямс » 2010. – 543с.