Файл: Классификация языков программирования. Критерии выбора среды и языка разработки программ (Этапы развития языков программирования).pdf
Добавлен: 24.04.2023
Просмотров: 350
Скачиваний: 2
СОДЕРЖАНИЕ
1. ОСНОВНЫЕ ПОНЯТИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ
1.1. Этапы развития языков программирования
1.2. Описание классификации языков программирования
2. Описание средств разработки ПО
2.1. Проблема выбора методологии и средств разработки
2.2. Обзор языка программирования С++
2.3. Обзор языка программирования Java
2.4. Обзор языка программирования C#
3. СОЗДАНИЕ ГРАФИЧЕСКОЙ ПРОГРАММЫ С ПОМОЩЬЮ С++
3.1. Обзор среды написания программ C++ Builder
2.4. Обзор языка программирования C#
В последнее время ЯП под названием С и С++ являются одними из наиболее используемых для разработки разного рода коммерческих программ, а также бизнес-приложений. Данные языки могут устраивать очень многих разработчиков, хотя они не обеспечивают в действительности требуемой продуктивности разработки.
Процесс для написания приложения с помощью ЯП С++ занимает зачастую намного больше времени, чем разработка эквивалентного приложения на C#.
Уже сейчас существуют разные языки, которые увеличивающие в несколько раз продуктивность разработки за счет потери в гибкости, которая привычная в С и С++.
Традиционным средством для отладки программных продуктов на стадии выполнения этапов разработки в C++ является маркировка обширных частей кода программ директивами типа #ifdef.
В языке C#, применяя такие атрибуты ч ориентацией на условные слова, программист может быстрее написать свой программный код.
Все это позволяет очень сильно упрощать работу, вместо того чтобы создавать автоматизированный инструмент по проверке всех классов или интерфейсов, он действительно является частью некоторого абстрактного объекта, которым можно воспользоваться просто с помощью сообщений основанных на локальных атрибутах объектов.[1]
ЯП C#, являясь самым последним с широко используемых ЯП, должен впитать полностью весь имеющийся опыт, лучшие стороны всех ЯП, при этом являясь созданным для программирования в среде .NET.
Архитектура.NET продиктовала ему перспективную объектно-ориентированную направленность. [7]
Его введение позволило применить новейшие приемы для корректного программирования. [6]
Проанализировав материалы второго раздела сделаем вывод, что язык C++ в нынешнее время является самым наилучший из языков высокого уровня.
В С# отсутствуют некоторые факторы, необходимые для проектирования некоторых высокопроизводительных приложений, подставляемые функции, деструкторы, выполнение которых гарантируется в самых разных точках кода. А язык Java не может также обеспечивать полноценное низкоуровневое программирования.
3. СОЗДАНИЕ ГРАФИЧЕСКОЙ ПРОГРАММЫ С ПОМОЩЬЮ С++
3.1. Обзор среды написания программ C++ Builder
Почти каждый язык высокого уровня имеет разработанную для него IDE – интегрированную среду по разработке для реализации программ: C# - Visual Studio, C++ - C++ Builder, Java – NetBeansи Eclipse. Все эти среды предназначаются также для использования их в более сложных оконных программах.[2]
IDE C++ Builder является средством, выпущенным компанией Borland, для проектирования приложений, которые дают возможность для создания оконного приложения с использованием языков C++, при этом применяя библиотеку VCL. [20]
C++ Builder является SDI-приложением, главное окно которого может использовать настраиваемую инструментальную панель, палитры компонентов (рисунок 3). [8]
Рисунок 3 – Внешний вид IDE C++ Builder
Помимо этого, при исходном запуске C++ Builder указаны окно инспектора объектов, форма, применяемая для нового приложения.
Формой является база приложений в C++ Builder. При стандартном создании пользовательского интерфейса для приложения надо добавлять в окно начальной формы некоторые элементы для объектов с C++ Builder, что также называются компонентами.
Все такие компоненты располагаются в палитре, которая выполнена в качестве панели с вкладками. [19]
Важной особенностью для C++ Builder является возможность проектировать собственные пользовательские компоненты, при этом можно и настраивать всю палитру. Также имеется возможность для создания различные версии палитр.[19]
Компоненты разделяются на визуальные и невизуальные.
К примеру, визуальные появляются при запуске программы (к примеру, списки, флажки, редактируемые поля). Невизуальные – отображаются лишь при проектировании, их не видно во время при выполнении программы, хотя они также обладают определенной степенью их функциональности (запуск таймера, открытие диалоговых окон) [7](рисунок 4).
Рисунок 4 – Использование разных компонентов
Каждый компонент, который применяется в IDE C++ Builder использует 3 характеристики:
– методы;
– свойства;
– события.[9]
Если выбирать компонент непосредственно на палитре, потом добавлять его в форму, инспекторы объектов автоматически могут отобразить события и свойства (рисунок 5). [4]
Рисунок 5 – Инспектор объектов
Некоторые свойства компонентов часто называют атрибутами, определяющими для них поведение и внешний вид. Все имеющиеся свойства компонентов в столбцах свойств принимают достаточно разные значение, которые устанавливаются часто по умолчанию. [9]
Свойство определенного компонента отображается и на вкладке свойств. В это же время инспекторы для объектов отображают некоторые опубликованные свойства для компонентов. [16]
Помимо этих свойств, все компоненты имеют также общие свойства, которые являются доступными во время запуска. Инспектор объектов используется при установке некоторых свойств и проектировании приложения.
3.2. Создание графического приложения
Рассмотрим методику создания графической программы для реализации алгоритма Крамера.
Приведем описание алгоритма.[13]
Рассмотрим систему с
линейных уравнений и с
неизвестными, то есть, систему: [8]
Обозначим при использовании
матрицу:
.
Непосредственно матрицу
называют часто основной матрицей для СЛАУ.
Пусть вектор
– это матрица-столбец имеющихся неизвестных, а вектор
– столбец свободных членов:[20]
и
.
В таком случае систему можно описать таким образом:
.
Данный метод может применяться для выполнения решений СЛАУ, в которых количество уравнений и неизвестных совпадают, а матрица системы – невырожденная.[12]
Если в СЛАУ количество уравнений
, а неизвестных
будет совпадать, при этом
, то система совместная и имеет только одно решение: [11]
(
),
тут
,
– это определитель, что получается с определителя
путем замены
-го столбца на столбец из свободных членов.
Приведенные выше формулы называют алгоритмом Крамера.
Написания графической программы будет состоять из этапов.
Первым из шагов является разработка пользовательского интерфейса программы.[14]
Для этого откроем среду C++ Builder и создадим в ней пустой проект с обычным оконным интерфейсом.
После расположения визуальных компонентов на имеющейся форме, их настройки при использовании окна Object Inspector, разработанный интерфейс программы имеет вид (рисунок 6):[6]
Рисунок 6 – Интерфейс программы
Вторым этапом для реализации программы является написание кода для компонентов и событий.
Рассмотрим главные функции создаваемой программы.
Кнопка «Автоматически заполнить» использует код:
{
int i2,j2;
{
for (i2=1;i2<=StrToInt(Edit1->Text);i2++)
for (j2=1;j2<=StrToInt(Edit1->Text);j2++)
{
StringGrid1->Cells[i2][j2]=rand()%30-2;StringGrid1->Cells[UpDown1->Position+2][j2]=rand()%30-2;
}
}
}
Функция используется для заполнения компонента с названием StringGrid1, числовыми данными с интервала [-2; 29].
При этом, при нажатии на компонент UpDown1 будет увеличиваться количество строк или же столбцов, а также будет изменяться название их в таблице.
Нажав далее на кнопку под названием «Вычислить матрицу» следующий выполнится код:
int n2 = StrToInt(Edit1->Text);
float** a2 = mtx(n2);
for(int i2=1;i<UpDown1->Position+1;i2++
{
for(int j2=1;j2<UpDown1->Position+1;j2++)
a[i2-1][j2-1]=StrToFloat(StringGrid1->Cells[j2][i2]);
b[i2-1]=StrToFloat(StringGrid1->Cells[StringGrid2->ColCount-1][i2]);
}
float dd2 = det(a2,n2)
Edit14->Text=dd2;
if(dd2==0)
{
ShowMessage("Определитель – нуль");
return;
}
for(int i2=0;i2<n2;i2++)
{
d[i2] = det(Swap(a2,b,i2,n2),n2);
x[i2] = d[i2]/dd2;
D[i2]->Text=FloatToStrF(d[i2],ffGeneral,6,4);
X[i2]->Text=FloatToStrF(x[i2],ffGeneral,6,4);
}
AnsiString s1="",p1;
del(a2,n2);
Этот код будет вычислять корни методом Крамера.
Запустим далее программу на выполнение и потом введем размерность СЛАУ.
В результате получим (рисунок 7):
Рисунок 7 – Ввод данных
Далее нажмем кнопку Вычислить матрицу. В результате использования имеем следующий итог работы программы (рисунок 8):[17]
Рисунок 8 – Результат выполнения программы
При нажатии на кнопку с названием «Выход» графическое приложение закроется.
В последней главе описана реализация метода Крамера решения СЛАУ, детально описаны основные теоретические пункты этого алгоритма, создан графический программный продукт на С++ Builder.
ЗАКЛЮЧЕНИЕ
В нынешнее время, при усилении связей между миром коммерции с миром разработки ПО, все корпорации тратят очень много денег и своих усилий на планирование бизнеса, ощущается острая надобность в соответствии с абстрактными бизнес-процессами их программным или функциональным реализациям.
Стоит отметить, что огромное большинство языков какого-то прямого пути для обеспечения связи кода и логики, к сожалению, не имеют.
К примеру, сегодня разные программисты часто комментируют свои созданные программные продукты для объяснения, какие классы реализуют какой-то именно абстрактный бизнес-объект. Например, ЯП C# позволяет применять масштабные типизированные, расширяемые метаданные, что часто могут быть использованы к некоторому объекту.
Архитектурой всякого проекта могут также определяться и локальные программные атрибуты, что будут как-то связанны с всяческими элементами языка.
В процессе выполнения исследования были получены, закреплены практические навыки в разработке программ при применении различных компонентов в написании программ для среды визуального программирования C++ Builder.
В процессе написания курсовой работы были реализованы задачи:
– рассмотрена классификация ПО, а именно инструментальное ПО;
– описаны теоретические основы теории языков программирования;
- охарактеризованы этапы развития языков программирования;
- освоено выполнение выбора программных средств для реализации конкретного задания;
- продемонстрировано практическое применение выбора программных средств для создания конкретного программного продукта.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- Бобровский С. Самоучитель програмирования на языке C++ в среде Borland C++ Builder М.: ИНФРА-М, 2014.–251 c.
- Бруно Бабэ. Просто и ясно о Borland C++: Пер. с англ. - Москва: БИНОМ, 2014. – 400с.
- Заварыкин В.М.. Основы информатики и вычислительной техники. — М.: Просвещение, М.: - 2015. 180 с.
- Задачи по программированию / С. А. Абрамов, Г. Г. Гнездилова, Е. Н. Капустина, М. И. Селюн. — М.: Наука, 2016. – 344 с.
- Зубов В. С. Программирование на языке С++. — М.: Информационно-издательский дом «Филинъ», 2013. – 452 с.
- 3yeв Е. А. Практическое программирование на языке С++. — М.: Радио и связь, 2014. – 406 с.
- Информатика. Задачник-практикум: В 2 т. / Под ред. И. Г. Семакина, Е.К.Хеннера. — М.: Лаборатория Базовых Знаний, 2013. – 182 с.
- Йенсен К. С++ — руководство для пользователей и описание языка. — М.: Мир, 2016. – 402 с.
- Касаткин В. Н. Информация. Алгоритмы. ЭВМ. — М.: Просвещение, 2015. – 210 с.
- Керниган Б. Язык программирования Си: Пер. с англ. — М.: Финансы и статистика, 2014. – 322 c.
- Культин Н.Б. Визуальное программирование.— СПб.: BHV — Санкт-Петербург, 2013. – 266 c.
- Культин Н.Б. С++ Buider в задачах и примерах – СПб.:БХВ-Петербург, 2016. – 336с.: ил.
- Лаптев В.В. C++. Экспресс-курс . М.: 2014.–322 с.
- Оллисон Ч. Философия С++. Практическое программирование. С.Петербург 2014. – 608 с.:ил.
- Послед Б.С. Borland C++ Builder 6. Разработка приложений баз. М.: 2013г. -360 г.
- Стенли Б. Липпман. C++ для начинающих: Пер. с англ. 2тт. - Москва: Унитех; Рязань: Гэлион, 2016. – 345с.
- Строуструп Б. Справочное руководство по языку C++ с комментариями: Пер. с англ. - Москва: Мир, 2016. – 445с.
- Технология разработки приложения на языке С++. Методическое указание к лабораторным работам для студентов первого курса специальности 080801.65 “Прикладная информатика”. МГУ. – М.: – 2013.–222 с.
- Холингворт Д. Учебник по программированию в среде С++ Builder 5. – Наука.–М.: 2015. –865 с.
- Юпашников A.M. Программирование в среде C++ Builder. — М.: МИФИ, 2014. – 360 c.