Файл: Интегрированные среды разработки программ(ОСНОВНЫЕ КОНЦЕПЦИИ ПРОГРАММИРОВНИЯ).pdf
Добавлен: 01.04.2023
Просмотров: 101
Скачиваний: 1
ВВЕДЕНИЕ
Современная жизнь технологически развитых стран не представляется без мощной и развитой информационной инфраструктуры. Множество микропроцессорных устройств, соединенных беспроводной и проводной связью окружают каждого человека в каждую минуту его жизни.
Люди привыкли к такому положению дел. Очень удобно, когда «умные» автоматы экономят время, помогая выполнить рутинные ежедневные дела – оценивают сумму покупки в магазине и распечатывают чек, определяют список продуктов, которые необходимо приобрести с учетом вкусов хозяина, незаметно осуществляют уборку помещений.
В рабочей обстановке помощь компьютеров также привычна и необходима. В офисе компьютерная техника используется для создания качественных печатных документов, в которые могут быть добавлены рисунки, графики, таблицы и другие важные элементы. Красочные презентации, создающиеся и демонстрирующиеся с использованием средств мультимедиа, позволят провести качественную рекламную кампанию, показать лучшие стороны товара или услуги, наиболее эффективно донести знания до учеников и студентов.
Сегодня невозможно найти сферу общественного производства, где не была бы востребована компьютерная техника и не были бы задействованы ее универсальные в части обработки информации возможности.
Все современные компьютеры работают под управлением программ. Для эффективной работы они должны быть обеспечены качественным программным обеспечением.
Разработка программного обеспечения является ответственным и непростым занятием. Программист должен обладать определенным складом ума, иметь развитое алгоритмическое мышление, знать различные концепции разработки программного обеспечения, а также быть готовым к постоянному развитию. Языки программирования, которые служат разработчикам ПО инструментом профессиональной деятельности, постоянно развиваются. Одни языки появляются, другие исключаются из практики. Специалисты, занятые в IT-индустрии – одни из самых высокооплачиваемых, что тоже является немаловажным для выбора профессии.
У любого мастера есть свой набор профессиональных инструментов. Есть они и у программиста, причем это не только компьютер, снабженный монитором, клавиатурой и мышкой, но и среды и языки программирования.
Актуальность курсовой работы заключается в важности для современного человека понимать, как разрабатывается программное обеспечение компьютера, какие инструменты для этого используют профессионалы.
Объектом исследования курсовой работы являются инструменты разработки программного обеспечения.
Предметом исследования курсовой работы являются интегрированные среды разработки ПО.
Цель курсовой работы – исследование программного обеспечения современного персонального компьютера и изучение актуальных интегрированных сред разработки ПО.
Задачи курсовой работы:
- изучить устройство современного персонального компьютера;
- изучить состав программного обеспечения современного персонального компьютера;
- исследовать рабочий инструментарий профессионального программиста;
- рассмотреть особенности нескольких популярных интегрированных сред разработки программного обеспечения;
- сопоставить изученные среды программирования;
- сделать выводы по результатам выполнения курсовой работы.
ГЛАВА 1. ОСНоВНЫЕ КОНЦЕПЦИИ ПРОГРАММИРОВНИЯ
1.1 Программное обеспечение компьютера
Современный компьютер – сложное техническое устройство. Компьютер представляет неразделимое единство двух составляющих – аппаратного обеспечения (hardware) и программного обеспечения (software) – рисунок 1.
Рисунок 1 – Устройство современного компьютера
Компьютеры работают под управлением программ. Совокупность всех программ, установленных на компьютере, называется программным обеспечением. У разных пользователей на компьютере установлены разные программы, так как их выбор обусловлен конкретными задачами, для решения которых используется компьютер.
Несмотря на большое разнообразие программ, все их делят на три большие класса:
- системное программное обеспечение;
- инструментальное программное обеспечение;
- прикладное программное обеспечение. [4]
Классификация программного обеспечения компьютера представлена на рисунке 2.
Рисунок 2 - Классификация программного обеспечения компьютера
Как видно из классификации программного обеспечения, интегрированные среды разработки и языки программирования относятся к инструментальному программному обеспечению – они предназначены для разработки разнообразного программного обеспечения. [7]
1.2 Развитие языков программирования
Первый компьютер, который был сконструирован в конце пятидесятых годов двадцатого века, не имел аппарата программирования в современном понимании этого действия. Для программирования этой ЭВМ требовалось особым образом установить переключатель на специальной коммутационной панели (рисунок 3).
Рисунок 3 – Коммутационная панель ENIAC
По итогам работы первого компьютера, названного ENIAC (Electronic Numerical Integrator And Calculator – электронный цифровой сумматор и вычислитель), был проведен анализ, и группа ученых сформулировала принципы, на которых должен строиться эффективный компьютер – принципы фон Неймана. [12]
Среди этих принципов есть принцип, который гласит, что компьютер должен работать под управлением программы. Команды программы выполняются последовательно в том порядке, в котором они расположены в программе. Для выполнения программы она должна быть загружена в специальную память – оперативную память. Кроме того, должны быть предусмотрены механизмы, позволяющие в некоторых случаях отойти от линейной последовательности выполнения программы и перейти к выполнению любой указанной программы. После опубликования доклада с принципами фон Неймана компьютеры строятся на основе архитектуры, описано в них (рисунок 4).
Рисунок 4 – Архитектура фон Неймана
Языки программирования также за восемьдесят лет существования компьютеров прошли определенный путь развития.
Первым языком программирования стал язык машинных кодов – язык команд процессора, записанных в двоичном (или шестнадцатеричном) коде.
Такой язык компьютером воспринимается на физическом уровне, так как в программе присутствуют только команды процессора, поэтому программа выполняется очень быстро.
Кроме того, программа на языке машинных кодах имеет прямой доступ ко всем физическим устройствам компьютера и к компьютерной памяти, то есть она может программно управлять всеми периферийными устройствами и памятью ПК. Машинный код ориентирован на конкретный вид процессора и систему его команд.[15]
Пример программы в машинном коде представлен на рисунке 5.
Рисунок 5 – Фрагмент машинного кода
Недостатком программирования в машинных кодах является то, что программа является машинно-зависимой – то есть она будет выполняться только на компьютере только с определенным типом процессора, для которого она была разработана. Кроме того, программирование в машинных кодах требует от разработчика досконального знания архитектуры процессора.
Следующим шагом в развитии технологий программирования стало появление языков ассемблера, которые облегчили процесс программирования, заменив сложные для человеческого восприятия машинные коды их символьными аналогами.
Программа на ассемблере выполняется медленнее, чем программа в машинных кодах, так как требуется перевод ассемблерной программы в машинный код, но для программиста она создается проще.[1]
Процесс взаимодействия программы на ассемблере с процессором представлен на рисунке 6.
Рисунок 6 – Выполнение программы на языке ассемблера
С появлением языков ассемблера проблема машинной зависимости решена не была, так как программы были по-прежнему ориентированы на конкретный вид процессора.
Поэтому развитие языков программирования продолжилось в направлении абстрагирования от физического устройства компьютера, и вскоре появились языки программирования высокого уровня.
Языки программирования высокого уровня основаны на использовании естественной человеческой лексики. Программа, написанная на таком языке программирования, не зависит от типа процессора компьютера. Она может быть выполнена на любом компьютере, на котором установлена программа-транслятор (переводчик) данного языка программирования.[17]
Классификация языков программирования представлена на рисунке 7.
Рисунок 7 – Классификация языков программирования
Языки программирования высокого уровня активно развиваются, и сегодня их существует очень много. Некоторые из них являются универсальными, другие – специализированные. Классификация языков программирования высокого уровня представлена на рисунке 8.
Рисунок 8 - Классификация языков программирования высокого уровня
1.3 Технологии программирования
Программирование как отрасль производства складывалась постепенно. Первый опыт программирования был стихийным, и только в процессе практики поэтапно появлялись те или иные технологии.
Сегодня процесс выпуска программного продукта обычно состоит из определенных общепризнанных этапов. Этапы создания программного обеспечения представлены на рисунке 9.
Рисунок 9 – Этапы разработки программного обеспечения
В процессе развития языков программирования и накопления практического опыта разработки складывались различные подходы к технологии разработки.
В настоящее время можно выделить следующие основные концепции разработки программного обеспечения:
- процедурное программирование;
- модульное программирование;
- объектно-ориентированное программирование;
- модель компонентных объектов COM. [20]
Пользователь получает доступ к программному обеспечению посредством человеко-машинного интерфейса. К интерфейсу предъявляются определенные требования – он должен быть дружественным, удобным, интуитивно понятным. Этим требованиям отвечает графический интерфейс, который хорошо сочетается с концепцией объектно-ориентированного программирования.[3]
Пример графического интерфейса пользователя представлен на рисунке 10.
Рисунок 10 – Графический интерфейс пользователя
ГЛАВА 2. ИНТЕГРИРОВАННЫЕ СРЕДЫ РАЗРАБОТКИ ПО
2.1 Понятие и компоненты интегрированной среды разработки
Программист, как правило, работает одновременно на нескольких языках программирования, поэтому ему удобно, когда программы на разных языках программирования можно разрабатывать в одной среде. Именно такую возможность предоставляют разработчику интегрированные среды разработки.
Сегодня сложилось представление о традиционном составе инструментальной системы (среды) программирования – IDE (Integrated Development Environment), в который включаются следующие программные инструменты и библиотеки:
- редактор программного кода;
- транслятор – переводчик программ с языка программирования высокого уровня на язык машинных кодов;
- отладчик, предназначенный для пробного запуска программ, поиска и исправления программы;
- различные библиотеки;
- инструменты управления компиляцией и построением программного проекта;
- монитор, интегрирующий в своем составе все представленные средства и организующий функционирование системы программирования в целом. [10]
Представленный выше набор средств является минимальным, современные среды разработки оснащены и другими эффективными инструментами программирования и формирования программных проектов.
Первые попытки создания интегрированных сред программирования можно отнести еще к семидесятым годам двадцатого века, но истинную популярность интегрированный набор средств получил в середине восьмидесятых годов благодаря разработками компании Borland. [18] Одна из первых IDE, предназначенная для создания программ на языке программирования C++, представлена на рисунке 11.