Файл: Классификация языков программирования. Критерии выбора среды и языка разработки программ (Этапы развития языков программирования).pdf
Добавлен: 24.04.2023
Просмотров: 353
Скачиваний: 2
СОДЕРЖАНИЕ
1. ОСНОВНЫЕ ПОНЯТИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ
1.1. Этапы развития языков программирования
1.2. Описание классификации языков программирования
2. Описание средств разработки ПО
2.1. Проблема выбора методологии и средств разработки
2.2. Обзор языка программирования С++
2.3. Обзор языка программирования Java
2.4. Обзор языка программирования C#
3. СОЗДАНИЕ ГРАФИЧЕСКОЙ ПРОГРАММЫ С ПОМОЩЬЮ С++
3.1. Обзор среды написания программ C++ Builder
ВВЕДЕНИЕ
С развитием первой компьютерной техники появился специальный машинный язык, при использовании которого программист мог бы применить команды, оперируя с разнообразными ячейками памяти, полностью используя различные возможности машины.
Но частое использование большинства современных персональных компьютеров (ПК) только на уровне машинного языка будет очень затруднительно.
Поэтому от использования в таком его варианте пришлось отказаться. На современном этапе появилось целое множество мощных языков программирования (ЯП), которые позволяют выполнять сложнейшие функции.
В дальнейшем, при развитии высокоуровневых языков программирования, со временем появилась прекрасная возможность как-то адаптировать обработку информации при использовании созданных программных продуктов, являющихся очень удобными, поскольку опытные программисты могут создавать программы прямо для конкретного предметного сектора. Вместе с этим широкой популярностью ознаменовались программы с графическим интерфейсом.
Актуальными в наше время является высокая эффективность и надобность применения программ с графическим или же оконным интерфейсом, которые написаны на современных языках программирования высокого уровня.
Целью работы является подробное описание популярных языков для программирования и создания с их помощью оконного графического приложения.
Смотря на поставленную цель надо решить задачи:
– рассмотреть современные теоретические источники литературы;
- подробно описать классификацию ЯП;
- детально раскрыть основные понятия ЯП Java, C#, С++;
- охарактеризовать интегрированную среду по разработке программ C++ Builder;
- создать оконное приложение на языке программирования высокого уровня.
Объектом исследования являются языки программирования.
Предметом исследования являются критерии выбора среды и языка программирования.
Этим занимались талантливые разработчики Б.Стауструп, Ст.Прата, П.Голдинг и другие.
1. ОСНОВНЫЕ ПОНЯТИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ
1.1. Этапы развития языков программирования
Физические принципы для функционирования электронных устройств таковы, что каждый ПК может воспринимать разные команды, что состоят лишь из определенной последовательности единиц и нулей – машинного кода. На этой стадии такого развития ЭВМ пользователям было необходимо составлять программы на языке понятному ПК. Каждая команда состояла с адресов операндов, кода операций, выраженных в сочетаниях бинарного кода.[5]
Это приводит часто к необходимости найти разные средства, которые позволят еще более просто налаживать корректное общение человека с ПК. И такое средство было найдено: различные ЯП и соответствующие им модули для трансляции (системы программирования).[15]
Языком программирования называется специальный язык, что предназначается для написания команд и управления компьютером. Все современные языки программирования созданы для того, чтоб пользователям было проще выполнять операции с ПК, но они также затем должны транслироваться (интерпретаторами, трансляторами) в машинный код для выполнения компьютером.
ЯП условно можно подразделять на языки высокого и низкого уровня программирования.
Практически всю историю компьютерной индустрии с определенного взгляда легко представить, как становление истории развития ЯП.
Рассмотрим далее историю развития ЯП:
1801 г. – француз И. Жаккард при использовании перфокарт впервые вышивает словосочетание «hello world» на ткани.
1842 г. – первая программист Ада Лавлейс пишет первую свою компьютерную программу. А через почти 160 лет архитекторы по корпоративным программным продуктам переймут технику Ады при использовании моделей программ, а также назовут этот метод UML.[20]
1936 г. – Алан Тьюринг изобрел специальную теорию языков программирования.
1957 г. – Джон Бакус и корпорация IBM изобретают ЯП под названием Фортран.
1964 г. – Джон Кемни и Том Курц создают на то время революционный ЯП Бейсик.
1970 г. – Н. Вирт создает первый процедурный язык программирования Турбо Паскаль.
1972 г. – Адам Колмеро изобретает современный на то время логический язык Пролог. Сразу начинают его использовать при разработке современных баз данных (БД).
1983 г. – Б. Страуструп на основании языка С, создает новый язык программирования под названием С++.
1990 г. – группа разработчиков: П. Худак, Ф. Водлер, С. Пейтон-Джонс, Э. Катчер создает ЯП Хаскелл.
1996 г. – Дж. Гослинг выполняет проектирование языка Java. Java – довольно типизированный современный объектно-ориентированный ЯП, который описан на основе классов, с современным сборщиком мусора, одиночной диспетчеризацией, одиночными реализациями наследования, а также и расширенным множественным наследованием для любых интерфейсов.
1.2. Описание классификации языков программирования
Процессы работы ПК заключаются в выполнении самых разных инструкций, то есть какого-то перечня определённых команд для нужного порядка. Машинный вид имеющейся информации, который состоит только из 1 и 0, часто указывает, какое именно определенное действие должен выполнять центральный процессор.
Чтобы задать для ПК перечень действий на выполнение, необходимо задать какую-то последовательность с бинарного кода. [5]
Программы, изображенные в специальных машинных кодах, состоят с сотен тысяч команд.
Качественное их написание – занятие утомительное и очень сложное. Программисты должны помнить полностью все сочетания 1 и 0 для бинарного кода для всех команд, а также и двоичные коды адресов, что часто используются при выполнении.
Гораздо проще написать программу для ПК на естественном языке, а работу по переводу его в машинный код поручить ПК.
Языком программирования называется формальная знаковая система, что предназначена для записи компьютерных программ. Языком программирования часто определяется весь синтаксический набор лексических, семантических правил, которые задаются для программ и действий.[12]
Все создатели языков рассматривают понятие языка программирования немного по–своему. К самым современным утверждениям, признаваемым практически большинством программистов, относятся:[16]
– язык программирования предназначен для разработки программных продуктов, которые будут применятся в процессе передачи персональному компьютеру некоторых определенных инструкций для разработки некоторого вычислительного процесса.
– ЯП отличаются также от привычных человеческих языков предназначением для трансляции данных от пользователей к ПК. Можно даже обобщить эти все определения: ЯП – это способ передачи приказов, разных инструкций, четкого руководства для действий, тогда как обычные человеческие языки будут предназначены только для обмена некоторой информацией.
ЯП могут также использовать конструкции по выполнению манипуляций и определению разных структур данных, а также процессов вычислений.
ЯП представляется в виде набора чаще всего инструкций, определяющих его понятие семантики, синтаксиса. Для многих ЯП также применяются международные стандарты. В таком случае специальные организации могут проводить систематические обновление спецификаций, разных определений соответствующего ЯП, продолжать модернизацию и их внедрение.
После создания самых первых вычислительных машин все разработчики создали более 2600 ЯП и число их с каждым годом увеличивается. Некоторыми такими языками программируют также небольшое число разработчиков, а иные становятся сверх популярными.
Нет таких программистов, что не мечтали бы разработать свой собственный язык программирования, который был бы самым простым и функциональным, самым надежным и быстрым. Именно поэтому и за целую компьютерную предысторию люди придумали много таких ЯП.
На современном этапе перед опытными программистами ставится задача для проектирования систем хранения информации, что ещё 30-40 лет назад казались практически невозможными. Появляются новые технологии, требующие новейших подходов к выполнению процессов программирования, а стремительное развитие Интернета также, в своем роде, предоставляет все новые методы, которые не освоены до конца по созданию новейших технологий программирования.
Всё это служит хорошей почвой при создании новейших ЯП, отвечающих всем задачам для нынешнего времени и также используют новые способы, парадигмы программирования, часто позволяющие решать все актуальные проблемы разработки программного обеспечение с графическим интерфейсом.[7]
Но не смотря на такое огромное количество ЯП, лишь некоторые с них имеют признание программистов.
При определении за 2017 год самых популярных ЯП применим статистические данные компании «ITIBE Software».
По информации корпорации «ITIBE Software» самые популярные языки на сентябрь 2017 года представлены ниже таблице 1:
Таблица 1 – Список популярных языков программирования
|
№ |
Название языков программирования |
Показатель |
Последний релиз языка программирования |
|
1 |
Java |
16.99% |
15.10.2014 |
|
2 |
C++ |
15.06% |
13.11.2010 |
|
3 |
C |
8.03% |
26.06.2015 |
|
4 |
PHP |
6.56% |
23.05.2013 |
|
5 |
C# |
5.63% |
17.03.2014 |
|
6 |
Python |
5.45% |
02.05.2013 |
|
7 |
Visual Basic |
4.12% |
16.03.2014 |
|
8 |
Objective C |
3.87% |
24.07.2003 |
|
9 |
Perl |
2.36% |
13.03.2014 |
|
10 |
Delphi |
2.16% |
06.07.2011 |
Все такие языки являются очень разными, ведь каждый имеет уникальное назначение и принципы работы с ним.
Сравнительный анализ всех ЯП по возможностям, а также способам реализации или по сложности освоения является очень актуальной задачей. Оценивать удобство семантических схем только можно на каком-то примере и для всех современных ЯП можно указать те задачи, для которых будут пользоваться намного лучше, чем остальными.
Подобные сравнения часто переходят иногда и в самую настоящую «битву» между программистами. Тут также каждая с сторон яростно выполняет оборону «своего» языка, не принимая доводы иной.
Самым первым шагом для разработки языков, которые содержат основные понятия, которые так близки человеку, стали языки, которые переводят некоторые символические обозначения в машинный код (Ассемблер).[14]
ЯП низкого уровня – это язык программирования, предназначаемый для определенного типа компьютера и отражающий его непосредственный машинный код; языки низкого уровня часто программисты называют машинно-ориентированными ЯП. Их сложно как-то конвертировать для реализации их на ПК с самыми разными центральными микропроцессорами, также довольно тяжело выполнить изучение, поскольку требуется очень хорошо знать все принципы внутренней схемы ПК.[3]
К ЯП, так называемого, низкого уровня принадлежат такие специальные языки – ассемблеры – это специальные языки машинно-зависимого плана, что описывают разные действия, команды в описании процессора.
Для каждого типа процессоров существует только свой определенный язык, а о портативности таких программ в другую платформу говорить вовсе не приходится.
Немного позже были созданы компьютерные программы для трансляции самых разных арифметических выражений, а в 1955 г. был запущен первый функционирующий транслятор для ЯП Фортран.
Язык высокого уровня предназначен для удовлетворения самых разных требований для программиста; он зависит как от внутренних машинных кодов, так и ПК любого типа.
ЯП высокого уровня используют для решения современных и сложных проблем и их часто также называют по этой причине проблемно-ориентированными ЯП.
Все команды ЯП высокого уровня эквивалентны сразу нескольким командам, что написаны в машинных кодах, а поэтому такие программы, намного компактны.[4]
Машинно-ориентированными ЯП называются языки, наборы разных типов операторов и средства, которые сильно могут зависеть от ЭВМ (внутреннего машинного языка).
Эти языки также позволяют использовать возможности:
- высокое качество программ;
- предсказуемость кода;
- возможность разработки с помощью конкретных ресурсов;
- для описания оптимальных программ нужно также знать команды и все особенности функционирования ЭВМ;
- очень низкая скорость создания программ;
- трудоемкость процесса составления кода, плохо защищенного от наличия ошибок;
- невозможность использования программ, составленных на этих ЯП, в других ЭВМ.