Оцените презентацию от 1 до 5 баллов!
Тип файла:
ppt / pptx (powerpoint)
Всего слайдов:
28 слайдов
Для класса:
1,2,3,4,5,6,7,8,9,10,11
Размер файла:
139.14 kB
Просмотров:
74
Скачиваний:
0
Автор:
неизвестен
Слайды и текст к этой презентации:
№1 слайд![Понятие программы Лекция](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img0.jpg)
Содержание слайда: Понятие программы
Лекция 1
№2 слайд![План лекции Информация об](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img1.jpg)
Содержание слайда: План лекции
Информация об этом курсе
Понятие программы
Этапы создания программ
№3 слайд![Информация об этом курсе](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img2.jpg)
Содержание слайда: Информация об этом курсе
Петров Евгений Сергеевич
Программа курса http://nsu.ru/rs/mw/link/Media:/30785/Б3.Б.4_Программирование.pdf
Лекция + семинар + практика каждую учебную неделю
№4 слайд![Информация об этом курсе](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img3.jpg)
Содержание слайда: Информация об этом курсе
Денис, Ритчи «Язык программирования Си», 3-е издание
Кормен и ещё три автора «Алгоритмы: построение и анализ», любое издание
Макконелл «Совершенный код», любое издание
Чурина, Цикоза методическое пособие в 3-х частях к курсу «Методы программирования»
Полный список литературы см. в программе курса
№5 слайд![Понятие программы Программа](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img4.jpg)
Содержание слайда: Понятие программы
Программа – это данные, предназначенные для управления конкретными компонентами системы обработки информации в целях реализации определенного алгоритма. (ГОСТ 19781—90)
Программа – это представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств с целью получения определённого результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения. (ГК РФ)
№6 слайд![Понятие программы Программа](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img5.jpg)
Содержание слайда: Понятие программы
Программа – это размещённые в оперативной памяти компьютера данные и машинные инструкции, исполняемые процессором для достижения некоторой цели. (Википедия)
№7 слайд![Понятие программы](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img6.jpg)
Содержание слайда: Понятие программы
№8 слайд![Этапы создания программ](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img7.jpg)
Содержание слайда: Этапы создания программ
Накопление требований, работа с заказчиком
Проектирование – процедурная декомпозиция, ОО, др.
Внутреннее и внешнее документирование
Разработка
Написание исходного кода
Компиляция исходного кода
Сборка
Отладка
Оптимизация
Тестирование
Сдача в эксплуатацию (релиз)
Сопровождение
№9 слайд![Каскадный подход](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img8.jpg)
Содержание слайда: Каскадный подход
№10 слайд![Инкрементальный подход](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img9.jpg)
Содержание слайда: Инкрементальный подход
№11 слайд![Эволюционный подход](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img10.jpg)
Содержание слайда: Эволюционный подход
№12 слайд![Этапы создания программ](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img11.jpg)
Содержание слайда: Этапы создания программ
№13 слайд![Написание исходного кода](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img12.jpg)
Содержание слайда: Написание исходного кода
Выбор языка программирования
Следование стандарту языка
Стив Макконнелл Совершенный код (Steve McConnell Code Complete)
Следование системе правил
Именование типов, переменных, констант, функций, файлов
Деление кода на функции, файлы, компоненты
Форматирование и комментирование кода
Минимальное дублирование и максимальное переиспользование кода
Типовые решения типовых задач
Рефакторинг кода (code refactoring)
Ревью изменений (code review)
…
№14 слайд![Написание исходного кода](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img13.jpg)
Содержание слайда: Написание исходного кода – венгерская нотация
Чарльз Симони (Simonyi Károly) р. 1948 Будапешт
Разработка MS DOS
Космический
турист 2005 и 2007
№15 слайд![Компиляция исходного кода](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img14.jpg)
Содержание слайда: Компиляция исходного кода
Файлы с исходным кодом называются единицами компиляции
Результатом компиляции является файл с объектным кодом
Если изменения в файле Ф1 могут нарушить логику работы кода в файле Ф2, то Ф2 зависит от Ф1
Системы компиляции умеют автоматически учитывать некоторые зависимости между файлами
GNU make, MS nmake, scons, …
За учёт всех зависимостей отвечает программист
№16 слайд![Компиляция исходного кода](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img15.jpg)
Содержание слайда: Компиляция исходного кода
Стадии работы компилятора
Формирование лексем (след. лекция)
Синтаксический анализ
Семантический анализ
Оптимизация
Генерация кода
№17 слайд![Сборка линковка Различают три](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img16.jpg)
Содержание слайда: Сборка (линковка)
Различают три вида сборки
Сборка статической библиотеки
Сборка динамической библиотеки
Сборка исполняемого файла
№18 слайд![Сборка статической библиотеки](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img17.jpg)
Содержание слайда: Сборка статической библиотеки
Вход: объектные файлы
Выход: архив, содержащий эти файлы
Статическая библиотека – средство группирования логически связанных объектных файлов
№19 слайд![Сборка динамической](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img18.jpg)
Содержание слайда: Сборка динамической библиотеки
Вход: объектные файлы, статические библиотеки, ранее созданные динамические библиотеки
Выход: файл со служебной информацией для ОС и машинными инструкциями, годными для исполнения процессором
Динамическая библиотека – средство построения программ в процессе их работы
№20 слайд![Сборка исполняемого файла](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img19.jpg)
Содержание слайда: Сборка исполняемого файла
Вход: объектные файлы, статические библиотеки, динамические библиотеки
Выход: файл со служебной информацией для ОС, машинными инструкциями, годными для исполнения процессором, и «точкой входа»
№21 слайд![Компиляция, сборка, загрузка](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img20.jpg)
Содержание слайда: Компиляция, сборка,
загрузка в память для исполнения
№22 слайд![Компиляция worker.h void do](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img21.jpg)
Содержание слайда: Компиляция 1/3
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;
}
№23 слайд![Компиляция](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img22.jpg)
Содержание слайда: Компиляция 2/3
№24 слайд![Компиляция](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img23.jpg)
Содержание слайда: Компиляция 3/3
№25 слайд![Сборка линковка](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img24.jpg)
Содержание слайда: Сборка (линковка)
№26 слайд![Отладка Достижение](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img25.jpg)
Содержание слайда: Отладка
Достижение работоспособности программы, устранение грубых ошибок
Методы отладки
Имитация пошагового исполнения с помощью «карандаша и бумаги» для простых случаев
Трассировка работы программы с помощью отладочной печати
Проверка необходимых условий корректности в ходе работы программы
Пошаговое исполнение программы с помощью отладчика
№27 слайд![Оптимизация Улучшение](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img26.jpg)
Содержание слайда: Оптимизация
Улучшение количественных характеристик программы
Время компиляции
Время загрузки
Время работы
Размер используемой памяти (данных на диске)
Размер исходного кода
Размер исполняемого кода
№28 слайд![Заключение Информация об этом](/documents_6/17fa8a6ea0c6ce9fe3b5b12cd53a7758/img27.jpg)
Содержание слайда: Заключение
Информация об этом курсе
Понятие программы
Этапы разработки программ
Написание исходного кода
Компиляция исходного кода
Сборка
Отладка
Оптимизация
Тестирование