Green-sell.info

Новые технологии
31 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Роль прикладного программирования

Прикладные и теоретические методы программирования

В последние годы наибольшее развитие и использование получили прикладные методы: объектно-ориентированный, компонентный, сервисно-ориентированный и др. Они составляют основу методологии разработки ПС и практически применяются при создании разных видов программ.

Находят применение формальные и теоретические методы программирования (алгебраический, алгебро-алгоритмический, композиционный и др.), которые основываются на логико-алгоритмических и математических подходах.

В данной лекции представлено описание базовых понятий и особенностей методов систематического (прикладного), отдельных методов теоретического программирования с целью ознакомления студентов с современной теорией и практикой разработки программ.

5.1. Методы систематического программирования

К методам систематического программирования отнесены следующие методы:

  • структурный,
  • объектно-ориентированный,
  • UML-метод,
  • компонентный,
  • аспектно-ориентированный,
  • генерирующий,
  • агентный и др.

Каждый метод имеет свое множество понятий и операций для проведения процесса разработки компонентов или ПС. Метод генерирующего программирования использует возможности объектно-ориентированного, компонентного, аспектно-ориентированного методов и др.

5.1.1. Структурный метод

Сущность структурного подхода к разработке ПС заключается в декомпозиции (разбиении) системы на автоматизируемые функции, которые в свою очередь делятся на подфункции, на задачи и так далее. Процесс декомпозиции продолжается вплоть до определения конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимосвязаны.

В основе структурного метода лежат такие общие принципы:

  • разбивка системы на множество независимых задач, доступных для понимания и решения;
  • иерархическое упорядочивание, т.е. организация составных частей проблемы в древовидные структуры с добавлением новых деталей на каждом уровне.

К основным принципам относятся:

  • абстрагирование, т.е. выделение существенных аспектов системы и отвлечение от несущественных;
  • формализация, т.е. общее методологическое решение проблемы;
  • непротиворечивость, состоящая в обосновании и согласовании элементов системы;
  • иерархическая структуризация данных.

При структурном анализе применяются три наиболее распространенные модели проектирования ПС:

  • SADT ( Structured Analysis and Design Technique ) — модель и соответствующие функциональные диаграммы [5.1];
  • SSADM (Structured Systems Analysis and Design Method ) — метод структурного анализа и проектирования [5.2];
  • IDEF0 (Integrated Definition Functions) — метод создания функциональной модели, IDEF1 — информационной модели, IDEF2 — динамической модели и др. [5.3].

На стадии проектирования эти модели расширяются, уточняются и дополняются диаграммами, отражающими структуру или архитектуру системы, структурные схемы программ и диаграммы экранных форм.

Метод функционального моделирования SADT. На основе метода SADT , предложенного Д.Россом, разработана методология IDEF0 ( Icam DEFinition), которая является основной частью программы ICAM (Интеграция компьютерных и промышленных технологий), проводимой по инициативе ВВС США.

Методология SADT представляет собой совокупность методов, правил и процедур, предназначенных для построения функциональной модели предметной области , которая отображает функциональную структуру, производимые функции и действия, а также связи между ними.

Основные элементы этого метода базируются на следующих концепциях:

  • графическое представление структуры системы диаграммами, отображающими функции в виде блоков, а интерфейсы (вход/выход) — дугами, соответственно входящими в блок и выходящими из него. Взаимодействие блоков друг с другом описывается в виде ограничений, которые определяют условия управления и выполнения функции;
  • наличие ограничений на количество блоков (от 3 до 6) на каждом уровне декомпозиции и связей диаграмм через номера этих блоков;
  • уникальность меток и наименований;
  • разделение входов и операций управления;
  • отделение управления от функций, т.е. исключение влияния организационной структуры на функциональную модель.

Метод SADT применяется при моделировании широкого круга систем, для которых определяются требования и функции, а затем проводится их реализация. Средства SADT могут применяться при анализе функций в действующей ПС, а также при определении способов их реализации.

