Лекции по высокоуровневым методам информатики и программированию
Лекции по высокоуровневым методам информатики и программированию
|0. Введение |0.1 |
|0.1. Содержание дисциплины | |
|Высокоуровневые методы информатики и | |
|программирования |Объем - 52 часа |
| |2 семестр: |
|Предметом изучения являются:[pic] |лекции - 34 |
| |лаб. работы - 18 |
|Новейшие направления в области создания |----------------------------- |
|технологий программирования, |всего - 52 |
|Законы эволюции программного обеспечения, |экзамен |
|Создание модульных программ, |курсовая работа |
|Элементы теории модульного программирования, |экзамен |
|Объектно-ориентированное программирование, | |
|Объектный тип данных, | |
|Переменные объектного типа, | |
|Конструкторы и деструкторы, | |
|Инкапсуляция, наследование, полиформизм, | |
|Классы и объекты, | |
|Особенности программирования в оконных | |
|операционных средах, | |
|Основные стандартные модули, обеспечивающие | |
|работу в оконной операционной системе, | |
|Интегрированная среда программирования, | |
|Система окон разработки, система меню, | |
|Основы визуального программирования, | |
|Компоненты и их использование, | |
|Размещение нового компонента. Реакция на событие| |
| | |
|0.2. Список литературы | |
|Основная: | |
|Петров А. и др. Вычислительная техника и |Учебник |
|программирование. Высшая школа, 1990. | |
|Епанешников А.. М. Епанешников В. А. |Учебно-справочное издание |
|Программирование в среде TURBO PASCAL 7.0. | |
|Диалог МИФИ, 1995г. | |
|Р. Баас, М. Фервай, Х. Гюнтер. Delphi 4. Пер. с |Учебное пособие. |
|нем. под ред. А. Шевцова. Для пользователя BNV, | |
|Киев 1999. |Учебное пособие. |
|В. Гофман, А. Хоменко. Delphi 5. Наиболее полное| |
|руководство. СПБ: БХВ, 2000 | |
|Дополнительная: | |
|Информатика, Учебник /Под ред. Макаровой Н.В. |Учебник |
|Москва, Финансы и статистика, 1997. | |
|Ван Тассел Д. Стиль, разработка, эффективность, |Пособие по языку. |
|отладка и испытание программ. Мир, 1985. | |
| | |
| 0.3 Программные продукты |0.2 |
|и | |
|их основные характеристики | |
|0.3.1. Понятия программного обеспечения | |
| |Программирование может |
|Программирование – это сфера действий, |рассматриваться как наука, так и |
|направленная на создание программ. |искусство |
|Программа – это последовательность команд |Программа результат |
|компьютера, приводящая к решению задачи. |интеллектуального труда, для |
|Приложение – это программная реализация на |которого характерно творчество. |
|компьютере решения задачи. |Программы предназначены для |
|Программное обеспечение (ПО) - это программные |машинной реализации задач. |
|продукты и техническая документация к ним. |Задача – это проблема, подлежащая |
|Программный продукт (ПП) – это комплекс |решению с помощью технических |
|взаимосвязанных программ, предназначенный для |средств, а приложение (синоним |
|реализации определенной задачи массового спроса.|программа) – реализованное на |
| |компьютере решение данной задачи. |
|Программы являются критерием развития |Программы делятся на утилиты (для |
|вычислительной техники. |нужд разработчиков) и программные |
| |продукты (для удовлетворения |
|Проблемы, возникающие при создании программных |потребностей пользователя) |
|продуктов: |В настоящее время на мировом рынке |
|Быстрая смена вычислительной техники и |господствуют ЭВМ разного типа: VAX |
|алгоритмических языков. |и IBM и языки, совместимые с этими|
|Не стыковка машин друг с другом (VAX и IBM). |ЭВМ. Программы, написанные для |
|Отсутствие полного взаимопонимания между |одной машине, не всегда подходят к|
|заказчиком и исполнителем к разработанному |другой. |
|программному продукту. |Для разработчика это творчество, |
| |для заказчика это удобный |
| |инструмент. |
| |В Японии 60% трудоспособного |
| |населения занимается |
| |программированием |
|0.3.2 Характеристики качества ПО. | |
| |Критерии оценки качества программы.|
|Перечень показателей качества: |Программа должна: |
|документированность, |работать согласно техническому |
|эффективность, |заданию (и это легко проверяется); |
|простота использования, |быть эффективна по быстродействию и|
|удобство эксплуатации, |памяти (или быстрее работать или |
|мобильность, |занимать меньше памяти); |
|совместимость, |широко использоваться и быть |
|испытуемость, |доступной (любой грамотный |
|стоимость. |программист должен в программе |
| |разобраться и ее эксплуатировать, |
| |модернизировать как под новую |
| |задачу, так и под новую версию ОС);|
| | |
| |быть приспособлена к выявлению |
| |ошибок (достаточно надежна в |
| |процессе расчета получать |
| |достоверные результаты); |
| |должна быстро разработана и |
| |отлажена с минимальными |
| |трудозатратами. |
|0.4. Классификация и сравнение языков |0.3 |
|программирования | |
|ЭВМ исполняет программу в машинных кодах. |Программа для ЭВМ занимается |
|Составляют программу люди на удобном для себя |преобразованием одних данных в |
|языке. |другие. |
|Различают языки: |На английском языке. |
|низкого уровня (машинно-ориентированные), | |
|высокого уровня (на зависят от типа ЭВМ). |Зависит от типа ЭВМ. Например, |
|Языки высокого уровня бывают: |Ассемблер. |
|процедурно-ориентированные (Паскаль), |Не зависят от типа ЭВМ. |
|проблемно-ориентированные (MathCAD), |Например, Паскаль. |
|объектно-ориентированные (С++). |Например, MathCAD. |
| |Например, С++ |
|Трансляторы переводят программу с языка |И. - Построчный перевод и |
|программирования в машинные коды. |исполнение. Медленно, но удобно при|
|Виды трансляторов: |отладке. |
|Интерпретатор – построчный перевод и исполнение,|К. - Перевод всей программы с |
| |последующим исполнением. Неудобно |
|Компилятор – перевод всей программы с |при отладке, но быстрое исполнение |
|последующим исполнением. |готовой программы |
| Примеры языков | |
|высокого уровня: |Для математических расчетов. От |
|Fortran = Formula |слов - транслятор формул. |
|Translator | |
|----------------------------------------- | |
|BASIC = Beginner’s |Универсальный простой язык. |
|All-perpose |Многоцелевой мнемокод для |
|Symbolic |начинающих. |
|Instruction | |
|Code | |
|---------------------------------------- |Язык для бизнеса. По первым буквам |
|COBOL = Common |слов английской фразы - язык, |
|Business |ориентированный на обычный бизнес. |
|Oriented | |
|Language | |
|----------------------------------------- |Язык для описания алгоритмов. |
|Algol = Algorithmic | |
|Language |Универсальный современный |
|------------------------------- |структурированный язык. Назван в |
|Pascal |честь Блеза Паскаля. |
|------------------------------- |Языки для системного |
|С, |программирования. |
|С++ |Для решения задач в реальном |
|------------------------------- |времени. Назван в честь |
|Ada |программистки Ады Лавлейс. |
|------------------------------- |Язык обработки списков в системах |
|Lisp = List | |
|Programming |искусственного интеллекта. |
|------------------------------- |Язык логического программирования |
|Prolog = Programming |для систем искусственного |
|Logically |интеллекта. |
|0.5. Проектирование программных продуктов (ПП) |0.4 |
|0.5.1. Классификация методов проектирования ПП | |
| |Проектирование алгоритмов и |
| |программ – наиболее ответственный |
| |этап жизненного цикла ПП. |
|Признаки |Традиционное неавтоматизированное |
| |проектирование алгоритмов и |
| |программ используется при |
| |разработке небольших по |
| |трудоемкости и структурной |
| |сложности ПП, не требующих большого|
| |числа разработчиков. ПП имеют |
| |прикладной характер. |
| |Автоматизированное проектирование |
| |алгоритмов и программ возникло с |
| |необходимостью уменьшить затраты на|
|Неавтоматизированное проектирование алгоритмов и|проектные работы, сократить сроки |
|программ используется при разработке небольших |их выполнения, создать типовые |
|по трудоемкости и структурной сложности ПП. |"заготовки", многократно |
|Автоматизированное проектирование используется в|тиражируемых для различных |
|крупных фирмах при разработке определенного |разработок, координации работ |
|класса ПП большого коллектива разработчиков. |большого коллектива разработчиков |
| | |
|.Структурное проектирование – это |Методология –это подходы к |
|последовательная декомпозиция, целенаправленное |проектированию |
|разбиение на отдельные составляющие. |Начало развития падает на 60-е |
|Структурное проектирование включает в себя: |годы. |
|нисходящее проектирование ("сверху вниз"), |Метод нисходящего проектирования |
|модульное программирование, |предполагает последовательное |
|структурное программирование (кодирование). |разложение общей функции обработки |
| |данных на простые функциональные |
|Информационное моделирование – построение |элементы ("сверху вниз"). |
|комплекса взаимосвязанных моделей данных. |В основе Информационного |
| |моделирования лежит положение об |
|Объектно-ориентированный подход основан на: |определяющей роли данных при |
|выделении классов объектов; |проектировании алгоритмов и |
|установлении свойств объектов и методов их |программ. |
|обработки; |Структурное программирование |
|создании иерархии классов, наследовании свойств |основано на модульной структуре |
|объектов и методов их обработки. |программного продукта и базовых |
|Каждый объект объединяет данные и программу |алгоритмических структурах. |
|обработки этих данных и относится к |Кроме того, ООП позволяет резко |
|определенному классу. |сократить объем и трудоемкость |
| |подготовки программ, имеющих дело с|
|Основная цель ООП - преодолеть следующие |множеством связанных друг с другом |
|недостатки проектирования “сверху вниз”: |объектов. |
|- недостаточное внимание к структурам данных, |Объектно-ориентированный анализ – |
|- слабая связь структур данных с процессами их |это выявление объектов, определение|
|обработки. |свойств и методов обработки |
| |объектов, установление их |
| |взаимосвязей. |
| |ООП процесс объектной декомпозиции |
| |и представления с использованием |
| |моделей данных проектируемой |
| |системы на логическом и физическом |
| |уровнях. |
|0.5.2. Этапы создания ПП |0.5 |
|Составление технического задания на програм- |Создание программных продуктов |
Страницы: 1, 2, 3, 4, 5, 6
|