
- •Лекція 4 – Сучасні напрямки розвитку програмного забезпечення
- •1. Поняття алгоритму та модульного програмування
- •2. Узагальнення особливостей подання даних засобами популярних мов програмування високого рівня
- •3. Характеристика особливостей структурного програмування
- •Розрізняють два класичних види підпрограм у межах структурного програмування: процедури і функції. Види підпрограм
- •Структура підпрограми включає:
- •Функції
- •Процедури
- •4. Характеристика особливостей подійо-орієнтованого програмування
- •5. Характеристика особливостей та принципів об’єктно-орієнтованого програмування
- •6. Аналіз принципів візуального програмування
- •7. Контроль якості програмного забезпечення
Лекція 4 – Сучасні напрямки розвитку програмного забезпечення
Поняття алгоритму та модульного програмування.
Узагальнення особливостей подання даних засобами популярних мов програмування високого рівня.
Характеристика особливостей структурного програмування.
Характеристика особливостей подійо-орієнтованого програмування.
Характеристика особливостей та принципів об’єктно-орієнтованого програмування.
Аналіз принципів візуального програмування.
Контроль якості програмного забезпечення.
1. Поняття алгоритму та модульного програмування
Алгоритм – це формальний опис способу розв’язання задачі шляхом розбиття на кінцеву за часом послідовність елементарних операцій.
Під словом “формальний” тут розуміємо твердження, що описання розв’язку має бути абсолютно повним, враховувати усі можливі ситуації. Під елементарною операцією розуміємо дію, яку за визначеними критеріями не має сенсу деталізувати.
Основна ідея алгоритмічного програмування полягає у розбитті програми на послідовність модулів, кожний з яких виконує одну чи декілька дій. Єдина необхідна вимога до працездатності модуля передбачає виконання функцій модуля як окремого кінцевого програмного продукту. При розробці програмного забезпечення модуля слідкують, щоб його виконання завжди починалося з першої команди, а закінчувалося виконанням самої останньої, тобто, щоб виключалася можливість попадання на команди модуля із зовні і передавання керування з модуля на інші команди, обійшовши кінцеві команди самого модуля.
Розроблений алгоритм задачі реалізується на обраній мові програмування з допомогою команд опису даних, обчислень значень і керування послідовністю виконання операторів програми.
2. Узагальнення особливостей подання даних засобами популярних мов програмування високого рівня
За табл.1 проведемо порівняльний аналіз та узагальнення особливостей оформлення опису даних та синтаксису розповсюджених сьогодні алгоритмічних мов програмування високого рівня, таких як Бейсик, Паскаль та С++.
Таблиця 1 – Синтаксис алгоритмічних мов програмування
Параметри та характеристики |
Мова програмування |
||||
Бейсик |
Паскаль |
С++ |
|||
Тип числа: ціле |
INTEGER |
INTEGER |
INT |
||
дробове |
Double |
Real |
bloat |
||
Варіанти написання операцій: дорівнює |
= |
= |
= = |
||
не дорівнює |
<> |
<> |
!= |
||
менше |
< |
< |
< |
||
менше чи дорівнює |
<= |
<= |
<= |
||
більше |
> |
> |
> |
||
більше чи дорівнює |
>= |
>= |
>= |
||
Логічні операції: І |
AND |
and |
&& |
||
Або |
OR |
or |
|| |
||
НІ |
NOT |
not |
! |
||
Тип “стрічка” |
STRING |
string |
Базовий тип “стрічка” відсутній |
||
Логічний тип |
Базовий логічний тип відсутній; використовується числовий тип INTEGER |
boolean |
Bool |
||
Синтаксис описання структури |
TYPE ім'я- структури AS тип ................ END TYPE |
record поле : тип; ........ ....... end; |
Struct ім’я { тип поле; ......... }; |
||
Синтаксис опису масивів |
DIM ім’я(число елементів)AS тип
|
Array[нижня границя..верхня границя] of тип |
Тип ім’я[число елементів]; |
||
ПРИКЛАД |
|||||
DIM IntArray(10) AS INTEGER |
Array[1..10] of integer; |
Int IntArray[10]; |
|||
Синтаксис команд описання даних |
DIM ім’я AS тип
|
Var ім’я: тип;
|
Тип ім’я;
|
||
ПРИКЛАД |
|||||
DIM X AS DOUBLE |
Var x:real; |
Float x; |
|||
Синтаксис позначення коментарів: одно стрічковий коментар |
REM або / |
// |
// |
||
Багатострічковий коментар |
відсутній |
{} або (* *) |
/* */ |
||
Синтаксис оператора умови |
IF умова THEN Оператор1 ELSE Оператор2 END IF
|
If умова then Оператор1 Else Оператор2;
|
If (умова) Оператор1 else Оператор2;
|
||
ПРИКЛАД |
|||||
IF A<>0 THEN A=0 ELSE A=-1 END IF
|
If a<>0 Then a:=0 Else a:=-1;
|
If (a!=0) A=0 Else А=-1; |
|||
Якщо при then чи при else виконується кілька операцій, то використовують логічні дужки. |
|||||
IF X<0 THEN Y = x/2 X=1 END IF |
If x<0 then Begin Y:=x/2; X:=1 End; |
If (x<0) { y = x/2; x=1 }; |
|||
Синтаксис оператора циклу (перший вид оператора циклу) |
FOR I = 1 TO 10 A(I) = 0 NEXT |
For I:=1 to 10 do A[i]:=0; |
For (I=0;I<10;I=I+1) A[i]:=0; |
||
Синтаксис оператора циклу (другий вид оператора циклу) |
DO WHILE A>B A=A-0.01 LOOP |
While a>b do a:=a-0.01; |
While (a<b) A=a-0.01 |