Результат применения метода SADT — модель, которая состоит из диаграмм, фрагментов текстов и глоссария со ссылками друг на друга. Все функции и интерфейсы представляются диаграммами в виде блоков и дуг. Место соединения дуги с блоком определяет тип интерфейса. Управляющая информация входит в блок сверху, в то время как информация, которая подвергается обработке, указывается с левой стороны блока, а результаты выхода — с правой стороны. Механизм, осуществляющий операцию (человек или автоматизированная система), задается дугой, входящей в блок снизу (рис. 5.1).

Одна из наиболее важных особенностей метода SADT — постепенная детализация модели системы по мере добавления диаграмм, уточняющих эту модель.

Метод SSADM базируется на таких структурных диаграммах, как последовательность, выбор и итерация. Моделируемый объект задается последовательностью групп, операторами выбора из группы и циклическим выполнением отдельных элементов.

Базовая диаграмма — иерархическая и включает в себя: список компонентов описываемого объекта; идентифицированные группы выбранных и повторяемых компонентов, а также последовательно используемых компонентов.

Данный метод представлен моделью ЖЦ со следующими этапами разработки программного проекта (рис. 5.2):

  • стратегическое проектирование и изучение возможности выполнения проекта;
  • детальное обследование предметной области, включающее в себя анализ и спецификацию требований;
  • логическое проектирование и спецификация системы;
  • физическое проектирование структур данных в соответствии с выбранной структурой БД (иерархической, сетевой и др.);
  • конструирование и тестирование системы.

Детальное обследование предметной области проводится для того, чтобы изучить ее особенности, рассмотреть потребности и предложения заказчика, провести анализ требований из разных документов, специфицировать их и согласовать с заказчиком.

Цель стратегического проектирования — определение области действия проекта, анализ информационных потоков, формирование общего представления об архитектуре системы, затратах на разработку и подтверждение возможности дальнейшей реализации проекта. Результат — спецификация требований, которая применяется при разработке логической структуры системы.

Логическое проектирование — это определение функций, диалога, метода построения и обновления БД. В логической модели отображаются входные и выходные данные, прохождение запросов и установка связей между сущностями и событиями.

Читать еще:  Структура языка программирования

Физическое проектирование — это определение типа СУБД и представления данных в ней с учетом спецификации логической модели данных , ограничений на память и времени обработки, а также определение механизмов доступа, размера логической БД, связей между элементами системы. Результат — создание документа, включающего в себя:

  • спецификацию функций и способов их реализации, описание процедурных, непроцедурных компонентов и интерфейсов системы;
  • определение логических и физических групп данных с учетом структуры БД, ограничений на оборудование и положений стандартов на разработку;
  • определение событий, которые обрабатываются как единое целое и выдача сообщений о завершении обработки и др.

Конструирование — это программирование элементов системы и их тестирование на наборах данных, которые подбираются на ранних этапах ЖЦ разработки системы.

Проектирование системы является управляемым и контролируемым. Создается сетевой график, учитывающий работы по разработке системы, затраты и сроки. Слежение и контроль выполнения плана проводит организационный отдел. Проект системы задается структурной моделью, в которой содержатся работы и взаимосвязи между ними и их исполнителями, а потоки проектных документов между этапами отображаются в сетевом графике. Результаты каждого из этапов ЖЦ контролируются и передаются на следующий этап в виде, удобном для дальнейшей реализации другими исполнителями.

Учебное пособие
«Прикладное программирование»

Конспект лекций

Материалы к лекциям:

Лекция 1. Введение. Основы языка С++. Стандартная библиотека С++: презентация лекции
Лекция 2. Составные типы данных (массивы, контейнеры): презентация лекции
Лекция 3. Абстрактные типы данных (классы): презентация лекции
Лекция 4. Наследование: презентация лекции
Лекция 5. Полиморфизм: презентация лекции

Примеры тестов:

Конспект лекций

