Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Сравнение языков программирования (esyr)

Сравнение языков программирования (esyr) (Сравнение языков программирования)

PDF-файл Сравнение языков программирования (esyr) (Сравнение языков программирования) Языки программирования (53647): Другое - 7 семестрСравнение языков программирования (esyr) (Сравнение языков программирования) - PDF (53647) - СтудИзба2019-09-19СтудИзба

Описание файла

Файл "Сравнение языков программирования (esyr)" внутри архива находится в папке "Сравнение языков программирования". PDF-файл из архива "Сравнение языков программирования", который расположен в категории "". Всё это находится в предмете "языки программирования" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст из PDF

Представ иться системестатьяобсуждениеправ итьисторияСравнение Языков ПрограммированияНа этой страничке собираются материалы, которые могут помочь при подготовке к экзамену по языкам программирования.ЯП из курса: C, C++, Java, C#, Pascal, Delphi, Оберон-2, Модула-2, Ада (83 и 95 стандарты).Полезные ссылки:Сравнение ЯП в википедииЭнциклопедия языков программированияКнижка СтрауструпаПлан (краткий, взят из методички Головина, подробный см.

в самой методичке):Содержание [убрать]1 Базисные типы данных в языках программирования: простые и составные типы данных, операции над ними1.1 ADA1.1.1 Поподробнее об Access1.2 ОБЕРОН и ОБЕРОН-21.3 Modula-21.4 Java1.5 C++1.6 C#2 Массивы2.1 Длина массива — статический или динамический атрибут2.2 ОБЕРОН И ОБЕРОН-22.3 Modula-23 Управление памятью3.1 Классы памяти3.2 Указатели4 Преобразование типов4.1 Явное преобразование типов4.2 Неявное преобразование типов4.2.1 Неявное преобразование для пользовательских классов4.3 Понятия conversion и casting4.4 Упаковка и распаковка4.4.1 C#4.4.2 Java4.4.3 Другие языки5 Операторный базис языков программирования. Управление последовательностью вычислений5.1 ADA5.2 ОБЕРОН И ОБЕРОН-25.3 Modula-2open in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.com5.4 Pascal и Delphi5.5 C и C++5.6 for в C# и Java6 Процедурные абстракции6.1 Передача параметров в подпрограммы6.1.1 Передача параметров по значению6.1.2 Передача параметров по ссылке6.1.3 Аргументы в C/C++ всегда передаются по значению6.1.4 Аргументы в Java всегда передаются по значению6.2 Перегрузка операций6.3 ADA6.4 ОБЕРОН И ОБЕРОН-27 Определение новых типов данных.

Логические модули. Классы7.1 ADA7.2 ОБЕРОН И ОБЕРОН-27.3 Modula-27.3.1 Перечислимый тип7.3.2 Тип поддиапазон7.3.3 Записи7.4 Namespace в C#7.5 Классы7.5.1 Конструкторы7.5.2 Деструкторы и финализаторы7.5.3 Неявные контрукторы/деструкторы/операции в C++7.5.4 Свойства7.5.5 Статические классы7.5.5.1 В C++7.5.5.2 В Java7.5.5.3 В C#7.6 Объединение типов (запись с вариантами)7.7 Семантика копирования7.7.1 Особенности копирования объектов в Java8 Модульность и раздельная трансляция8.1 Раздельная трансляция8.2 Модульность8.2.1 ОБЕРОН И ОБЕРОН-28.2.2 Modula-28.3 ADA9 Исключительные ситуации и обработка ошибок9.1 Исключения и блоки try {} catch {} finally {}. Семантика возобновления и семантика завершения.9.2 throw (C++) и throws (Java)9.3 Одно из заданий экзамена по ЯПам9.4 ADAopen in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.com10 Наследование типов и классов10.1 C# и Java10.2 ADA11 Динамический полиморфизм11.1 C#11.1.1 virtual11.1.2 override11.1.3 new12 Абстрактные типы данных, классы и интерфейсы12.1 Абстрактный класс12.2 Абстрактный тип данных12.3 Пример абстрактного ТД и абстрактных функций в Ада9512.4 Интерфейс12.4.1 Явная и неявная реализация интерфейса13 Множественное наследование14 Динамическая идентификация типа14.1 C++14.2 Delphi14.3 C#14.4 Оберон-214.4.1 Проверка типа14.4.2 Охрана типа14.5 Java14.6 ADA15 Понятие о родовых объектах.

