Б С Бусигін - Прикладна інформатика - страница 15

Страницы:
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83 

5 Однією з причин 10-відсоткового економічного зросту в Ірландії у 1999 році явилось то, що вона перетворилась у справжню "Силіконову долину" Європи. Тут розмістилась європейська штаб-квартира Microsoft. Фірма Intel виготовляє тут свої процесори Pentium, а Арріе, ІВМ і Dell ведуть тут наукові дослідження. По виробництву програмного забезпечення Ірландія вийшла на 2-е місце у світі після США. Дослідницькі центри Ірландії приймають участь у розробці нових мікрочипів і мов програмування.ринку інформаційних технологій у 2000 р. досягнув 395 млрд. дол., а у 2001 р. 440 млрд. дол. і у перспективі буде продовжувати рости (див. рис. 6.3).

Рис. б.3. Прогноз розвитку світового ринку ІТ у часу (2GG1 г.)

Зріст сукупного доходу ІКТ індустрії до 2GG2 р. ще більше вражає (рис. б.4). Дані на 2GG3 p. 268G млрд. Євро є прогнозом.

Объем мирового рынка ИКТ, 1ЭЭЗ - 2003гг.

Market valLB. billion Euro -•- Market growth. %

3000

Рис. 6.4. Дані по розвитку світового ринку ІКТ на 2002 р.,(у млрд. Євро)

Межнародна дослідницька корпорація IDG/IDC для визначення рівня розвитку високотехнологічної галузі обчислює зведений індекс ISI (Information Society Index, зведений індекс розвитку інформаційного суспільства) на основі ряду показників:

О кількості персональних комп'ютерів на душу населення;

© рівня використання ПК у промисловості, державних органах і освіті;

© вартості програмного забезпечення на один комп'ютер;

11v

О частини ПК, що підключені до Інтернету; пропускну властивість і вартість каналів зв'язку.

Згідно цим показникам, зведений індекс розвитку і валового внутрішнього продукту (ВВП) на душу населення деяких країн у 2003 році виглядав наступним чином (таблиця 6.1):

Таблиця 6.1.

_Зведені індекси ISI і ВВП на душу населення по країнам світу у 2003 році.

Країна

ISI

ВВП

Країна

ISI

ВВП

Швеція

5062

20,7

Польща

1808

7,2

США

5041

33,9

Чилі

1635

12,4

Японія

4093

23,4

Аргентина

1651

10

Сінгапур

4014

27,8

Малайзія

1583

10,7

Германія

3558

22,7

ПАР

1537

6,9

Тайвань

3177

16,1

Венесуела

1491

8

Ірландія

3144

20,3

Росія

1444

4,2

Ізраїль

3140

18,3

Філіппіни

1012

3,6

Франція

3140

23,3

Китай

915

3,8

П.Корея

2931

13,3

Індонезія

888

2,8

Італія

2703

21,4

Індія

871

1,8

Чехія

2130

11,7

Пакистан

719

2

Цікаво відмітити, що, перші три місця по ВВП на душу населення займають США, Сінгапур і Японія. Не дивно, що у недавно опублікованому у США (2003 р.) звіті під назвою "The Digital Work Force: Building InfoTech Skills at the Speed of Innovation", підкреслено, що потреба в США у працівниках, які мають знання з інформаційних технологій збільшиться більш ніж удвічі до 2006 року, у той час як потреба в усіх інших спеціальностях збільшиться у середньому тільки на 14% (!).

Згідно даним багаточисельних закордонних і вітчизняних джерел головну роль у всіх комп'ютерних напрямах (див. Вступ) грає у першу чергу програмування.

Зараз на зміну програмуванню процедурному, з котрого і починалося програмування як напрям, прийшло програмування об'єктно-орієнтоване, а за ним і компонентне. Об'єктно-орієнтований метод має настільки суттєві переваги, що переважна більшість програмного забезпечення, що створюється використовує переваги об'єктних технологій у той або іншій формі. У деяких мовах програмування є можливість створення об' єктів різними способами: або з "нуля", або використовуючи механізм наслідування і об'єкти заготовки -класи. Мови сценаріїв застосовуються для роботи с готовими об'єктами: об'єктам можна посилати повідомлення і отримувати від них реакцію у вигляді методів, що виконуються або даних і т.д.