1. Основы языка С++
1.1 Самая простая программа на С++
1.1.1 Пример программы, выводящей текст на экран (пример 1)
1.1.2 Директивы препроцессору (подключение заголовочных файлов)
1.1.3 Комментарии
1.1.4 Функции
1.1.5 Ввод и вывод на экран
1.2 Переменные и их объявление
1.2.1 Пример программы cложения целых чисел (пример 2)
1.2.2 Переменные и их объявление
1.3 Арифметические операторы
1.3.1 Примеры арифметических операций (пример 3)
1.3.2 Группировка подвыражений с помощью скобок
1.4 Логические выражения и оператор if
1.4.1 Условные конструкции. Пример условных конструкций (пример 4)
1.4.2 Логические выражения. Логические операции И, ИЛИ, НЕ (пример 5)
1.4.3 Типичные ошибки
1.4.4 Вложенные условия
1.5 Арифметический логический оператор
1.6 Селективные конструкции
1.6.1 Селективные конструкции. Пример определения оценки в зависимости от количества баллов (пример 6)
1.6.2 Оператор Switch. Пример меню с выбором действия (пример 7)
1.7 Циклы while и do…while
1.7.1 Цикл с предусловием while. Пример возведения в степень в цикле (пример 8)
1.7.2 Цикл с постусловием do. while
1.8 Пошаговый цикл for
1.8.1 Пример работы оператора for — вычисление суммы чисел (пример 9)
1.8.2 Пошаговый цикл for
1.8.3 Операторы break и continue
1.8.4 Пример вычисление факториала (пример 10)
1.9 Функции
1.9.1 Использование функций библиотеки STL (пример 11)
1.9.2 Определение собственных функций
1.9.3 Пример функции (пример 12)
1.10 Размещение программ и данных в памяти (пример 13)
1.11 Ссылки и указатели
1.11.1 Ссылки (пример 14)
1.11.2 Указатели (пример 15)
1.11.3 Передача параметров в функцию по ссылке и указателю (пример 16)

2. Стандартная библиотека С++
2.1 Состав стандартной библиотеки С++
2.2 Организация ввода/вывода
2.3 Строковые переменные и константы
2.4 Математические функции

3. Массивы и контейнеры
3.1 Массив
3.1.1. Одномерный массив
3.1.2. Динамическое размещение одномерного массива
3.1.3. Передача массива в функцию (пример 3.1)
3.1.4. Двумерный массив
3.1.5. Динамическое размещение двумерного массива (пример 3.2)
3.2 Контейнеры
3.3 Вектор vector (пример 3.3)
3.4 Список list
3.4.1. Списки
3.4.2. Итераторы
3.4.3. Пример работы со списком с использованием итераторов (пример 3.4)
3.5 Очереди и стек
3.5.1. Двусторонняя очередь deque (пример 3.5)
3.5.2. Стек stack (пример 3.6)
3.5.3. Очередь queue
3.6 Ассоциативные контейнеры
3.6.1. Контейнер map (пример 3.7)
3.6.2. Контейнер set (пример 3.8)
3.7 Алгоритмы (пример 3.9)

4. Абстрактные типы данных
4.1 Структуры
4.1.1. Пример 4.1. Структура для работы с компонентами цвета
4.1.2. Передача абстрактных типов в функцию
4.1.3. Создание функций-членов для абстрактного типа данных. Пример 4.2. Структура для работы с компонентами цвета со встроенной функцией.
4.2 Классы
4.2.1. Пример 4.3. Класс Линза
4.2.2. Директивы препроцессору # if ! defined, # endif (проверка на повторное подключение)
4.2.3. Тип доступа к членам класса
4.2.4. Принципы объектно-ориентированного проектирования
4.2.5. Типы функций-членов класса
4.3 Конструкторы и деструкторы класса
4.3.1. Конструкторы
4.3.2. Деструктор (пример 4.4. Конструктор и деструктор класса Матрица)
4.3.3. Проверка правильности параметров. Исключительные ситуации
4.4 Модификаторы, селекторы и другие члены класса
4.4.1. Модификаторы и селекторы
4.4.2. Ключевые слова const и inline
4.4.3. Функции-утилиты
4.4.4. Сохраняемость

5. Наследование
5.1 Типы наследования. Видимость членов классов
5.1.1. Наследование
5.1.2. Пример 5.1. Линза и зеркало как оптические детали
5.1.3. Последовательность вызова конструкторов
5.1.4. Типы наследования. Видимость членов классов
5.1.5. Множественное наследование
5.2 Виртуальные функции. Абстрактные классы
5.2.1. Виртуальные функции
5.2.2. Абстрактные классы

6. Полиморфизм
6.1 Перегрузка функций
6.1.1. Перегрузка функций
6.1.2. Преобразование типов
6.1.3. Параметры функций по умолчанию
6.2 Перегрузка операторов.
6.2.1. Пример 6.1 (класс Complex (комплексное число))
6.2.2. Перегрузка бинарных операторов
6.2.3. Перегрузка унарных операторов
6.2.4. Перегрузка логических операторов
6.2.5. Перегрузка оператора присваивания
6.2.6. Перегрузка операторов с присваиванием
6.2.7. Перегрузка преобразования типов
6.2.8. Перегрузка оператора доступа по индексу
6.2.9. Перегрузка операторов ввода/вывода
6.2.10. Неперегружаемые операторы
6.3 Шаблоны функций и классов.
6.3.1. Шаблоны функций. Пример 6.2 (шаблон функции)
6.3.2. Шаблоны функций с несколькими параметрами. Пример 6.3 (шаблон функции с несколькими параметрами)
6.3.3. Шаблоны классов. Пример 6.4 (шаблон класса Комплексное число)
6.4 Объекты-функции. Предикаты
6.4.1. Объекты-функции. Пример 6.5 (использование объектов-функций)
6.4.2. Предикаты. Пример 6.6 (использование предикатов)

Читать еще:  Виды систем программирования

Приложения
Приложение 1. Приоритет операций в С++
Приложение 2. Основные типы данных
Приложение 3. Операторы, ключевые слова и стандартная библиотека (PDF)
Приложение 4. Руководство по стилю программирования на С++ (PDF)
Приложение 5. Описание контейнеров и алгоритмов библиотеки STL (PDF)

Уроки 22 — 23
Понятие о программировании
Алгоритмы работы с величинами: константы, переменные, основные типы, присваивание, ввод и вывод данных
(§ 8. Что такое программирование)

Содержание урока

Что такое программирование

Что такое программирование

Кто такие программисты

Теперь вам предстоит ближе познакомиться еще с одним разделом информатики, который называется «Программирование».

Назначение программирования — разработка программ управления компьютером с целью решения различных информационных задач.

Специалисты, профессионально занимающиеся программированием, называются программистами. В первые годы существования ЭВМ для использования компьютера в любой области нужно было уметь программировать. В 1970-1980-х годах начинает развиваться прикладное программное обеспечение. Бурное распространение прикладного ПО произошло с появлением персональных компьютеров. Стало совсем не обязательным уметь программировать для того, чтобы воспользоваться компьютером. Люди, работающие на компьютерах, разделились на пользователей и программистов. В настоящее время пользователей гораздо больше, чем программистов.

Может возникнуть впечатление, что программисты теперь уже и не нужны! Но кто же тогда будет создавать все операционные системы, редакторы, графические пакеты, компьютерные игры и многое другое? Программисты, безусловно, нужны, причем задачи, которые им приходится решать, со временем становятся все сложнее.

Программирование принято разделять на системное и прикладное. Системные программисты занимаются разработкой системного программного обеспечения: операционных систем, утилит и пр., а также систем программирования. Прикладные программисты создают прикладные программы: редакторы, табличные процессоры, игры, обучающие программы и др. Спрос на высококвалифицированных программистов, как системных, так и прикладных, очень большой.

В данной главе вы познакомитесь с простейшими правилами и приемами программирования, заглянете в эту актуальную и престижную профессиональную область.

Что такое язык программирования

Для составления программ существуют разнообразные языки программирования.

Язык программирования — это фиксированная система обозначений для описания алгоритмов и структур данных.

За годы существования ЭВМ было создано много языков программирования. Наиболее известные среди них: Фортран, Паскаль, Бейсик, С (Си) и др.

Распространенными языками программирования сегодня являются С++, Java, Pascal, Basic, Python.

Что такое система программирования

Для создания и исполнения на компьютере программы, написанной на языке программирования, используются системы программирования.

Система программирования — это программное обеспе чение компьютера, предназначенное для разработки, от ладки и исполнения программ, записанных на определен ном языке программирования.

Существуют системы программирования на Паскале, Бейсике и других языках.

В данной главе речь будет идти о средствах и способах универсального программирования — не ориентированного на какую-то узкую прикладную область. Примером узкоспециализированного программирования является Web-программирование, ориентированное на создание Web-сайтов. Для этих целей, например, используется язык JavaScript. Языки Паскаль, Бейсик, Си относятся к числу универсальных языков программирования.

Разработка любой программы начинается с построения алгоритма решения задачи. Ниже мы обсудим особенности алгоритмов решения задач обработки информации на компьютере.

Коротко о главном

Программирование — область информатики, посвященная разработке программ управления компьютером с целью решения различных информационных задач.

Программирование бывает системным и прикладным.

Паскаль, Бейсик, Си, Фортран — это универсальные языки программирования.

Система программирования — это программное обеспечение компьютера, предназначенное для разработки, отладки и исполнения программ, записанных на определенном языке программирования.

Вопросы и задания

1. Что такое программирование?

2. Какие задачи решают системные и прикладные программисты?

3. Назовите наиболее распространенные языки программирования.

4. В чем состоит назначение систем программирования?

Следующая страница Компьютерный практикум ЦОР. Что такое программирование

Роль прикладного программирования

Изучение языков программирования – это серьёзный труд, требующий большой концентрации внимания. Обучение школьников программированию развивает внимательность, терпеливость, настойчивость, склонность к интеллектуальным видам деятельности, умение самостоятельно принимать решения. Даже если ребенок и не станет программистом, он получит представление об этой профессии, а навыки сможет использовать и в других областях.

Возраст учащихся: 8-11 класс.

Срок обучения: 3 года.

Количество занятий в неделю: 2 занятия по 3 ак.часа (1 ак.час — 45 минут)

Стоимость обучения в 2017-2018 учебном году:

Программа специализации «Прикладное программирование»

(обновленная программа)

В данном разделе образовательной программы изучается графический редактор Gimp. Студенты научаться использовать инструменты рисования и выделения, работать со слоями и применять фильтры. Кроме того, они узнают, какие бывают виды изображений, познакомятся с типами графических файлов, изучат цветовые схемы CMYK и RGB.

В ходе изучения данной темы студенты научатся создавать сайты с помощью системы создания и управления сайтом WordPress. На занятиях будут рассмотрены следующие вопросы:

  • знакомство с системой создания и управления сайтом WordPress,
  • выбор темы оформления,
  • плагины WordPress,
  • настройка сайта для поисковых систем
Читать еще:  Программирование 1с 7

Обучение программированию начнется со знакомства с языком программирования Pascal. На занятиях будут рассмотрены следующие вопросы:

  • базовые алгоритмические конструкции
  • изучение операторов для создания линейных, разветвляющихся и циклических программ
  • создание первых вычислительных программ.

В ходе изучения данной темы студенты освоят основы администрирования ПК: установка/переустановка/удаление драйвера, подключение внешних устройств (принтера, сканера, телефона и др.), защита ПК от вирусов, основы подключения ПК к локальной сети, переустановка операционной системы, установка программного обеспечения. Кроме того, студенты освоят правила ухода за персональным компьютером.

Курсовая работа выполняется в рамках той , которую выбрал студент: «Компьютерная графика», «Интернет-технологии», «Программирование».

Pascal фактически является идеальным языком для обучения серьёзному программированию и требует определенного математического мышления, но вполне подходит для начального изучения. PascalABC.NET расширен современными языковыми возможностями для легкого, компактного и понятного программирования. В ходе изучения темы рассматриваются следующие вопросы:

  • изучение операторов для создания линейных, разветвляющихся и циклических программ,
  • знакомство с массивами и строками,
  • работа с файлами,
  • знакомство с процедурами и функциями,
  • создание вычислительных программ.

Система PascalABC.NET включает в себя простую интегрированную среду, ориентированную на эффективное обучение современному программированию. Интегрированная среда обеспечивает визуальное проектирование пользовательского интерфейса. В ходе изучения темы рассматриваются следующие вопросы:

  • интерфейс среды программирования,
  • элементы управления, их свойства и события,
  • создание обработчика событий,
  • создание несложных приложений с кнопками, окнами ввода, метками, панелями, переключателями, реагирующими на события.

Язык С# является одним из самых перспективных языков программирования. Современная среда разработки MS Visual Studio делает процесс программирования приятным и эффективным.

Язык программирования C# – основа для дальнейшего изучения объектно-ориентированных языков и современных технологий по разработке, распространению и поддержке программного обеспечения. Он будет очень полезен всем, кто планирует в дальнейшем профессионально заниматься созданием научных, офисных, а также сетевых приложений. Учащиеся получают знания современных технологий программирования, приобретают навыки разработки программ для решения обширного круга типовых задач. В курсе рассматриваются следующие вопросы:

  • типы данных,
  • операторы для создания линейных, разветвляющихся и циклических программ,
  • массивы и строки,
  • работа с функциями и файлами.
  • создание вычислительной программы

В этом разделе дается представление об основных принципах объектно-ориентированного программирования на языке С#: инкапсуляция, наследование и полиморфизм. Учащиеся знакомятся с классами, объектами, методами. Создают программы, которые работают с объектами, созданными на базе пользовательских классов. Использование объектно-ориентированного программирования — хорошее решение при разработке крупных программных проектов. В разделе рассматриваются следующие вопросы:

  • принципы объектно-ориентированного программирования,
  • классы и объекты,
  • методы, конструкторы и деструкторы,
  • классы-наследники,
  • применение полиморфизма.

MS Visual Studio — универсальная интегрированная среда разработки включает в себя полный набор новых и улучшенных функций, упрощающих все этапы процесса разработки от проектирования до развертывания. В среде MS Visual Studio на C# можно создавать консольные проекты и проекты Windows Forms. Visual C# простой в использовании, мощный, типизированный, объектно-ориентированный язык программирования. Содержащий множество инноваций, Visual C# обеспечивает быструю разработку приложений, но при этом сохраняет выразительность и элегантность, присущую языкам СИ.

В разделе рассматриваются следующие вопросы:

  • интерфейс среды программирования,
  • элементы управления, их свойства и события,
  • обработчики событий,
  • создание приложений с элементами управления.

Основные цели и задачи прикладного программирования

Урок 1 .Задачи и особенности прикладного программирования.

Язык программирования — это способ записи программ решения различных задач на ЭВМ в понятной для компьютера форме. Процессор компьютера непосредственно понимает язык машинных команд .

Что представляет собой прикладное программирование?

Назначением прикладного программирования является организация и создание приложений или прикладных программ, путем использования разновидных программных средств.

По сути, это приложение, целью которого является выполнение установленных пользователем задач, рассчитанных для непосредственного взаимодействия с пользователем. Большинство операционных систем не запрограммированы на прямое обращение прикладных программ. Взаимодействие приложения с ПК происходит посредством взаимодействия с оборудованием операционной системы.

Основные цели и задачи прикладного программирования

Прикладное программирование, как и другие приложения для программирования, осуществляет автоматизацию процессов, а также облегчает труд пользователя путем экономного использования ресурсов ПК. Упрощенный интерфейс облегчает взаимодействие пользователей с окружающей программной средой.

Прикладная программа или приложение — программа, предназначенная для выполнения определенных пользовательских задач и рассчитанная на непосредственное взаимодействие с пользователем. В большинстве операционных систем прикладные программы не могут обращаться к ресурсам компьютера напрямую, а взаимодействуют с оборудованием и прочим посредством операционной системы.

Прикладные программы могут использоваться автономно или в составе программных комплексов или пакетов. Прикладное ПО – программы, непосредственно обеспечивающие выполнение необходимых работ на ПК: редактирование текстовых документов, создание рисунков или картинок, создание электронных таблиц и т.д. Пакеты прикладных программ – это система программ, которые по сфере применения делятся на проблемно – ориентированные, пакеты общего назначения и интегрированные пакеты. Современные интегрированные пакеты содержат до пяти функциональных компонентов: тестовый и табличный процессор, СУБД, графический редактор, телекоммуникационные средства.

К прикладному ПО, например, относятся:

· Комплект офисных приложений MS OFFICE

· Финансовые аналитические системы

· Интегрированные пакеты делопроизводства CAD – системы (системы автоматизированного проектирования)

· Редакторы HTML или Web – редакторы

· Браузеры – средства просмотра Web — страниц

studopedia.org — Студопедия.Орг — 2014-2020 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.001 с) .

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector