Читайте также: |
|
Ім. Богдана Хмельницького
Авраменко В.С.
К.ф.-м.н, доцент кафедри ІСМТ
ІСТОРІЯ КОМП’ЮТЕРНОЇ ТЕХНІКИ ТА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ
Лекції
Черкаси 2015
ЗМІСТ
ПЕРЕДМОВА.. 4
ЧАСТИНА І. ІСТОРІЯ РОЗВИТКУ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 6
Вступ. 6
1. Передвісники комп’ютерної ери. 7
1.1. Комп’ютерна програма – що це?. 7
1.2. Доелектронна історія обчислювальної техніки. 9
1.3. Можливості двійкового коду. 18
1.4. Розвиток двійкової системи. 19
1.5. Винахід перших комп’ютерів. 21
1.6. Гарвардська архітектура. 25
1.7. Архітектура фон Неймана. 27
1.8. Створення зрозумілих людині кодів. 35
1.9. Крок на благо програмування. 36
1.10. Можливості програмного управління. 37
2. Нові мови програмування. 40
2.1. Поневіряння пакетної обробки. 41
2.2. Універсальна мова програмування. 42
2.3. Усунення неоднозначності 44
2.4. Заклик до дотримання математичної строгості 45
2.5. Пошук та усунення помилок. 46
2.6. Нелегке мистецтво програмування. 46
2.7. Обчислювальна техніка та програмування в СРСР. 47
3. Розквіт та хаос програмного забезпечення. 58
3.1. Місце народження хакерів. 61
3.2. Два чародії програмування. 62
3.3. Перші промислові стандарти. 63
3.4. Дружній інтерфейс. 74
3.5. Прообраз сучасного «ноутбука». 78
4. Болісний шлях розвитку програмування. 81
4.1. Плануюче обчислення. 81
4.2. Внесок Великої Британії 82
4.3. Програмування англійською мовою.. 83
5. Три комерційні гіганти. 84
5.1. Перша комерційна мова програмування. 85
5.2. Обчислювальна техніка приходить у бізнес. 86
5.3. Народження CODASYL.. 87
5.4. Конференція в Цюріху. 89
5.5. На шляху до сумісності комп’ютерів. 90
5.6. Розбіжності Нового Світу. 92
6. Десятиліття динамічного розвитку. 94
6.1. Перші кроки непроцедурної мови. 94
6.3. Алфавітне хрещення. 96
6.4. Успіх та суперечки. 98
6.5. Інженерний підхід. 98
6.6. Структурний підхід. 99
6.7. Поява мови “Ада”. 100
7. Програмування приходить у наші домівки. 103
7.1. Розквіт Бейсіка. 103
7.2. Поява мови Модула-2. 104
7.3. Музикальний француз. 105
7.4. Довгожитель Lisp – інструмент функціонального програмування. 106
7.5. Prolog – нездійснена мрія ЕОМ V покоління. 107
7.6. Революція на ім’я Java. 110
8. Історія і шляхи розвитку супер-ЕОМ... 115
8.1. Усе починалося з менфреймов. 115
8.2. Напрями розвитку обчислювальної техніки. 118
8.3. Розвиток елементної бази. Закон Мура. 119
8.4. Вдосконалення архітектури. 122
8.5. Toп-500 – рейтинг супер-ЕОМ... 127
9. Сучасний стан та перспективи розвитку програмування. 132
9.1. Криза у програмуванні 133
9.2. Методологія процедурно-орієнтованого програмування. 133
9.3. Методологія об’єктно-орієнтованого програмування. 134
9.4. Методологія об’єктно-орієнтованого аналізу та проектування. 135
9.5. Технології програмування. 136
9.6. CASE –засоби. 138
9.7. Методологія RAD.. 139
9.8. Microsoft Visual Basic. 141
9.9. Borland Delphi 142
9.10. Clarion. 143
9.11. Microsoft Visual Studio LightSwitch 2012. 145
9.11.1. Знайомство с LightSwitch. 146
9.11.2. Архитектура LightSwitch. 147
9.11.3. Створення проекту в Microsoft Visual Studio LightSwitch. 148
9.11.4. Дванадцять основних переваг LightSwitch. 149
9.12. Огляд WinDev. 151
9.12.1. ПризначенняWinDev. 151
9.12.2. Деякі характеристики WLanguage. 154
9.13. Технологія MODEL CHECKING.. 155
9.14. NeoBook – программирование для непрограммистов. 157
9.14.1. Введення для секретарок. 158
9.14.2. NeoBook. 158
9.14.3. Можливості та області застосування. 159
9.15. Файлові системи найближчого майбутнього. 161
9.15.1. Зетта-повінь настає. 161
9.15.2. Файлова система ZFS. 164
9.15.3. Файлова система Btrfs. 164
9.15.4. Файлова система Hammer 165
10. Історія операційних систем.. 166
10.1. Послідовна обробка даних. 166
10.2. Прості пакетні системи. 168
10.3. Багатозадачні пакетні системи. 169
10.4. Системи з режимом розподілу часу. 171
10.5. Основні досягнення. 173
10.6. Сучасні системи UNIX.. 181
10.7. OS/2. Битва двох гігантів. 181
Список літератури. 184
ПЕРЕДМОВА
Можна з упевненістю сказати, що сьогодні знання основ інформатики та обчислювальної техніки стали необхідними кожній людині як у переважній більшості областей професійної діяльності, так і в побуті, та по-справжньому є загальноосвітніми. Тому мета цього курсу – звернутися до минулого, зануритися в історію розвитку апаратного та програмного забезпечення і зрозуміти, як воно розвивалося і чому ще й досі не існує загальних технологій, які дозволили б усім розробникам створювати надійне програмне забезпечення з мінімальними витратами і за прийнятний проміжок часу, полегшити вивчення та використання основ інформатики та мов програмування.
Студенти першого курсу після закінчення школи в цілому обізнані з побудовою комп’ютера та основами програмування, мають навички роботи з типовими пакетами програм. Вони із захопленням читають спеціальну літературу, сперечаються про переваги та недоліки новітніх мікропроцесорів та програм. Проте, в цілому, їх знання поверхневі та носять уривчастий характер, оскільки вони відірвані із загального контексту історії розвитку обчислювальної техніки та ідей інформатики та програмування.
Метою курсу зокрема є розвиток професійного світогляду майбутніх програмістів та адміністраторів комп’ютерних систем і мереж, орієнтація їх у бурхливому вирі нових ідей та технологій апаратного та програмного забезпечення, операційних систем та мов програмування.
Електронним обчислювальним машинам не більше шестидесяти п’яти років. За цей час вони невпізнанно змінилися зовні, у мільйони разів збільшилася швидкість їх роботи та розмір пам’яті, проте основні принципи апаратного та програмного забезпечення залишилися багато у чому практично незмінними.
Темпи розвитку ЕОМ воістину фантастичні. Ще в 1984 р. американські газети писали:
«У 1953 р. ЕОМ з пам'яттю 64 Кбайт коштувала 1 млн дол, зараз вона коштує менше 1 тис. дол. Якби автомобілі розвивалися протягом останніх 20 років тими ж темпами, як комп'ютери, то сьогодні роллс-ройс коштував би 3,0 дол, проходив мільйон миль на галоні бензину, розвивав потужність лайнера і два автомобілі поміщалися б на кінчику пера».
У 21 столітті темпи ще вище. Наприклад, якщо мікропроцесор Pentium IV «Northwood» (2002 р.) містив 42 млн транзисторів, то Pentium IV «Prescott» (2004 р.) – 125 млн [17].
Програмне забезпечення є «тінню» свого «старшого брата». Судіть самі: найпопулярніші мови програмування та алгоритми компіляції були розроблені на початку 60-х років минулого століття. Тоді ж були сформульовані принципи роботи операційних систем. Системи управління базами даних (СУБД) з’явилися на початку 70-х років і з тих пір майже не змінилися. Навіть наймодніша нині концепція об’єктно-орієнтованого програмування була запропонована, виявляється, ще в середині 60-х років минулого століття (мова Smalltalk). Наведені приклади свідчать про те, що принципово нові ідеї з’являються в інформатиці, як, втім, і в інших науках, відносно рідко, і в найновітнішому та розрекламованому пакеті програм, якщо добре придивитися, можна побачити добре забуте старе.
Правда, за останній час, завдяки новим технологіям, широке використання баз даних різними категоріями користувачів призвело, з одного боку, до створення інтерфейсів, що вимагають мінімум часу на освоєння коштів управління системою, а з іншого – до побудови потужних, гнучких СУБД, що мають у тому числі розвинені засоби захисту даних від випадкового або навмисного руйнування. З'явилися і засоби автоматизації розробки, що дозволяють створити базу даних будь-якому користувачеві, навіть якщо він не володіє основами теорії БД.
У першій частині курсу висвітлюється історія обчислювальної техніки та еволюція розвитку програмного забезпечення, як основного базису інформатики – від простих механічних пристроїв до сучасних комп’ютерів, від програмування на комутаційних дошках (пультах) до сучасних технологій програмування.
У другій частині описуються загальні відомості про комп’ютер, інформацію, алгоритми та мови програмування.
У третій частині розглядаються принципи побудови та напрями еволюції сучасних комп’ютерних мереж, коротко описана їх історія, основні поняття теорії та тенденції розвитку комп’ютерних мереж.
Вступ
Програмне забезпечення (ПЗ) розробляють вже більше шістдесяти років, але й дотепер програми, які мають багато помилок, залишаються нормою, а якісні рішення – рідкісним виключенням. Нам слід звернутися до минулого, зануритися в історію розвитку ПЗ та зрозуміти, як воно розвивалося, і чому на сьогодні не існує загальних технологій, які дозволили б усім розробникам створювати надійне програмне забезпечення з мінімальними витратами та в прийнятний час.
На початку XXI століття є сенс проаналізувати 60 років, що промайнули. Перші експерименти, які можна віднести до сучасного програмування, проводилися ще під час Другої світової війни. Але саме 50-і роки стали першим десятиліттям розвитку програмування як галузі. За цей період, включаючи початок нового тисячоліття, буквально на наших очах кардинально змінилося коло завдань, яке здатне вирішувати програмне забезпечення, та форми подання таких рішень.
У не меншій мірі змінилися методи роботи та відношення до програмування самих розробників. Технологічні досягнення в апаратному забезпеченні, операційних системах та мовах програмування допомогли сформувати середовище розробки. Проте соціальні та економічні чинники зіграли важливішу роль, оскільки саме вони визначали, яким чином галузь адаптувала ці досягнення, хто, зрештою, став їх використовувати, і як вони впливають (якщо впливають) на можливість створювати якісне програмне забезпечення.
Ретроспективний огляд програмного забезпечення неможливий без огляду апаратного забезпечення. Тому паралельно з оглядом ПЗ ми розглянемо основні історичні досягнення в розвитку обчислювальної техніки.
Історія обчислювальних машин налічує також близько шести десятків років, проте у цій історії є передісторія завдовжки у декілька століть. Прості пристрої, які полегшують обчислення, з’явилися у глибокій давнині, декілька тисячоліть тому. По мірі розвитку людської цивілізації вони поволі еволюціонували, безперервно вдосконалюючись. Але тільки у 40-і роки ХХ століття було покладено початок створенню комп’ютерів із сучасноюї архітектурою та сучасною логікою. Саме ці роки можна по праву вважати часом народження сучасних обчислювальних машин. З тих пір за історично дуже короткий термін комп’ютери, завдяки величезним успіхам мікроелектроніки, пройшли такий шлях у своєму технічному вдосконаленні та масштабах застосування, з яким не порівняється жоден інший винахід людини. Але жодні великі винаходи не народжуються на порожньому місці, у них завжди є попередники. Відомо, що прогрес розвивається по спіралі, і все нове – це добре забуте старе.
Передвісники комп’ютерної ери
Дата добавления: 2015-11-14; просмотров: 49 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
ВИКОНАННЯ КОНТРОЛЬНОЇ РОБОТИ | | | Комп’ютерна програма – що це? |