Обобщенное программирование15.1 ADA15.2 C#16 Параллельное программирование16.1 ADA16.2 Modula-217 Примеры кода17.1 Примеры кода на Java17.2 Пример кода на Delphi17.3 Примеры на C++, Ада и Java с использованием шаблонов17.4 Примеры кода на С#17.5 Моделирование приватных типов данных из Ады в C++17.6 Эмуляция в Java private и limited private из Ады18 Итоговая таблица19 ПримечанияБазисные типы данных в языках программирования: простые и составные типы данных, операции наднимиopen in browser PRO versionAre you a developer? Try out the HTML to PDF API[править]pdfcrowd.comADA[править]IntegerРазмер не фиксирован.CharacterКак я понял, сущ ествует несколько разновидностей (зависит от размера) и является особым перечислимым типом (Enumeration)StringМассив Character фиксированной длины.

Так же есть стандартные пакеты, реализующ ие строки квазистатической и динамической длины.Floating pointЭти типы обычно определяются вручную в виде конструкции, где Num_Digits указывает максимальную погрешность:digits Num_DigitsFixed PointЭти типы также обычно определяются вручную в виде конструкции, где Delta означает погрешность:delta Delta range Low .. HighBooleanПеречислимый тип с особой семантикой, состоящ ий из значений true и falseAccessТип указателя в языке ADA, с некоторой своей особой семантикой.

В отличие от других языков (таких как C/C++) тип Access может указывать только наобъекты в динамической области памяти. Кроме того этот тип лишен адресной арифметики. Эти два факта якобы позволяют избежать ошибок, связанных суказателями в С/С++. Однако, тип Access в Аде не лишен проблем висячих ссылок и мусора, ситуаций из-за которых возникает подавляющ ее количествоочень неприятных ошибок в языках C/C++.

Однако стоит отдать должное языку Ада: большинство ситуаций, в которых можно использовать адрес, зачастуюрешаются другими способами.use Smth_Package.Entity;type Entity_Access is access Entity;A1, A2 : Entity_Access;beginA1:= new Entity;A1:= new Entity; -- Образовался мусорA2:= A1;Free_Entity (A1); -- A1 теперь null-- A2 теперь - висячая ссылкаendПоподробнее об Access[править]Здесь будем пользоваться следующ им примером:type Person is recordFirst_Name : String (1..30);Last_Name : String (1..20);end record;type Person_Access is access Person;Так как в Аде указатели могут указывать на объекты только из динамической памяти, тип Access очень тесно связан с кучей (в Аде вместо понятия кучиopen in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.comиспользуется понятие пула). Такая связь позволяет для каждого типа объекта держать свой отдельный пул, который может управляться программистом,например можно вручную изменять размер пула:for Person_Access'Size use New_Size; -- 0 запрещает создание новых объектов в пулеСоздадим пару экземпляров нашей структуры:Father: Person_Access := new Person;Mother: Person_Access := new Person'(Mothers_First_Name, Mothers_Last_Name);-- неинициализовано-- инициализованноТип Access - это высокоуровневый указатель, представленный записью с полями.

Например, разыменовать указатель можно следующ им образом:Mother.all.Last_Name = Father.all.Last_Name -- здесь, Mother.all имеет тип Person;Кроме того типы указателей различаются уровнями доступа (read-only и read-write):type Person_Read_Access is access constant Person; -- read-onlytype Person_RW_Access is access all Person; -- read-writeКроме оператора new в пуле переменные можно размещ ать модификатором aliased (у таких переменных есть атрибут 'Access):Child: aliased Person;Child_Access: Person_Access := Child'AccessЕсть ещ е очень много интересного по этой теме.

Все было взято тут .ОБЕРОН и ОБЕРОН-2[править]ОтличияВ Оберон-2 добавленысвязанные с типом процедуры;экспорт только для чтения;открытые массивы в качестве базового типа для указателей;оператор with с вариантами;оператор for.Основные типы1. BOOLEAN логические значения TRUE и FALSE2. CHAR символы расширенного набора ASCII (0X .. 0FFX)3. SHORTINT целые в интервале от MIN(SHORTINT) до MAX(SHORTINT)4. INTEGER целые в интервале от MIN(INTEGER) до MAX(INTEGER)5. LONGINT целые в интервале от MIN(LONGINT) до MAX(LONGINT)6.

REAL вещ ественные числа в интервале от MIN(REAL) до MAX(REAL)7. LONGREAL вещ ественные числа от MIN(LONGREAL) до MAX(LONGREAL)8. SET множество из целых от 0 до MAX(SET)open in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.comТипы от 3 до 5 - целые типы, типы 6 и 7 - вещ ественные типы, а вместе они называются числовыми типами.

Эти типы образуют иерархию; больший тип поглощ аетменьший тип:LONGREAL >= REAL >= LONGINT >= INTEGER >= SHORTINTПримеры объявлений переменныхi, j, k: INTEGERa: ARRAY 100 OF REALОперации+, -, *, /, DIV, MODОперации над множествами+ объединение- разность (x - y = x * (-y))* пересечение/ симметрическая разность множеств (x / y = (x-y) + (y-x))Отношения=, # (неравенство), <, <=, >, >=, IN (принадлежность множеству), IS (проверка типа)Пример присваиванияi := 0Тип ЗаписьRECORDday, month, year: INTEGERENDModula-2[править]Порядковые: CARDINAL CHAR INTEGER BOOLEANБитовое множество BITSET (Величина может зависеть от реализации. Например, 32 бита)Плавающ ая точка: REAL LONGREAL (Подчиняются IEEE, но зависят от реализации.

К примеру, возможно REAL = LONGREAL = double)Процедурный тип PROCJava[править]Java — это язык со статической типизацией. Это значит, что каждой переменной и каждому выражению соответствует тип, известный на этапе компиляции.Типы подразделяются на две категории (если не считать null, см. чуть дальше).Примитивные (primitive) типы:boolean (true или false)Числовые типы:Целые числа:Знаковые: byte, short, int, long (8-, 16-, 32-, 64-битные).Беззнаковый 16-битный: char (код символа в UTF-16[1]).open in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.comЧисла с плавающ ей точкой: float, double (32-, 64-битные; IEEE 754).Ссылочный (reference) тип:Классы, интерфейсы, массивы.Также сущ ествует специальный тип null.Объектом в Java считается экземпляр класса или массив.

Значением ссылочного типа является ссылка на объект (или специальное значение null). Значениепеременной ссылочного типа можно изменить, в отличии от C++.Все объекты (включая массивы) обладают методами класса Object (java.lang.Object) (иначе говоря, с т. з. Java-программиста все объекты *наследуют* методыкласса Object). Строковые литералы (например, "Hello world!") являются объектами типа String (иначе говоря, экземплярами класса String).Операции над простыми типами почти идентичны C/C++, однако могут выбрасывать исключения. Конкатенация строк: "Hello " + "world!" (может принимать вкачестве одного из аргументов не только строку, но и любой из целых типов).Больше информации о типах, значениях и переменных: http://docs.oracle.com/javase/specs/jls/se7/html/jls-4.htmlC++.[править]Целые типыchar - размер как для хранения символа, определяется машиной (обычно байт)short - размер, соответствующ ий целой арифметике на данной машине (обычно, слово)intlonglong longДля всех целых типов есть unsigned аналоги.

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее