Главная » Просмотр файлов » Сравнение ЯП C_ C++_ Pascal_ Ada_ Modula-2_ Oberon-2_ Java

Сравнение ЯП C_ C++_ Pascal_ Ada_ Modula-2_ Oberon-2_ Java (1161141), страница 4

Файл №1161141 Сравнение ЯП C_ C++_ Pascal_ Ada_ Modula-2_ Oberon-2_ Java (Сравнение языков программирования) 4 страницаСравнение ЯП C_ C++_ Pascal_ Ada_ Modula-2_ Oberon-2_ Java (1161141) страница 42019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 4)

к пункту 1: необходимость в двух уровнях инкапсуляции представляется автору излишней

к пункту 2: перегрузка имен процедур необходима для реализации ООП, однако этот механизм ухудшает "читабельность" текста программы и нуждается в некоторых ограничениях

к пункту 3: множественное наследование можно реализовать с помощью других механизмов ООП

к пункту 4: как показал пример ADA, конструкторы и деструкторы не являются обязательными компонентами ООП

к пункту 5: компилятор в состоянии самостоятельно определить “виртуальность” метода

H. ПРОЦЕССЫ И ИСКЛЮЧИТЕЛЬНЫЕ СИТУАЦИИ.

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

C

C++

Java

Pascal

Modula-2

Oberon-2

Ada 95

Прогноз

1. Сопрограммы

+

+

+

+

2. Сигналы

+

+

++

3. Критические участки (мониторы)

+

+

4. Исключительные ситуации

+

+

+

5. Распространение ситуаций

+

+

+

РЕЙТИНГ ПО ГРУППЕ:

0

2

2

0

2

2

6



КОММЕНТАРИИ К ОЦЕНКЕ СВОЙСТВ:

к пункту 2:ADA имеет специальный оператор приема сигналов when

КОММЕНТАРИИ К ПРОГНОЗУ:

к пункту 1: этот наиболее примитивный механизм параллельных процессов желателен в каждом языке программирования

к пункту 3: критические участки (мониторы) могут выступать альтернативой механизму сигналов

к пунктам 4-5: механизм обработки исключительных ситуаций в общем виде громоздок и трудно реализуем, однако желательно иметь некоторые средства для обработки ошибок времени выполнения

I. ПРОЧИЕ ВОЗМОЖНОСТИ.

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

1. Инициализация переменных

+

++

++

+

+

+

2. Константные выражения

+

++

++

++

++

++

++

++

3. Типизированные константы

+

+

+

+

++

+

++

+

4. Макросы

+

+

+

++

5. Приоритеты логических операций

+

+

+

+

+

6. Адресная арифметика

+

+

7. Условное выражение

+

+

+

8. Операция разыменования

+

+

+

+

+

+

9. Операция “разыменование+доступ к полю”

+

+

++

++

++

+

РЕЙТИНГ ПО ГРУППЕ:

9

11

8

5

7

6

11

КОММЕНТАРИИ К ОЦЕНКЕ СВОЙСТВ:

к пункту 1:С++ и Java автоматически вызывают конструкторы при инициализации

к пункту 2:в C для реализации константных выражений применяется механизм макросов

к пункту 3:ADA, MODULA и OBERON позволяют объявлять типизированные константы непосредственно в выражении

к пункту 4:в ADA роль макросов выполняют настраиваемые компоненты языка

к пункту 5:в C++ 11 уровней приоритетов, в ADA отдельные уровни приоритетов выделены для логических операций и операций отношения

к пункту 8:в ADA нет операции разыменования (только вместе с операцией “доступ к полю”), для ее имитации можно применять псевдополе “all”; в С и С++ операция разыменования префиксная, что не всегда удобно

к пункту 9:в MODULA, OBERON и ADA операция “доступ к полю” и комплекс “разыменование+доступ к полю” допустимо обозначать одним знаком (точка)

КОММЕНТАРИИ К ПРОГНОЗУ:

к пункту 4: использование макросов для определения констант и реализации inline-процедур в C снижает скорость компиляции и ухудшает читабельность программ

к пункту 5: наличие отдельных уровней приоритетов для операций отношения и логических операции позволяет записывать условия в удобной и естественной форме

к пункту 6:в настоящее время адресная арифметика считается низкоуровневым элементом языка, зависящим от реализации, и в описание языка не включается

к пункту 8:условное выражение ухудшает читабельность текста программы (вместо него желательно применять условный оператор)

J. СРАВНЕНИЕ МОЩНОСТИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ.

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

C

C++

Java

Pascal

Modula

Oberon

Ada

1. НАБОР ОПЕРАТОРОВ

17

18

16

16

15

15

16

2. МЕХАНИЗМ ПРОЦЕДУР

5

10

4

7

6

7

11

3. КОНСТРУКТОР ТИПОВ

6

7

6

12

10

7

11

4. СТРОГАЯ ТИПИЗАЦИЯ

4

4

9

9

9

9

12

5. РАЗДЕЛЬНАЯ КОМПИЛЯЦИЯ

5

8

7

6

8

6

11

6. АБСТРАКТНЫЕ ТИПЫ И ОБЪЕКТЫ

1

10

10

6

1

7

6

7. ПРОЦЕССЫ И ИСКЛЮЧЕНИЯ

0

2

2

0

2

2

6

8. ПРОЧИЕ ВОЗМОЖНОСТИ

9

11

8

5

7

6

11

ОБЩИЙ РЕЙТИНГ:

47

70

62

61

58

59

84

Первый сюрприз рейтинга – уверенное последнее место С. Главный инструмент профессионального программиста, вопреки распространенному заблуждению, достаточно “слабый” язык. Впрочем, последнее место С говорит и о том, что для создания программ любой степени сложности необязательно привлекать мощные языки программирования. С этой точки зрения борьба Вирта и его последователей за простоту языков программирования приобретает дополнительный аргумент “за”. Неудивительно, что все три его языка (PASCAL, MODULA и OBERON) показали примерно одинаковый средний результат. Это - свидетельство хорошей сбалансированности набора конструкций этих языков программирования.

Характеристики

Тип файла
Документ
Размер
335,5 Kb
Тип материала
Высшее учебное заведение

Список файлов учебной работы

Сравнение языков программирования
Сравнение_языков_программирования_files
ClickTracking.js
CollapsibleTabs.js
ajax.js
centralnotice.js
combined.css
commonPrint.css
flaggedrevs.css
flaggedrevs.js
index.css
index.php
index_002.css
index_003.css
index_004.css
index_005.css
injection_graph_func.js
injection_nh_graph.css
jquery-ui-1.css
js2.js
main.css
main_002.css
mwsuggest.js
plugins.js
shared.css
skypeplugin_dropdownmenu.css
wikibits.js
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6521
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее