logo search
Вступ до спец

Передмова

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

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

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

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

Темпи розвитку ЕОМ воістину фантастичні. Ще в 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-і роки ХХ століття було покладено початок створенню комп’ютерів із сучасноюї архітектурою та сучасною логікою. Саме ці роки можна по праву вважати часом народження сучасних обчислювальних машин. З тих пір за історично дуже короткий термін комп’ютери, завдяки величезним успіхам мікроелектроніки, пройшли такий шлях у своєму технічному вдосконаленні та масштабах застосування, з яким не порівняється жоден інший винахід людини. Але жодні великі винаходи не народжуються на порожньому місці, у них завжди є попередники. Відомо, що прогрес розвивається по спіралі, і все нове – це добре забуте старе.