русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Неконтрольований доступ до даних


Дата додавання: 2014-04-22; переглядів: 887.


В процедурній програмі існує два типи даних. Локальні дані містяться всередині функції (процедури) і призначені для використання винятково цією функцією. Наприклад, в програмі складського обліку функція, що здійснює виведення запису на екран, може використовувати локальні дані для збереження інформації про цей запис. Локальні дані функції недоступні нікому, крім самої функції, і не можуть бути зміненими іншими функціями.

Якщо ж існує необхідність сумісного використання одних і тих же даних іншими функціями, то дані повинні бути оголошені як глобальні. Це, як правило, стосується найважливіших даних програми. Прикладом може бути вже згадана облікова книга. Будь-яка функція має доступ до глобальних даних. Схема, що ілюструє концепцію локальних і глобальних даних, приведена на рисунку 1.

Рисунок 1 Глобальні і локальні дані

Великі програми звичайно містять значне число функцій і глобальних змінних. Проблема процедурного підходу полягає в тому, що число можливих зв’язків між глобальними змінними і функціями може бути дуже великим. Через це ускладнюється структура програми і в неї складно вносити зміни. Зміна структури глобальних даних може вимагати переписування всіх функцій, що працювали з цими даними. Така проблема виникне, наприклад, якщо розробник вирішить збільшити довжину коду товару. При таких змінах нелегко швидко визначити, які функції необхідно скорегувати, виправлені функції можуть некоректно працювати з іншими глобальними даними. Отже, будь-яка зміна тягне за собою цілу низку наслідків.

 


<== попередня лекція | наступна лекція ==>
Структурне програмування. Процедурні мови | Моделювання реального світу


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн