Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Принцип розвитку (від абстрактного до конкретного).






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

методологічні принципи та визначення) не слід тлумачити абсолютно.

Зокрема, цей принцип безумовно слід розглядати в єдності з рухом пізнання від конкретного до абстрактного. Насамперед відзначимо, що оскільки поняття будуть розглядатися на різних рівнях абстракції, то при їх вивченні варто чітко

• вказувати рівень абстракції, що розглядається (принцип фіксації рівня абстракції),

• при побудові умовиводів використовувати тільки такі

властивості понять, що були явно визначені раніше (принцип

достатньої підстави),

• не використовувати властивостей, заданих на інших рівнях і

явно не визначених на рівні, що розглядається (принцип інкапсуляції

рівнів абстракції),

• в процесі розвитку попередні властивості не відкидаються, а

зберігаються на нових рівнях розвитку, можливо у іншій формі

(принцип кумулятивності розвитку).

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

певний варіант відомого гносеологічного принципа єдності теорії та

практики. Розвиток понять часто відбувається згідно тріаді розвитку: теза –

антитеза – синтез.


 

6. Тріада основних понять програмування

Перейдемо до наступного кроку розвитку. Цей крок полягає в тому, щоб розкрити відношення адекватності. Це відношення розкривається в процесі створення, породження програм. Цей аспект називається генетичним аспектом програм. На цьому кроці

з'являється поняття, що поєднує поняття програми та проблеми. Таким поняттям буде програмування (як процес), яке повинно зв'язати разом проблему і відповідну їй програму. Таким чином, побудовано нову тріаду розвитку: проблема (теза) – програма(антитеза) – процес програмування (синтез). Цю тріаду назвемо тріадою основних понять програмування, бо саме в ній вперше з'являється поняття програмування (тут терміни програмування та процес програмування розглядаємо як синоніми, проте будемо часто

вживати саме термін процес програмування, щоб підкреслити динамічний характер програмування). Крім того, термін " основні" тут використаний для того щоб підкреслити, що суть програмування полягає саме в створенні необхідної єдності проблеми предметної області і програми, що використовується для розв’язання цієї проблеми. Поняття основної тріади програмування пов'язані певними співвідношеннями (малюнок 2.5). Так, поняття програмування та проблеми з'єднує відношення орієнтованості процесу програмування на розв'язок певної проблеми (проблемно-орієнтованість). Що ж

стосується взаємодії понять програми та програмування, то тут виділимо два відношення:

• відношення генетичності програм (відношення програма – процес програмування)• відношення експлікативності процесу програмування (відношення процес програмування – програма). Для розкриття основної ідеї цих відношень, розглянемо приклади. Припустимо, що ви хочете купити мобільний телефон. Серед різних параметрів, які визначають ваш вибір, буде і параметр, пов’язаний з виробником телефону, тобто яка фірма і на якому заводі

виробила телефон. Якщо це – бренд (на сучасному етапі – Nokia, Samsung, Motorola), то ви маєте більше довіри до якості телефону. Цей приклад демонструє важливість генетичного аспекту. Те саме стосується і генетичності програм: якщо програма (програмна система) розроблена відомою фірму, яка використовує гарні технології розробки програм, то слід очікувати, що така програма буде більш надійною та ефективною, ніж програма, створена фірмою-одноденкою.Відношення процесу програмування до програми будеконкретизовано як відношення уточнюваності (експлікативності процесу програмування).Щоб зрозуміти, що означає це відношення, треба розглянути, як процес програмування пов'язаний з програмою. Спочатку про програму нічого не відомо (ні її розмір, ні кількість операторів і таке подібне). Програма виступає як чорна скринька, наповнення якоїз'явиться пізніше. На наступних кроках процесу програмування промальовується деяка структура програми, її частини і т. д. Програма поступово уточнюється. Процес цих уточнень і задає відношення експлікативності. Зробимо термінологічне зауваження: інколи вживають терміни" деталізація", " конкретизація", " декомпозиція". В англомовній

літературі часто вживається термін " refinement ", одним із смислів якого є уточнення.


 

7. Розвиток основних програмних понять. Тріада основних програмних понять. Принцип аплікативності (функціональності). Принцип номінативності програм

Ми почнемо з розгляду внутрішніх аспектів програм. Відповідні поняття будемо називати програмними поняттями. Їх слід відрізняти від понять програмування, що пов’язані з процесом програмування, та які були розглянуті у попередньому розділі.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.