Файл: Классификация языков программирования высокого уровня (Основы теории языков программирования).pdf
Добавлен: 28.03.2023
Просмотров: 795
Скачиваний: 2
В Японии Ruby был популярным с момента его появления первой версии в 1995 г.
Знакомство же международного общества программистов началось после перевода документации его на английский язык, создания первых списков для рассылки в 1998 году. [11]
После 2000 года началось распространение языка Ruby по всему миру, а этому способствовало появление разных англоязычных книг:
– «Programming Ruby»;
– «Why's (Poignant) Guide to Ruby».
Стоит отметить, что до 2004 года Ruby широко известен не был в Европе, однако благодаря возможностям и большому числу поддерживаемых платформ язык Ruby медленно, но уверенно умножал ряды своих поклонников.
Настоящий всплеск интереса к языку Ruby спровоцировало появление модуля Ruby-On-Rails (или RoR) — фреймворка для разработки веб-приложений. RoR стал катализатором для Ruby, благодаря которому данный язык получил признание сейчас во всем мире.
Настоящий скачок и интерес к применению языка для серьёзных проектов начался после выхода версии Ruby 1.8.0 в 2003 г. и новой версии Ruby on Rails в 2007 году, что и вывело программирование языком Ruby на новый качественный уровень. [14]
Ruby on Rails также включает в себя уже заготовленный функционал для разрешения практически всех обыденных заданий, с которыми сталкиваются се современные веб-специалисты. [3]
А это значит, что скорость разработки их заметно возрастает.
Если до версии языка 1.8 он развивался, сохраняя свою совместимость с предыдущими созданными версиями, то позже создатели Ruby, во главе с Мацумото, решили, что для движения вперёд следует сделать отказ от полной совместимости. [3]
Поэтому вся разработка Ruby могла быть разделена на 2 ветви:
– создание новых версий 1.9;
– поддержка версий 1.8,
что являются предтечей следующих версий языка, Ruby 2. На рисунке 16 показано изменение быстродействия версий Ruby:
Рисунок 16 – Увеличение быстродействия
Согласно рейтинга компании TIOBE Ruby в 2018 году занял 5 место среди самых популярных языков программирования, а это более 1,5% всего рынка (рисунок 17) [1]
Рисунок 17 – Рейтинг языков программирования
Рисунок 17 показывает количество предложений по работе, он совпадает также с выводами фирмы TIOBE [18]– спрос на Ruby есть, и достаточно высокий, но он все-таки ниже, нежели спрос на Python, или значительно ниже, нежели на язык PHP, что и ясно – несравнимы активные сроки использования таких языков (рисунок 18): [9]
Рисунок 18 – Темпы развития языков программирования
На рисунке 18 видно, как стремительно растёт интерес к самым различным языкам, а темпы развития Ruby очень впечатляют: за последние 3 года они стремительно возросли в почти 2,5 раза. [2]
3.ПРИМЕР СОЗДАНИИ ПРОГРАММЫ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ С++
Рассмотрим пример, в котором показано создание файла, последовательное записи и считывания данных.
Записать в файл sport.txt, что находиться на диске D фамилии и результаты трех победителей олимпиады по информатике. Вывести содержимое файла на экран для визуального контроля. Внести в конец файла фамилия и имя председателя жюри.
//подключение библиотеки для использования кириллицы
#include <clocale>
//подключение библиотеки обработки файлов
#include <fstream>
//подключение библиотек для организации ввода-вывода
#include <conio.h>
#include <iostream>
//определение пространства имен
using namespace std;
//главный модуль программы
int main ()
{
//подключение локали
setlocale (LC_ALL, "Russian_Russia")
// откройте файл для записи
ofstream file1 ( "D: \ sport.txt")
//определение переменных
char name [15], prizv [15], name1 [15];
float bal;
//ввод исходных данных
cout << "Введите фамилию и результат первого спортсмена" << endl;
cin >> name >> bal;
file1 << name << "" << bal << endl;
// Запись данных в файл
cout << "Введите фамилию и результат второго спортсмена" << endl;
cin >> name >> bal;
// Запись данных в файл
file1 << name << "" << bal << endl;
cout << "Введите фамилию и результат третьего спортсмена" << endl;
cin >> name >> bal;
// Запись данных в файл
file1 << name << "" << bal << endl;
file1 << "___________________________________________________";
//закрытие файла
file1.close ();
//считывание файла
cout << "Выведем содержимое файла" << endl;
ifstream file2 ( "D: \ sport.txt")
cout << "Первое место:";
file2 >> name >> bal; // считывание данных из файла
cout << name << "" << bal << endl;
cout << "Второе место:";
file2 >> name >> bal; // считывание данных из файла
cout << name << "" << bal << endl;
cout << "Третье место:";
file2 >> name >> bal; // считывание данных из файла
cout << name << "" << bal << endl;
// вввод фамилия и имя председателя жюри
ofstream file3 ( "D: \ sport.txt", ios :: app)
cout << "Введите фамилию и имя председателя жюри" << endl;
cin >> prizv >> name1;
file3 << prizv << "" << name1 << endl; // Запишите данные в файл
file3.close ();
getch ();
return 0;
}
В результате получим (рисунок 19):
Рисунок 19 – Результат выполнения программы
В языке С++ также можно применять команды для обработки файлов в нотации ЯА С, где файл рассматривается как поток последовательности байтов.
Информация о файле заносится в переменной типа FILE *. Этот тип объявляет указатель потока, используется в дальнейшем во всех операциях с этим файлом.
Тип FILE отмечено в библиотеке <stdio.h>. Поэтому, если в программе предусматривается работа с файлами, этот заголовочный файл следует приложить:
#include <stdio.h>
Теперь можно объявить файловую переменную - указатель потока, который в дальнейшем будет передаваться в функции ввода-вывода в качестве параметра:
FILE * f;
Функция fopen () для открытия файла имеет следующий синтаксис:
FILE * fopen (const char * filename, const char * mode)
Первый параметр filename определяет имя файла, который открывается
Во второй главе курсовой работы рассмотрены основные определения и понятия о файловой системе, файлах, описана структура именования файлов, приведены операторы для обработки файловых структур данных.
ЗАКЛЮЧЕНИЕ
Широкое использование современных информационных технологий практически во всех сферах деятельности человека является одним с основных признаков цивилизованного общества.
Вся мировая история никакой другой отрасли технологий и науки не знает, развивающейся столь стремительными шагами. Трудно представить себе нынешнего специалиста, не владеющего самыми основными навыками в работе ПК.
Прогресс компьютерных технологий определяет процесс появления новых самых разнообразных знаковых систем по записи алгоритмов – языков программирования.
Весь смысл появления такого ЯП – оснащенный набор вычислительных средств дополнительной информации, превращает его в алгоритм. Язык программирования также служит 2-м между собой связанным целям:
– он дает программисту аппараты для задания действий, что должны быть выполнены;
– формирует концепции, что используется программистом, размышляя о том, что именно делать.
В процессе проводимого анализа работы выявлены положительные стороны языков высокого уровня:
- удобность применения иерархии классов;
- гибкость языков;
– интегрированность шаблонных классов и прочее.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- Айвор Хортон. Visual C++ 2010. Полный курс. Издательский дом «Вильямс». – 2014. – 300 с.
- Борис Пахомов. С/С++ и MS Visual C++ 2010 для начинающих. БХВ-Петербург. – 2014. – 436 с.
- Брайан Керниган Алгоритмизация и программирование. Издательство «Невский диалект». – 2014. – 320 с.
- Бьерн Страуструп. Программирование. Принципы и практика использования. Издательский дом «Вильямс». – 2015. – 258 с.
- Джесс Либерти. Освой самостоятельно С++ за 21 день. Издательский дом «Вильямс». – 2014. – 230 с.
- Динман М.И. Алгоритмизация и программирование. Освой на примерах. – СПб.: БХВ-Петербург, 2014.– 260 с.
- Дэвид Гриффитс, Дон Гриффитс. Изучаем программирование на С. Издательство «Эксмо». – 2017. – 400 с.
- Кнут, Дональд, Эрвин. Искусство программирования. Том 1. Основные алгоритмы. 3-е изд. Пер. с англ. – : Уч. пос. М.: Издательский дом. «Вильямс», 2014.– 720с.
- Кубенский А.А. Структуры и алгоритмы обработки данных: объектно-ориентированный подход и реализация на С++. – СПб.: БХВ-Петербург, 2017. – 464с.
- Лаптев В.В., Морозов А.В., Бокова А.В. Объектно-ориентированное программирование. Задачи и упражнения. – СПб.: Питер. 2017. – 288 с.
- Майерс С. Эффективное использование алгоритмизации. 50 рекомендаций по улучшению ваших программ и проектов. Пер. с англ. – М.: ДМК Пресс; – СПб.: Питер. 2017.–240с.
- Прата С. Язык программирования С++. Издание 6. Издательский дом «Вильямс» – 2016. – 304 с.
- Р. Лафоре. Объектно-ориентированное программирование в С++. Издательство «Питер». Издание 4. – 2014. – 628 с.
- С++ Стандартная библиотека. Для профессионалов./Н. Джосьютис. – СП Питер, 2014. – 350 с.
- Седжвик Роберт. Фундаментальные алгоритмы. Анализ/Структуры данных/Сортировка/Поиск: Пер. с англ./ Седжвик Роберт. К.: Издательство «ДиаСофт», – 2014. – 500 с.
- Скляров В.А. Язык С++ и объектно-ориентированное программирование. Справочное пособие. – Минск. «Вышейшая школа». – 2014. – 478с.
17. Основы алгоритмизации и программирования: учеб. пособие / Т.А. Жданова, Ю.С. Бузыкова. – Хабаровск : Изд-во Тихоокеан. гос.ун-та, 2011
18. Программирование и основы алгоритмизации: Для инженерных специальностей технических университетов и вузов. /А.Г. Аузяк, Ю.А.
19. Основы алгоритмизации и программирования : учебное пособие / Г. Р. Кадырова. – Ульяновск : УлГТУ, 2014.
20. Белов П.М. Основы алгоритмизации в информационных системах: Учебн. Пособие.- Спб.: СЗТУ, 2003.