Разом з тим, продовжує оставатися відкритим і найбільш широко розповсюдженим на усіх рівнях спеціалістів головне питання ІКТ галузі:

Яка ж мова найбільш універсальна для написання програм і, відповідно, яку ж мову у першу чергу потрібно вивчати?

Щоб спробувати об'єктивно підійти до відповіді на це питання, спочатку потрібно відповісти на наступні декілька питань: О Що собою уявляє програма?

© У якому середовищі пишуться програми і додатки? © У якому середовищі працюють програми і додатки? О Як проектуються додатки? © Які існують додатки?

6.2. Що собою уявляє програма?

Для відповіді на це питання реалізуємо на мові Турбо Паскаль стандартний вивід знайомого усім програмістам тексту "Hallo, World!" на дисплей комп'ютера (рис. б.5).

Program Hallo; Begin

Writeln('Hallo, World'); End._

Рис. б.5. Вивід на дисплей ПК тексту "Hallo, World!" у мові ТП

Фрагмент тексту, який приведено на рисунку б.5 і який складається з чотирьох інструкцій (пропозицій (рос.-предложений) або операторів) мови ТП, з точки зору сучасних інформаційних уявлень можна одночасно назвати наступним чином (тобто розглядати з таких точок зору) (табл. 6.1).

Таблиця б.1.

Найменування набору інструкцій в мовах програмування_

№ пп

Найменування набору інструкцій мови програмування і його сутність (рос.-сущность)

1

Інструкції, це дані (рос.-даннью) призначені для управління конкретними компонентами системи обробки даних у цілях реалізації деякого алгоритму.

2

Код - опис дій, які повинен виконувати комп'ютер, записаний на мові низькорівневого програмування або у машинних кодах.

3

Програмний код або просто код - послідовність команд або операторів аби якої мови програмування, котра після декодування її комп'ютером і транслюючою програмою примушує (рос.-заставляет) останній виконувати деяку роботу.

4

Фрагмент коду - те ж саме, що і код.

5

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

6

Послідовність операторів - упорядкована послідовність команд, яка підлягає (рос.-подлежит) обробці.

7

Модуль - програма, котра розглядається як окреме ціле у процесах збереження, трансляції і об'єднання з іншими програмними модулями при їх завантаженні у оперативну пам'ять комп'ютера для виконання.

Продовження таблиці б.!.

№ пп.

Найменування набору інструкцій мови програмування і його сутність (рос.-сущность)

В

Підпрограма - пойменована частина програми,  котра викликається і отримує параметри, виконує визначені дії і повертає результат своєї роботи і управління у точку виклику. У багатьох мовах програмування відрізняють два види підпрограм:

-процедури, дія котрих полягає (рос.-заключается) у зміні значень параметрів і деякому побічному ефекті. Як правило є операторами або інструкціями мови програмування;

-функції, котрі повертають залежний від параметрів результат. Є операндами у конструкціях мови програмування і описуємих за їх допомогою виразах.

9

Процедура-підпрограма, процедура-функція (у мові VBA)- відповідно підпрограма і функція. Підпрограма може виконувати роль програми.

10

Метод - це процедура або просто набір команд, які повідомляють об'єкту, що потрібно виконати деяку задачу і реалізують алгоритм її виконання.

11

Додаток (рос.-приложение) - прикладна програма, тобто програма, що виконується під управлінням операційної системи.

12

Рішення (рос.-решение) (термін з Microsoft Solution Framework (MSF))

^Програмний продукт.

2) Координована поставка набору елементів (таких, як програмно-технічні засоби, документація, навчання і супроводження), необхідні для задоволення деякої бізнес-потреби конкретного замовника. (MSF).

3) Множина (рос.-множество) файлів різного типу, у рамках одного рішення (solution) складають додаток (application) Visual Studio.Net 7.0.

13

Операція (operatІon)-cepвіc або послуга, котрі можуть бути заказані у об'єкта у вигляді результата його поведінки. Операція має сігнатуру, котра може мати параметри. Сігнатура (signature)- ім'я і параметри властивості з поведінкою (рос.-поведенческого свойства). Сігнатура може включати опціонально повертаємі параметри. Метод (method)- реалізація операції. Вона специфіцірує алгоритм або процедуру, пов'язані з операцією. (UML).

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

Більш того, текстові стрічки програмного коду є вхідними даними для трансляторів (компіляторів) і інтерпретаторів, які перетворюють їх у конкретні машинні команди, що їх виконує мікропроцесор.

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

При тому, у більшості своїй, інструкції програм і сучасних програмних систем записуються у восьмибітних ASCII ("аскі") кодах. І тому, взагалі кажучи, коди програм на багатьох мовах програмування можна набирати у аби яких текстових редакторах файл-менеджерів (Norton Commander, Far Manager, Total Commander і ін.), або редакторах операційних систем типу Блокнот

(Notepad). Те ж відноситься і до кодів мов розмітки: HTML, XML і деяких інших.

1. За командою користувача, ОС завантажує у ОЗП відкомпільовані програми (.EXE, .DLL)

Операційна система

(ОС)

Магнітний диск (вміщує):

1. Файли програм у текстовому вигляді (ASCII коди)

2. Файли програм у відкомпільованому вигляді (OBJ)

3. Файли програм у двоїчному вигляд/.(розширення .EXE, .DLL)

4. Файли даних (вхідні для програм у ОЗП __

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

2

2.Виклик з

ОЗП

програмою системних функцій ОС

ГОЗП

Взаємодія

ПК з

користувачем

Пристрої ПК

Дисководи (HDD, FDD, CD-ROM, CD-RW). Диски (фізич., логіч.:А:, C:, D: і т.д.). Дисплей.

Пам'ять (виділення, розподіл і т.д.). Клавіатура, миша, мережова карта і таке інше

З.Управління операційною системою пристроями ПК, з метою обробки та уводу/уводу даних

Відправка

даних і програм в мережу і приймання їх із мережи

Рис. 6.6. Типовий процес виконання програми на ПК

6.3. У якому середовищі пишуться програми і додатки?

Якщо текст програми вже є, то яким же чином можна подати текстовий фрагмент коду на вхід транслятора?

Найбільш простими у використанні для цих цілей є Інтегровані системи розробки (ІСР, а англійською мовою - IDE - Integrated Development Environment,), які широко представлені продуктами фірми Borland International (Turbo Pascal, Turbo C, Turbo Prolog), Microsoft Visual Basic, PowerBuilder, Inprise Delphi Object Pascal, Oracle Developer PL/SQL і деякі інші, котрі відносяться до мов 4-го покоління (4GL, Generation Language 4). Ці продукти є продовженням розвитку мов програмування (типу Фортран, Алгол, С, C++, COBOL, Ada, Pascal), які у минулому були позбавлені багатьох сервісних можливостей і тому покладавши на програмістів виконання усіх дій по організації процесу уводу програмного коду у ПК, визову транслятора, завантаження відтранслеваних модулів у пам'ять і т.д. Їх звуть мовами 3-го покоління 3GL (Generation Language 3), тому що вони не були встроєні у інтегровані інтерактивні середовища розробки програмного забезпечення.

Щоб краще уяснити принцип роботи ІСР, розглянемо роботу з типовим додатком IDE Турбо Паскаль. По-перше, користувач повинен підготувати текст додатку (програми), подати його на вхід транслятора, отримати двоічний код ізаписати його на диск у файл з розширенням ЕХЕ (рис. 6.6). Потім, зчитати двоічний код додатку у пам'ять комп'ютера, виконати ту частину коду, котра відповідає за організацію діалогу з користувачем, котрий повинен визначити необхідний для роботи набір даних. Потім додаток читає набір даних з диску (який можливо вже був ліквідований). Далі користувач взаємодіє з додатком, виконуючи маніпуляції з уявленням даних у головній пам'яті. Ця фаза продовжується більшу частину часу роботи додатку до тих пір, поки у кінці кінців модифікований набір даних не запишеться на диск, як результат вирішення задачі користувача.

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

: Операційна: : система : і

Увід тексту програми

Інтегроване середовище розробки (ІСР)

Редактор тексту

т

Компілятор (транслятор)

Текст програми (Початковий текстовий файл, ASCII коди)

Редактор зв' язків

+

завантажувач

Скомпільована (відтрансльована) програма (об'єктнй код)

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

Розширення .PAS.

Розширення .TPU, .TPL, TPW

Розширення .EXE, .DLL

Запуск задачі на виконання (Ctrl + F9)

Перегляд результатів на екрані і повернення користувача у текстовий

редактор (Alt + F5)

Рис. б.7. Етапи виконання програми у !СР ТП

У ГСР, як правило, інтегровані: текстовий редактор для набору кодів програм, транслятор, редактор зв'язків і завантажувач, тому усі файли (PAS, TPU, EXE, DLL та інші), які створюються, зберігаються на магнітному диску. Окрім того, у середовищі завжди присутні засоби відлагодження програм (дебаггери) і багато інших додаткових сервісних можливостей. Оскільки розробка подібних засобів велася ще до періоду розквіту графічних можливостей комп'ютерів, робота з ГСР активно підтримується командами, що уявляються окремими клавішами і їх сполученнями (Esc, Ctrl + F9, Alt + F5 і так далі). Однак, не дивлячись на те, що у режимі MS DOS з Турбо Паскаля можна напряму працювати з портами, відеопам'яттю, секторами і доріжкамидисків і т.д., слід чітко уявляти, що всі ці дії підтримуються системними функціями відповідної операційної системи (MS DOS, Windows та ін.).

Поява операційної системи Windows суттєво ускладнила програмування, так як з позиції програміста ОС Windows дає останньому тільки набір системних функцій, які утворюють так званий API-інтерфейс прикладних програм (API-Application Programming Interface). Тому, щоб виконати ту чи іншу дію (наприклад, відкрити вікно на екрані ПК, накреслити лінію, створити кнопку та ін.), програма повинна звернутися до відповідної функції API.

Функції API операційної системи, котрих тільки у ОС Windows 95 нараховувалося більш ніж 800-т, утворюють її ядро і зберігаються у багаточисельних DLL-бібліотеках. Серед великої кількості інших вони реалізують наступні системні функції.

О управління пам'яттю, завантаження/вилучення програм з пам'яті і забезпечення безпосередньої підтримки виконання програм;

© управління вікнами (створення, зміна розмірів, переміщення, вилучення) і т.д.;

© управління уводом з клавіатури і роботою з мишею;

© взаємодія з зовнішніми пристроями (екраном, принтером і ін.).

Ускладнення взаємодії з такою великою кількістю системних функцій привело до необхідності спрощення для користувачів самого процесу програмування і створення для цього інтегрованих середовищ швидкої розробки додатків (RAD - Rapid Application Development) для візуального і швидкого програмування (створення Windows-додатків). Піонерами цього процесу виступили корпорація Microsoft, яка створила RAD середовища Visual Basic і Visual Studio (для мов C++, Visual Basic та ін.), а також Borland International (потім Inprise), яка створила середовище Delphi6 (з мовою Object Pascal). Будівними блоками програми стали компоненти - тобто стандартні об'екти, які мають візуальне уявлення на стадії проектування і у час роботи (рис.6.8).

Популярність середовищу швидкої розробки додатків Delphi принесли потужна внутрішня об'єктно-орієнтована мова програмування Object Pascal і унікальні по своїй простоті і гнучкості засоби роботи з базами даних. У подальшому, починаючи від версії Delphi 5 і вищє у середовищі з'явилися можливості створення багатофункціональних додатків (Windows, Internet, WWW, багатоярусних (Multi-Tier) і ін.), серверів COM і CORBA, а також окремих компонентів. Компоненти, що їх використовують у розробці, уявлені у вигляді ієрархії класів, реалізовані на мові Object Pascal і організовані у Бібліотеку візуальних компонентів (Visual Component Library, VCL), яка підключається до Delphi IDE (або RAD). Велика популярність Delphi серед розробників пояснюється також і тим, що мова Object Pascal по своїм можливостям перевершує мову Visual Basic, мало поступається мові С++, а усвоюється у два-три рази швидше останньої. Код, який виконується у Delphi, є

6 Автором Delphi у 1995 г. став Андерс Хейльсберг (Anders Hejlsberg), соавтор розробки системи Турбо Паскаль, а потім у 2GGG р. у статусі ведучого розробника (distinguished engineer) корпорації Microsoft, він розробив мову С# (С-шарп) і став соавтором створення платформи .NET (Дот НЕТ) (http://www.microsoft.com/presspass/press/2001/apr01/04-11AndersPR.asp).достатньо ефективним, швидкість компіляції дуже висока, а відладка, особливо у порівнянні з відладкою у С++, значно простіше і протікає швидше.

Страницы:
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83 


Похожие статьи

Б С Бусигін - Прикладна інформатика