Информатика. Базовые понятия и определения презентация

Содержание

Слайд 2

Содержание:
Базовые понятия и определения………………………….3
Представление данных. Принцип программного управления…………………………………………………….39
Методологии и языки программирования……………..88
Структуры данных. Основы

проектирования баз данных.………………………………………………………..114

Москва, 2016

Кафедра «Информатика»

Слайд 3

Базовые понятия и определения

Задача.

Задача - координированная и систематизированная серия элементов работы, используемых для

достижения результатов.

Слайд 4

Решение задач

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

Базовые

понятия и определения

Слайд 5

Алгоритм

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

Алгоритмизация

– процесс разработки алгоритма (плана действий) для решения задачи. Алгоритмы реализованные на компьютере решают сложные задачи:
в медицине;
в производстве;
в сфере безопасности

Базовые понятия и определения

Слайд 6

Свойства алгоритмов.

Это свойство указывает , что любой алгоритм должен состоять из конкретных действий,

следующих в определенном порядке.

Дискретность

Базовые понятия и определения

Слайд 7

Свойства алгоритмов.

Это свойство указывает , что любой алгоритм должен состоять из конкретных действий,

следующих в определенном порядке.

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

Базовые понятия и определения

Слайд 8

Свойства алгоритмов.

Это свойство определяет, что каждое действие в отдельности и алгоритм в

целом должны иметь возможность завершения

Конечность

Базовые понятия и определения

Слайд 9

Свойства алгоритмов.

Это свойство определяет, что каждое действие в отдельности и алгоритм в

целом должны иметь возможность завершения

Конечность

Базовые понятия и определения

Слайд 10

Свойства алгоритмов.

Это свойство требует, чтобы в алгоритме не было ошибок. Алгоритм должен

всегда приводить к какому – либо результату.

Результативность

Базовые понятия и определения

Слайд 11

Способы записи алгоритма

Словесно-формульный (на естественном языке с использованием математических формул)
Графический (блок-схема)
На языке программирования

(программа)

Базовые понятия и определения

Слайд 12

Словестно-формульный способ

A x2 + B x + C = 0
Начать.
Ввод A, B, C.
D

= B2 - 4 A C.
Если D < 0, то идти к п. 6.
Если D > 0, то идти к п. 8.
Действительных корней нет.
Идти к п. 10.
X1 = (- B - ) / 2 A ; X2 = (- B + ) / 2 A .
Вывести значения X1 и X2.
Закончить.

Базовые понятия и определения

Слайд 13

Графический способ

Базовые понятия и определения

Слайд 14

Запись на языке программирования

program example;
var a,b,c: integer;d,x1,x2:real;
begin
writeln ('a,b,c');
readln (a,b,c);
d:=sqr(b)-4*a*c;
if

d<0 then
begin
writeln ('no korny');
end
else
begin
x1:=(-b-sqrt(d))/2*a;
x2:=(-b+sqrt(d))/2*a;
writeln ('x1=',x1,' x2=',x2);
end;
readln;
end.

Базовые понятия и определения

Слайд 15

Условные графические обозначения в блок-схемах

Базовые понятия и определения

Слайд 16

Цикл

Базовые понятия и определения

Слайд 17

Ветвление

Базовые понятия и определения

Слайд 18

Множественное ветвление

Базовые понятия и определения

Слайд 19

Программа

Программа — термин, в переводе означающий «предписание», то есть предварительное описание предстоящих событий или

действий, регламентированное алгоритмом.

Базовые понятия и определения

Слайд 20

Программное обеспечение

Программное обеспечение (ПО) — совокупность всех программ, хранящихся на всех устройствах долговременной

памяти компьютера.

Программное обеспечение

Системное

Прикладное

Инструментальное

Базовые понятия и определения

Слайд 21

Системное программное обеспечение

Системное программное обеспечение — необходимая часть ПО, без которой не может

работать компьютер.
Главной частью системного ПО является операционная система (ОС).
Некоторые ОС: MS-DOS, Windows, Linux, MACos, Android.
Также к системному ПО можно отнести:
обслуживания дисков (копирование, форматирование, «лечение» и пр.)
сжатия файлов (архиваторы)
антивирусы

Базовые понятия и определения

Слайд 22

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

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

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

Базовые понятия и определения

Слайд 23

Инструментальное программное обеспечение

К инструментальному ПО относятся системы программирования.
Системы программирования — инструмент для работы

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

Базовые понятия и определения

Слайд 24

Информация.

Информация для человека – это знания, которые он получает из различных источников.
Свойства

информации
Понятность
Полезность
Достоверность
Актуальность
Полнота
Точность

Базовые понятия и определения

Слайд 25

Единицы измерения информации

Единицами измерения информации являются биты (0 и 1) и байты.
1

байт – это 8 битов.

Базовые понятия и определения

Слайд 26

Количество информации

i – число бит информации
N – количество возможных событий

Базовые понятия и определения

Слайд 27

Размерности и их соотношения

8 бит = 1 байт
1 Кб = 1024 байта
1 Мб

= 1024 Кб
1 Гб = 1024 Мб
1 Тб = 1024 Гб

Базовые понятия и определения

Слайд 28

Информационные технологии

Информацио́нные техноло́гии (ИТ, от англ. information technology, IT) — широкий класс дисциплин и областей деятельности, относящихся к технологиям создания,

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

Базовые понятия и определения

Слайд 29

Данные.

Это значения, необходимые для выполнения программы, хранящиеся в ячейках памяти.
Типы данных – числовые

и текстовые
Операции с данными:
ввод (сбор) данных — накопление данных с целью обеспечения достаточной полноты для принятия решений;
формализация данных — приведение данных, поступающих из разных источников, к одинаковой форме, для повышения их доступности;
фильтрация данных — это отсеивание «лишних» данных, в которых нет необходимости для повышения достоверности и адекватности;
сортировка данных — это упорядочивание данных по заданному признаку с целью удобства их использования;
архивация — это организация хранения данных в удобной и легкодоступной форме;
защита данных — включает меры, направленные на предотвращение утраты, воспроизведения и модификации данных;
транспортировка данных — приём и передача данных между участниками информационного процесса;
преобразование данных — это перевод данных из одной формы в другую или из одной структуры в другую.

Базовые понятия и определения

Слайд 30

Числа в арифметике

Арифметика  — раздел математики, изучающий числа, их отношения и свойства.
Числа

Базовые понятия и определения

Слайд 31

Выражения.

Выражение в математике - это практически всё, с чем мы собственно и имеем

дело в математике. Уравнения, дроби, примеры, формулы...
1+1 - это выражение;
a+b+c - это выражение;
уравнение 5x+12=37 - это 2 математических выражения, соединённые знаком равенства;
дробь - математическое выражение, состоящее из числителя и знаменателя.

Базовые понятия и определения

Слайд 32

Операнды

Операнд в языках программирования ― аргумент операции; данные, которые обрабатываются командой; грамматическая конструкция, обозначающая

выражение, задающее значение аргумента операции; иногда операндом называют место, позицию в тексте, где должен стоять аргумент операции. Отсюда понятие местности, или арности, операции, то есть числа аргументов операции.
Виды операндов:
Целые числа
Вещественные числа (дробные)
Символы
Строки
Логический операнд (да/нет, true/false)

Базовые понятия и определения

Слайд 33

Знаки операций

Базовые понятия и определения

Слайд 34

Идентификаторы

Идентификаторы  - имена объектов и конструкций программы (меток,  констант, типов, переменных, типов, процедур,

функций, объектов, модулей, программ, полей в записях и т.д.).
Имя состоит из латинской буквы, за которой могут следовать латинские буквы, цифры или символ подчеркивания.
Примеры:
first – правильно
a1 – правильно
1q – НЕ правильно

Базовые понятия и определения

Слайд 35

Константы

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


Примеры:
Pi=3.14
M12=‘Декабрь’

Базовые понятия и определения

Слайд 36

Законы арифметики

Коммутативность
a+b=b+a a*b=b*a

Базовые понятия и определения

Слайд 37

Законы арифметики

Ассоциативность
a+(b+с)=(a+b)+c a*(b*c)=(a*b)*c

Базовые понятия и определения

Слайд 38

Законы арифметики

Дистрибутивность
a*(b+с)=a*b+a*c

Базовые понятия и определения

Слайд 39

Представление данных. Принцип программного управления

Основы алгебры логики.

Алгебра – это раздел математики, предназначенный для описания

действий над переменными величинами, которые принято обозначать строчными буквами латинского алфавита – а, b, x, y и т.д. Действия над переменными величинами записываются  в виде математических выражений.
Алгеброй логики называется аппарат, который позволяет выполнять действия над высказываниями.
Алгебру логику называют также алгеброй Буля, или булевой алгеброй, по имени английского математика Джорджа Буля, разработавшего в XIX веке ее  основные положения.

Слайд 40

Основы алгебры логики.

В булевой алгебре высказывания принято обозначать прописными латинскими буквами: A, B,

X, Y. В алгебре Буля введены три основные логические операции с высказываниями: сложение, умножение, отрицание. Определены аксиомы (законы) алгебры логики для выполнения этих операций. Действия, которые производятся над высказываниями, записываются в виде логических выражений.

Представление данных. Принцип программного управления

Слайд 41

Простое логическое выражение

Простое логическое выражение состоит из одного высказывания и не содержит логические операции.

В простом логическом выражении возможно только два результата — либо «истина», либо «ложь».
Примеры:
a>b
существует a

Представление данных. Принцип программного управления

Слайд 42

Сложное логическое выражение

Сложное логическое выражение содержит высказывания, объединенные логическими операциями. По аналогии с понятием

функции в алгебре сложное логическое выражение содержит аргументы, которыми являются высказывания.
В качестве основных логических операций в сложных логических выражениях используются следующие:
• НЕ (логическое отрицание, инверсия);
• ИЛИ (логическое сложение, дизъюнкция);
• И (логическое умножение, конъюнкция).
Пример:
login=‘Vasya’ и pass=‘123’

Представление данных. Принцип программного управления

Слайд 43

Местность операции

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

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

Представление данных. Принцип программного управления

Слайд 44

Таблицы истинности

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

для всех возможных логических значений исходных высказываний. Количество вариантов, отражающих результат применения операций, будет зависеть от количества высказываний в логическом выражении, например:
таблица истинности одноместной логической операции состоит из двух строк: два различных значения аргумента — «истина» (1) и «ложь» (0) и два соответствующих им значения функции;
в таблице истинности двуместной логической операции — четыре строки: 4 различных сочетания значений аргументов — 00, 01, 10 и 11 и 4 соответствующих им значения функции;
если число высказываний в логическом выражении N, то таблица истинности будет содержать 2N строк, так как существует 2N различных комбинаций возможных значений аргументов.

Представление данных. Принцип программного управления

Слайд 45

Операция НЕ — логическое отрицание (инверсия)

Логическая операция НЕ применяется к одному аргументу, в

качестве которого может быть и простое, и сложное логическое выражение. Результатом операции НЕ является следующее:
• если исходное выражение истинно, то результат его отрицания будет ложным;
• если исходное выражение ложно, то результат его отрицания будет истинным.
Для операции отрицания НЕ приняты следующие условные обозначения:
не А,  Ā,  not A,  ¬А.
Результат операции отрицания НЕ определяется следующей таблицей истинности:
Результат операции отрицания истинен, когда исходное высказывание ложно, и наоборот.

Представление данных. Принцип программного управления

Слайд 46

Операция ИЛИ — логическое сложение (дизъюнкция, объединение)

Логическая операция ИЛИ выполняет функцию объединения двух

высказываний, в качестве которых может быть и простое, и сложное логическое выражение. Высказывания, являющиеся исходными для логической операции, называют аргументами. Результатом операции ИЛИ является выражение, которое будет истинным тогда и только тогда, когда истинно будет хотя бы одно из исходных выражений.
Применяемые обозначения: А или В,  А V В,  A or B.
Результат операции ИЛИ определяется следующей таблицей истинности:

Представление данных. Принцип программного управления

Слайд 47

Операция И — логическое умножение (конъюнкция)

Логическая операция И выполняет функцию пересечения двух высказываний

(аргументов), в качестве которых может быть и простое, и сложное логическое выражение. Результатом операции И является выражение, которое будет истинным тогда и только тогда, когда истинны оба исходных выражения.
Применяемые обозначения: А и В, А Λ В, A  & B, A and B.
Результат  операции  И  определяется  следующей таблицей истинности:

Представление данных. Принцип программного управления

Слайд 48

Операция «ЕСЛИ-ТО» — логическое следование (импликация)

Эта операция связывает два простых логических выражения, из

которых первое является условием, а второе — следствием из этого условия.
Применяемые обозначения:
если А, то В; А влечет В; if A then В; А→ В.
Таблица истинности:

Представление данных. Принцип программного управления

Слайд 49

Операция «А тогда и только тогда, когда В» (эквивалентность, равнозначность)

Применяемое обозначение: А ↔

В, А ~ В.
Таблица истинности:

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

Представление данных. Принцип программного управления

Слайд 50

Приоритет логических операций

Действия в скобках
Инверсия
Конъюнкция ( & )
Дизъюнкция ( V )
Импликация ( →

)
Эквивалентность ( ↔ )

Представление данных. Принцип программного управления

Слайд 51

Закон противоречия

Представление данных. Принцип программного управления

Слайд 52

Закон исключенного третьего

Представление данных. Принцип программного управления

Слайд 53

Закон двойного отрицания

Представление данных. Принцип программного управления

Слайд 54

Законы де Моргана

Представление данных. Принцип программного управления

Слайд 55

Законы повторения

A & A = A; A v A = A;
В &

В = В; В v В = В.

Представление данных. Принцип программного управления

Слайд 56

Законы склеивания

Представление данных. Принцип программного управления

Слайд 57

Пример использования законов алгебры логики

Представление данных. Принцип программного управления

Слайд 58

Применение таблиц истинности к логическим функциям

Представление данных. Принцип программного управления

Слайд 59

Системы счисления

Числа записываются с использованием особых знаковых систем, которые называются системами счисления, в

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

Представление данных. Принцип программного управления

Слайд 60

Виды систем счисления

Системы счисления
непозиционные позиционные I (1), V (5), X (10) 2016
2*1000+0*100 +1*10+4*1

Представление данных. Принцип

программного управления

Слайд 61

Виды систем счисления

Наиболее употребляемыми в настоящее время позиционными системами являются:
2 — двоичная (в дискретной математике, информатике, программировании);
3 — троичная;
8 — восьмеричная;
10 — десятичная (используется повсеместно);
12 — двенадцатеричная (счёт дюжинами);
16 — шестнадцатеричная (используется

в программировании, информатике);
60 — шестидесятеричная (единицы измерения времени, измерение углов и, в частности, координат, долготы и широты)

Представление данных. Принцип программного управления

Слайд 62

Системы со связанными основаниями

Представление данных. Принцип программного управления

Слайд 63

Двоичная арифметика. Сложение.

Пример 1. Сложить двоичные числа:
1001112 + 111012.
РЕШЕНИЕ:
100111

11101

+

1000100

В итоге получаем:
1001112 + 111012 = 10001002

Представление данных. Принцип программного управления

Слайд 64

Двоичная арифметика. Вычитание.

Если нам необходимо найти разность двух
двоичных чисел, то нужно:
Сравнять количество

разрядов обоих чисел;
Инвертировать вычитаемое путем замены нулей
единицами, а единицы – нулями;
3. Добавить дополнительную единицу;
4. Сложить оба числа;
5. Удалить единицу самого старшего разряда.

Представление данных. Принцип программного управления

Слайд 65

Двоичная арифметика. Вычитание.

1100112 – 0010012 =
110011
110110

+

1101010

Отбрасываем единицу старшего разряда, получаем:
101010.
В

итоге получаем:
1100112 – 10012 = 1010102

Представление данных. Принцип программного управления

Слайд 66

Двоичная арифметика. Умножение.

0 * 0 = 0 1 * 0 = 0 1

* 1 = 1

Представление данных. Принцип программного управления

Слайд 67

Двоичная арифметика. Умножение.

+

Получаем:
11011012 * 1012 = 10001000012

1101101
101
1101101

1101101

1000100001

*

11011012 *

1012.

Представление данных. Принцип программного управления

Слайд 68

Базовая структура ЭВМ. Принцип фон Неймана.

Представление данных. Принцип программного управления

Слайд 69

Системный блок

ЭВМ образца 1967г

Представление данных. Принцип программного управления

Слайд 70

Единицы измерения ёмкости запоминающих устройств

Представление данных. Принцип программного управления

Слайд 71

Представление целых и вещественных чисел в памяти ЭВМ

Целые числа

Целые числа без знака
(только

положительные)

Целые числа со знаком (положительные и отрицательные)

Представление данных. Принцип программного управления

Слайд 72

Целые числа без знака

Обычно занимают в памяти один или два байта.
В

однобайтовом формате значения от 000000002 до 111111112 (0…255)
Пример 7210=10010002
Биты числа

номера разрядов 7 6 5 4 3 2 1 0

Представление данных. Принцип программного управления

Слайд 73

Целые числа со знаком

Обычно занимают в памяти компьютера 1, 2 или 4 байта,

при этом самый левый (старший) разряд содержит информацию о знаке числа. Знак «+» кодируется 0, а «-» - 1

Знак числа «+»

110=12

Представление данных. Принцип программного управления

Слайд 74

Способы записи целых чисел в памяти компьютера

В компьютерной технике применяются три формы записи

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

Прямой код

Знак числа «-»

Представление данных. Принцип программного управления

Слайд 75

Обратный код

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

знака: нули заменяются единицами, а единицы – нулями.
Пример
Число: -1.
Код модуля числа: 0 0000001.
Обратный код числа: 1 1111110.

Представление данных. Принцип программного управления

Слайд 76

Дополнительный код

Получается образованием обратного кода с последующем прибавлением единицы к его младшему разряду.
Пример
Число:

-1.
Код модуля числа: 0 0000001.
Обратный код числа: 1 1111110
+1
1 1111111

Представление данных. Принцип программного управления

Слайд 77

Кодирование вещественных чисел

Форма с плавающей точкой использует представление вещественного числа R в виде

произведения мантиссы m на основание системы счисления р в некоторой целой степени n, которую называют порядком:
R = m * рn
m – мантисса,
n – порядок,
p – основание системы.

Представление данных. Принцип программного управления

Слайд 78

Например, число 25,324 можно записать в таком виде: 0.25324х102.
Здесь m=0.25324 — мантисса,


n=2 — порядок. Порядок указывает, на какое количество позиций и в каком направлении должна «переплыть», т.е. сместиться десятичная точка в мантиссе. Отсюда название «плавающая точка».
Однако справедливы и следующие равенства:
25,324 = 2,5324*101 = 0,0025324*104 = 2532,4*102 и т.п.

Представление данных. Принцип программного управления

Слайд 79

Получается, что представление числа в форме с плавающей точкой неоднозначно.
Чтобы

не было неоднозначности, в ЭВМ используют нормализованное представление числа в форме с плавающей точкой. Мантисса в нормализованном представлении должна удовлетворять условию:
0,1p ≤ m < 1p.

Иначе говоря, мантисса меньше единицы и первая значащая цифра — не ноль. Значит для рассмотренного числа нормализованным представлением будет: 25,324=0.25324 * 102.

Представление данных. Принцип программного управления

Слайд 80

Пусть в памяти компьютера вещественное число представляется в форме с плавающей точкой в

двоичной системе счисления (р=2) и занимает ячейку размером 4 байта. В ячейке должна содержаться следующая информация о числе: знак числа, порядок и значащие цифры мантиссы. Вот как эта информация располагается в ячейке:

1-й байт 2-й байт  3-й байт 4-й байт

В старшем бите 1-го байта хранится знак числа. В этом разряде 0 обозначает плюс, 1 — минус. Оставшиеся 7 бит первого байта содержат машинный порядок. В следующих трех байтах хранятся значащие цифры мантиссы.

Представление данных. Принцип программного управления

Слайд 81

Что такое машинный порядок?
В семи двоичных разрядах помещаются двоичные числа в диапазоне

от 0000000 до 1111111. В десятичной системе это соответствует диапазону от 0 до 127. Всего 128 значений. Знак порядка в ячейке не хранится. Но порядок, очевидно, может быть как положительным так и отрицательным. Разумно эти 128 значений разделить поровну между положительными и отрицательными значениями порядка. В таком случае между машинным порядком и истинным (назовем его математическим) устанавливается следующее соответствие:

Если обозначить машинный порядок Мр, а математический — р, то связь между ними выразится такой формулой:
Мр = р + 64.

Представление данных. Принцип программного управления

Слайд 82

Итак, машинный порядок смещён относительно математического на 64 единицы и имеет только положительные

значения. При выполнении вычислений с плавающей точкой процессор это смещение учитывает.
В двоичной системе счисления смещение:
Мр2 = р2+100 00002

Представление данных. Принцип программного управления

Слайд 83

Теперь мы можем записать внутреннее представление числа 25,324 в форме с плавающей точкой.


1)Переведем его в двоичную систему счисления с 24 значащими цифрами.
25,32410= 11001,01010010111100011012
2)Запишем в форме нормализованного двоичного числа с плавающей точкой:
0,110010101001011110001101*10101

Здесь мантисса, основание системы счисления (210=102) и порядок (510=1012)записаны в двоичной системе.

3) Вычислим машинный порядок.
Мр2 = 101 + 100 0000 = 100 0101.

4) Запишем представление числа в ячейке памяти.

порядок

мантисса


Представление данных. Принцип программного управления

Слайд 84

Представление символьной информации

Для представления текстовой информации достаточно 256 различных символов.
N = 2I, 256

= 2I , 28 = 2I ,I = 8 битов
Для кодирования каждого знака требуется количество информации, равное 8 битам.
Для представления текста в памяти компьютера необходимо представить его в двоичной знаковой системе.
Каждому знаку необходимо поставить в соответствие уникальный двоичный код в интервале от 00000000 до 11111111 (в десятичном коде от 0 до 255)

Представление данных. Принцип программного управления

Слайд 85

Таблицы символов

Для представления символов и соответствующих им кодов используется кодовая таблица.
В качестве стандарта

во всем мире принята таблица ASCII (American Standard Code for Information Interchange – Американский стандартный код для обмена информацией). Условно таблица разделена на части:
от 0 до 32 коды соответствуют операциям;
с 33 по 127 соответствуют символам латинского алфавита, цифрам, знакам арифметических операций и знакам препинания;
со 128 по 255 являются национальными.

Представление данных. Принцип программного управления

Слайд 86

Представление данных. Принцип программного управления

Слайд 87

Типы данных

Целые числа
Вещественные числа (дробные)
Символы
Строки
Логический операнд (да/нет, true/false)

Представление данных. Принцип программного управления

Слайд 88

Методологии и языки программирования

Стадии и этапы разработки программ.

Определяются стандартами:
ГОСТ 34.601-90
ISO/IEC 12207:2008 «System

and software engineering — Software life cycle processes» (российский аналог — ГОСТ Р ИСО/МЭК 12207-2010 Информационная технология. Системная и программная инженерия. Процессы жизненного цикла программных средств)

Слайд 89

Стандарт ГОСТ 34.601-90

Стандарт ГОСТ 34.601-90 предусматривает следующие стадии и этапы создания автоматизированной системы:
Формирование требований к АС
Разработка концепции

АС
Техническое задание
Эскизный проект
Технический проект
Рабочая документация
Ввод в действие
Сопровождение АС.

Методологии и языки программирования

Слайд 90

Модели жизненного цикла

Модель жизненного цикла ПО — структура, определяющая последовательность выполнения и взаимосвязи процессов,

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

Методологии и языки программирования

Слайд 91

Водопадная (каскадная, последовательная) модель

Водопадная модель жизненного цикла была предложена в 1970 г. Уинстоном Ройсом.

Она предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Требования, определенные на стадии формирования требований, строго документируются в виде технического задания и фиксируются на все время разработки проекта. Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
Этапы проекта в соответствии с каскадной моделью:
Формирование требований;
Проектирование;
Реализация;
Тестирование;
Внедрение;
Эксплуатация и сопровождение.

Методологии и языки программирования

Слайд 92

Методологии и языки программирования

Слайд 93

Итерационная модель

Модель предполагает разбиение жизненного цикла проекта на последовательность итераций, каждая из которых

напоминает «мини-проект», включая все процессы разработки в применении к созданию меньших фрагментов функциональности, по сравнению с проектом в целом. Цель каждой итерации — получение работающей версии программной системы, включающей функциональность, определённую интегрированным содержанием всех предыдущих и текущей итерации. Результат финальной итерации содержит всю требуемую функциональность продукта. Таким образом, с завершением каждой итерации продукт получает приращение — инкремент — к его возможностям, которые, следовательно, развиваются эволюционно. Итеративность, инкрементальность и эволюционность в данном случае есть выражение одного и то же смысла разными словами со слегка разных точек зрения[3].

Методологии и языки программирования

Слайд 94

Методологии и языки программирования

Слайд 95

Спиральная модель

Спиральная модель  была разработана в середине 1980-х годов Барри Боэмом. При использовании этой

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

Методологии и языки программирования

Слайд 96

Методологии и языки программирования

Слайд 97

Проблемы программирования

Локальное программирование
Глобальное программирование

Методологии и языки программирования

Слайд 98

Локальное программирование

Проблемы системы типов
При передачи значения одного типа данных с разным размером выделяемой

памяти (int(2) -> double(8))
Проблемы с метаданными
При использовании компиллировании программного кода помимо исполняемого когда они наполняются инструкциями по обработке
Проблемы выполнения
Сложность с внедрением части кода написанного на другом языке в программу

Методологии и языки программирования

Слайд 99

Глобальное программирование

При работе с программными компонентами, написанными разными программистами и при помощи разных

языков программирования в различных средах, и последующих попытках собрать эти компоненты в одну распределенную систему, программисту придется решить бесчисленное множество проблем глобального программирования.
Проблема именования (Naming)
Определение имен переменных разными разработчиками
Обработка ошибок (error handling) При возникновении ошибок возвращаемый код не унифицирован
Безопасность (security)
Нет гарантий при передачи данных через Интернет
Контроль версий (versioning)
Несовместимость версий ПО
Масштабируемость (scalability)
Невозможность использования большого количества пользователей (Интернет)

Методологии и языки программирования

Слайд 100

Методологии программирования

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

общий философский подход.
Классификации:
Классификация по ядрам
Классификация по топологической специфике
Классификация по специфике реализации

Методологии и языки программирования

Слайд 101

Классификация по ядрам

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

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

Методологии и языки программирования

Слайд 102

Методология структурного программирования

Структу́рное программи́рование — методология разработки программного обеспечения, в основе которой лежит представление программы

в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом.
В соответствии с данной методологией любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:
последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы;
ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;
цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).
В программе базовые конструкции могут быть вложены друг в друга произвольным образом, но никаких других средств управления последовательностью выполнения операций не предусматривается.

Методологии и языки программирования

Слайд 103

Методология императивного программирования

Императивное программирование — это парадигма программирования, которая описывает процесс вычисления в виде инструкций, изменяющих

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

Методологии и языки программирования

Слайд 104

Методология объектно-ориентированного программирования

В центре ООП находится понятие объекта. Объект — это сущность, которой можно

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

Методологии и языки программирования

Слайд 105

Методология функционального программирования

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

значений функций в математическом понимании последних.

Методологии и языки программирования

Слайд 106

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

Логическое программирование — парадигма программирования, основанная на автоматическом доказательстве теорем, а также раздел

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

Методологии и языки программирования

Слайд 107

Методология программирования в ограничениях

Программирование в ограничениях (или программирование ограничениями) является парадигмой программирования, в которой отношения между

переменными указаны в форме ограничений. Ограничения определяют не последовательность шагов для исполнения, а свойства искомого решения. Ограничения, которые используются в программировании в ограничениях, бывают различных видов: те, которые используются в задачах удовлетворения ограничений (например, «А или В истинно»), те, которые решаются симплекс-алгоритмом (например, «x ≤ 5») и другие. Ограничения, как правило, встроены в язык программирования или осуществляются через отдельные программные библиотеки.

Методологии и языки программирования

Слайд 108

Структурное программирование.

Методологии и языки программирования

Слайд 109

Пошаговая детализация и нисходящее проектирование

Технология нисходящего проектирования с пошаговой детализацией является неотъемлемой частью

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

Методологии и языки программирования

Слайд 110

Пример пошаговой детализации

Методологии и языки программирования

Слайд 111

Методологии и языки программирования

Слайд 112

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

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

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

Методологии и языки программирования

Слайд 113

Классификация языков программирования

Методологии и языки программирования

Слайд 114

Структуры данных. Основы проектирования баз данных

Массивы

Массив – группа элементов одного типа, объединенных под

общим именем.
Индекс – что-то (чаще всего номер), что позволяет отличать элементы массива один от другого и обращаться к ним.

Книга состоит из множества однотипных элементов – страниц, у каждой страницы есть номер (индекс), все страницы объединены под одним названием (название книги)

Слайд 115

Пример

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

от 1 до 100.

Структуры данных. Основы проектирования баз данных

Слайд 116

Записи.

Запись – единица хранения информации в базе данных

Структуры данных. Основы проектирования баз данных

Слайд 117

Основные операции над структурами данных

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


уничтожение,
выбор (доступ),
обновление.

Структуры данных. Основы проектирования баз данных

Слайд 118

Динамические структуры данных. Списки.

Характеристики
Длина списка. Количество элементов в списке.
Списки могут быть типизированными или нетипизированными. Если список

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

Структуры данных. Основы проектирования баз данных

Слайд 119

Динамические структуры данных. Стеки.

Концептуально, структура данных — стек очень проста: она позволяет добавлять

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

Таким образом, стек, как принято говорить, «первым пришел, последним ушел — FILO» или «последним пришел, первым ушел — LIFO». Первый элемент, добавленный в стек будет удален из него в последнюю очередь.

Структуры данных. Основы проектирования баз данных

Слайд 120

Динамические структуры данных. Деревья.

Дерево — одна из наиболее широко распространённых структур данных в информатике, эмулирующая древовидную структуру в виде

набора связанных узлов. Является связанным графом, не содержащим циклы.

Структуры данных. Основы проектирования баз данных

Слайд 121

Дерево – это структура данных, представляющая собой совокупность элементов и отношений, образующих иерархическую

структуру этих элементов .
Каждый элемент дерева называется вершиной (узлом) дерева.
Вершины дерева соединены направленными дугами, которые называют ветвями дерева.
Начальный узел дерева называют корнем дерева, ему соответствует нулевой уровень.
Листьями дерева называют вершины, в которые входит одна ветвь и не выходит ни одной ветви.
Каждое дерево обладает следующими свойствами:
существует узел, в который не входит ни одной дуги (корень);
в каждую вершину, кроме корня, входит одна дуга.
Деревья особенно часто используют на практике при изображении различных иерархий. Например, популярны генеалогические деревья.

Структуры данных. Основы проектирования баз данных

Слайд 122

Все вершины, в которые входят ветви, исходящие из одной общей вершины, называются потомками,

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

Структуры данных. Основы проектирования баз данных

Слайд 123

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

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

Структуры данных. Основы проектирования баз данных

Слайд 124

Списочное представление деревьев основано на элементах, соответствующих вершинам дерева.
Каждый элемент имеет поле

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

Структуры данных. Основы проектирования баз данных

Слайд 125

При обходе все вершины дерева должны посещаться в определенном порядке. Существует несколько способов

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

Структуры данных. Основы проектирования баз данных

Слайд 126

Структурная схема типов данных

Структуры данных. Основы проектирования баз данных

Слайд 127

Информационная система.

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

своевременно обеспечивать надлежащих людей надлежащей информацией

Структуры данных. Основы проектирования баз данных

Слайд 128

Классификация ИС

По степени распределённости отличают:
настольные (desktop), или локальные ИС, в которых все компоненты (БД, СУБД, клиентские приложения) находятся

на одном компьютере;
распределённые (distributed) ИС, в которых компоненты распределены по нескольким компьютерам.
Распределённые ИС, в свою очередь, разделяют на:
файл-серверные ИС (ИС с архитектурой «файл-сервер»);
клиент-серверные ИС (ИС с архитектурой «клиент-сервер»).

Структуры данных. Основы проектирования баз данных

Слайд 129

База данных.

База данных – совокупность данных, организованных по определенным правилам, предусматривающим общие принципы

описания, хранения и манипулирования данными, независимо от прикладных программ

Структуры данных. Основы проектирования баз данных

Слайд 130

Требования пользователей к базам данных

Высокое быстродействие (малое время отклика на запрос).
Время отклика - промежуток

времени от момента запроса к БД до фактического получения данных. Похожим является термин время доступа - промежуток времени между выдачей команды записи (считывания) и фактическим получением данных. Под доступом понимается операция поиска, чтения данных или записи их. Часто операции записи, удаления и модификации данных называют операцией обновления.
Простота обновления данных.
Независимость данных.
Совместное использование данных многими пользователями.
Безопасность данных - защита данных от преднамеренного или непреднамеренного нарушения секретности, искажения или разрушения.
Стандартизация построения и эксплуатации БД (фактически СУБД).
Адекватность отображения данных соответствующей предметной области.
Дружелюбный интерфейс пользователя.

Структуры данных. Основы проектирования баз данных

Слайд 131

Проектирование баз данных

Структуры данных. Основы проектирования баз данных

Слайд 132

Структуры данных. Основы проектирования баз данных

Слайд 133

Построение инфологической модели

Структуры данных. Основы проектирования баз данных

Слайд 134

Модель «сущность-связь»

Структуры данных. Основы проектирования баз данных

Слайд 135

Типы отношений в модели «сущность-связь»

Структуры данных. Основы проектирования баз данных

Слайд 136

Модели данных.

Модель данных - совокупность структур данных и операций их обработки.
По способу установления

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

Структуры данных. Основы проектирования баз данных

Слайд 137

Иерархическая модель

Иерархическая модель данных — представление базы данных в виде древовидной (иерархической) структуры, состоящей из объектов (данных) различных

уровней.

Структуры данных. Основы проектирования баз данных

Слайд 138

Сетевая модель.

Разница между иерархической моделью данных и сетевой состоит в том, что в иерархических структурах

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

Структуры данных. Основы проектирования баз данных

Слайд 139

Реляционная модель

Реляционная модель данных – логическая модель данных, основанная на отношении одних записей к

другим. Представляет собой таблицы и связи между ними. Впервые была предложена британским учёным сотрудником компании IBM Эдгаром Франком Коддом (E. F. Codd) в 1970 году. В настоящее время эта модель является фактическим стандартом, на который ориентируются практически все современные коммерческие СУБД.

Структуры данных. Основы проектирования баз данных

Слайд 140

Реляционная модель

Структуры данных. Основы проектирования баз данных

Слайд 141

Отношения между таблицами. Связь 1:1

Одной записи Таблицы А соответствует одна запись Таблицы В

Структуры

данных. Основы проектирования баз данных

Слайд 142

Отношения между таблицами. Связь 1:М и М:1

Одной записи Таблицы А соответствует несколько записей

Таблицы В

Структуры данных. Основы проектирования баз данных

Слайд 143

Отношения между таблицами. Связь М:М

Многим записям Таблицы А соответствует много записей Таблицы В.

В явном виде не существует. Реализуется через третью таблицу и две связи 1:М

Структуры данных. Основы проектирования баз данных

Слайд 144

Нормализация таблиц базы данных. Первая нормальная форма.

Структуры данных. Основы проектирования баз данных

Слайд 145

Нормализация таблиц базы данных. Вторая нормальная форма.

Структуры данных. Основы проектирования баз данных

Слайд 146

Нормализация таблиц базы данных. Вторая нормальная форма.

Структуры данных. Основы проектирования баз данных

Слайд 147

Системы управления базами данных

Система управления базами данных (СУБД) — совокупность программных и лингвистических средств общего

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

Структуры данных. Основы проектирования баз данных

Слайд 148

Базы данных и компьютерные сети

Структуры данных. Основы проектирования баз данных

Слайд 149

Сетевые базы данных.

Структуры данных. Основы проектирования баз данных

Имя файла: Информатика.-Базовые-понятия-и-определения.pptx
Количество просмотров: 27
Количество скачиваний: 0