Презентация на тему "Понятие программы"

Презентация: Понятие программы
1 из 25
Ваша оценка презентации
Оцените презентацию по шкале от 1 до 5 баллов
  • 1
  • 2
  • 3
  • 4
  • 5
4.0
1 оценка

Комментарии

Нет комментариев для данной презентации

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


Добавить свой комментарий

Аннотация к презентации

Скачать презентацию (0.13 Мб). Тема: "Понятие программы". Предмет: информатика. 25 слайдов. Для учеников 8-9 класса. Добавлена в 2017 году. Средняя оценка: 4.0 балла из 5.

Содержание

  • Презентация: Понятие программы
    Слайд 1

    Понятие программы

    Лекция 1

  • Слайд 2

    План лекции

    Информация об этом курсе Понятие программы Этапы создания программ

  • Слайд 3

    Информация об этом курсе

    http://koi.nsu.ru/new/courses/programming_yvu/index.html Петров Евгений Сергеевич 1й семестр 16 учебных недель 1-2 потоковых контрольных работы Дифференцированный зачёт 2й семестр 16 учебных недель 1-2 потоковых контрольных работы Экзамен Лекция + семинар + практика каждую учебную неделю

  • Слайд 4

    Понятие программы

    Программа – это данные, предназначенные для управления конкретными компонентами системы обработки информации в целях реализации определенного алгоритма. (ГОСТ 19781—90) Программа – это представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств с целью получения определённого результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения. (ГК РФ)

  • Слайд 5

    Программа – это размещённые в оперативной памяти компьютера данные и машинные инструкции, исполняемые процессором для достижения некоторой цели. (Википедия)

  • Слайд 6
  • Слайд 7

    Этапы создания программ

    Накопление требований, работа с заказчиком Проектирование – процедурная декомпозиция, ОО, др. Внутреннее и внешнее документирование Разработка Написание исходного кода Компиляция исходного кода Сборка Отладка Оптимизация Тестирование Сдача в эксплуатацию (релиз) Сопровождение

  • Слайд 8

    Этапы создания программ – каскад

  • Слайд 9

    Этапы создания программ – инкремент

  • Слайд 10

    Этапы создания программ – эволюция

  • Слайд 11

    Этапы создания программ

  • Слайд 12

    Написание исходного кода

    Выбор языка программирования Следование стандарту языка Следование системе правил Именование типов, переменных, констант, функций, файлов Деление кода на функции, файлы, компоненты Форматирование и комментирование кода Минимальное дублирование кода Похожим действия -- похожая запись («устойчивые обороты») Рефакторинг кода (code refactoring) Ревью кода (code review) if (1==x) x=0; else x=1; x=1-x; int T[2] = {1, 0}; x = T[x]; x = x?0:1; x = !x; if (1==x) x=0; else if (0==x) x=1; else assert(x==0||x==1);

  • Слайд 13

    Компиляция исходного кода

    Файлы с исходным кодом называются единицами компиляции Результатом компиляции является файл с объектным кодом Если изменения в файле Ф1 могут нарушить логику работы кода в файле Ф2, то Ф2 зависит от Ф1 Системы компиляции умеют автоматически учитывать некоторые зависимости между файлами GNU make, MS nmake, scons, … За учёт всех зависимостей отвечает программист

  • Слайд 14

    worker.h void do_some_work(); worker.c #include "worker.h" void do_some_work() { /* … */ } main.c #include "worker.h" int main() { do_some_work(); return 0; } Изменения в worker.cтребуют изменений в worker.hи перекомпиляции worker.cи main.c Для чего нужна строка #include "worker.h" в файле worker.c?

  • Слайд 15

    Сборка (линковка)

    Различают три вида сборки Сборка статической библиотеки Сборка динамической библиотеки Сборка исполняемого файла

  • Слайд 16

    Сборка статической библиотеки

    Вход: объектные файлы Выход: архив, содержащий эти файлы Статическая библиотека – средство группирования логически связанных объектных файлов

  • Слайд 17

    Сборка динамической библиотеки

    Вход: объектные файлы, статические библиотеки, ранее созданные динамические библиотеки Выход: файл со служебной информацией для ОС и машинными инструкциями, годными для исполнения процессором Динамическая библиотека – средство построения программ в процессе их работы

  • Слайд 18

    Сборка исполняемого файла

    Вход: объектные файлы, статические библиотеки, динамические библиотеки Выход: файл со служебной информацией для ОС, машинными инструкциями, годными для исполнения процессором, и «точкой входа»

  • Слайд 19

    Компиляция, сборка,загрузка в память для исполнения

    К – компилятор Л – линкер, редактор связей З – загрузчик ОС Исполняемый код З Л К Исполняемый файл Динамическая библиотека Статическая библиотека Объектный код Свой исходный код Чужой исходный код (заголовочные файлы библиотек и т.п.)

  • Слайд 20

    Сборка (линковка)

    c:\Users\espetrov>cl –c worker.c c:\Users\espetrov>dumpbin /all /disasm worker.obj

  • Слайд 21

    c:\Users\espetrov>cl –c main.c c:\Users\espetrov>dumpbin /all /disasm main.obj

  • Слайд 22

    c:\Users\espetrov>link main.obj worker.obj /nodefaultlib /entry:main -out:main.exe c:\Users\espetrov>dumpbin/all /disasmmain.exe

  • Слайд 23

    Отладка

    Достижение работоспособности программы, устранение грубых ошибок Методы отладки Имитация пошагового исполнения с помощью «карандаша и бумаги» для простых случаев Трассировка работы программы с помощью отладочной печати Проверка необходимых условий корректности в ходе работы программы Пошаговое исполнение программы с помощью отладчика

  • Слайд 24

    Оптимизация

    Улучшение количественных характеристик программы Время компиляции Время загрузки Время работы Размер используемой памяти (данных на диске) Размер исходного кода Размер исполняемого кода Компилятор и линкер умеют автоматически делать некоторые преобразования программ, не зависящие от смысла (семантики) программы Сохраняют корректность программы Могут менять некорректную программу неожиданным образом Могут ухудшать количественные характеристики программы За результат оптимизации отвечает программист Понимая семантику программы, программист имеет возможность добиться большего эффекта, чем компилятор и линкер

  • Слайд 25

    Заключение

    Информация об этом курсе Понятие программы Этапы создания программ Накопление требований, проектирование, документирование, сдача в эксплуатацию, сопровождение Обзор Разработка Написание исходного кода Компиляция исходного кода Сборка Отладка Оптимизация Тестирование

Посмотреть все слайды

Сообщить об ошибке