Я припускаю, що вони не змогли сидіти перед комп’ютером цілий день, як ми сьогодні. То як вони написали свою програму? На аркуші паперу і наберіть його пізніше, коли комп'ютер буде доступний? Як вони проводили тестування?
Я припускаю, що вони не змогли сидіти перед комп’ютером цілий день, як ми сьогодні. То як вони написали свою програму? На аркуші паперу і наберіть його пізніше, коли комп'ютер буде доступний? Як вони проводили тестування?
Відповіді:
Приблизно в 1974 році ви б сиділи за зручним столом і довго писали програму на папері. Ви можете протестувати, пройшовши через нього в голові, використовуючи дані тесту. Коли ви переконаєтесь, що ваша програма правильна, ви перейдете до кімнати перфокарт і переписуєте свою програму на перфокарти, один рядок на 80 символів на кожну карту. Ви також отримаєте перфокарти для будь-яких даних, які можуть знадобитися вашій програмі. Тоді ви також проб'єте кілька неймовірно криптовалютних карток у мові управління роботою (JCL), які б розповіли комп’ютеру, як компілювати та запускати вашу програму та які пристрої вводу / виводу вони будуть використовувати. Тоді ви віднесите свої картки до «Вікна вводу-виводу», де ви передасте їх діловоду.
Коли настала ваша черга, діловод завантажив ваші картки в бункер і натисне кнопку, щоб сказати комп'ютеру почати їх читати. Вихід вашої програми, як правило, йде на лінійний принтер або на барабанний графік. Коли ваша програма була виконана, канцеляр збирав ваші картки та ваш вивід паперової копії, і клав їх у отвір для голубів, де ви могли їх забрати. Ви підберете результат, перегляньте його та повторите процес. Повний цикл зайняв би від 20 хвилин до 24 годин. Ви, напевно, можете собі уявити, що ви не були щасливі, коли виявили, що єдиним результатом є друковане повідомлення від компілятора, яке повідомляє вам, що у вашій програмі була помилка синтаксису.
Ви також можете мати доступ до комп'ютера через телетайп, щоб ви могли фактично провести інтерактивний сеанс із віддаленим комп'ютером. Однак набір телебачення був фізично болісним (дуже жорсткі клавіші та голосні), тому ти все-таки спочатку написав і перевірив свою програму на папері.
До 1976 року системи UNIX та міні-комп’ютери, такі як PDP 11-70, стали все більш поширеними. Ви, як правило, працювали в кімнаті, повному відео-терміналах з дисплеями символів розміром 25x80. Вони були підключені до комп'ютера послідовними лініями. Сирий, але не надто відрізняється від роботи в командному рядку сьогодні. Більшість редакторів тоді були досить хитрі. Vi був дивовижним покращенням.
Я вивчив програмування в PL / 1 в 1975 році (на IBM 370/168 ), як підліток (я народився в 1959 році). Я мав честь мати батька, який працював у IBM France. Його начальник М. Дорнбуш написав (французькою) книгу про програмування в PL / 1.
У той час програма (як це робив хтось, хто навчається програмуванню) являла собою пакет з декількох сотень перфокарт. Відповідь Чарльза Е. Гранта описує процес: ви спочатку написали свою програму на папері, і ви досить ретельно перевірили її. Потім ви пробивали картки (на машині штампування ключів IBM29 ) і, нарешті, поміщаєте колоду карт у зчитувач перфорованих карт. Зауважте, що на той час джерело програм, де досить мало (програма з декількох тисяч заяв - тобто перфокарт - була дуже великою програмою).
У підлітковому віці мене вразила здатність компілятора оформлення каси PL / 1, зокрема пропонувати виправлення помилок друку.
У наступні роки я грав у старовинному комп’ютері CAB / 500 та комп'ютері IBM / 1620 у науковому музеї Палацу де ла Дековерте в Парижі (обидва комп'ютери були досить старі, щоб сидіти в музеї). CAB / 500 вироблявся в 1960-х роках, і мій батько написав свій компілятор PAF (свого роду ОСНОВНА мова), коли я був немовлям чи малюком (1958-1962).
Сьогодні я все ще роблю речі ( MELT ), пов’язані з компіляторами, і один з небагатьох, хто може стверджувати, що бачив, як власний батько писав укладачі!
Найцікавішою річчю PAF на CAB / 500 був його інтерактивний редактор (з фізичними стрічками та перфорованими стрічками), здатний завершити (за ключовими словами). Це було трохи схоже на оригінальний комп'ютер IBM, якось "персональний комп'ютер".
Найцікавішим з IBM / 1620 було те, що вам довелося завантажувати його, ввівши на клавіатурі кілька цифр, щоб завантажити монітор та компілятор Fortran.
Зауважте, що у 1950-х роках деякі комп'ютери навіть не мали зчитувачів перфокарт (AFAIK був необов'язковим для IBM650 та IBM7094), але я ніколи їх не бачив.
Зауважте також, що доступ до комп’ютерів у середині 1970-х був величезною привілеєм (адже там, де дороге обладнання). Можливо, рівнозначним сьогодні може бути доступ до машин для виготовлення кремнію або до обчислювальної потужності в центрі даних.
Це залежить від того, як далеко ви хочете зайти.
Найперші "програмування" використовували пунш-карти, які виглядали так (Це кобол)де вони виписали свій код з дуже малою взаємодією будь-якого особливо електричного, а потім подали їх (коли вони насправді отримали шанс) в один комп'ютер у будівлю, щоб код запустився на деякий час і виплюнув друк із якоїсь форми . Часто було багато людей, які бажають користуватися тим же комп’ютером, тому вам доведеться почекати десь до пари днів (якщо це було дійсно зайнято), щоб отримати свої результати, які частіше тоді не були б абсолютно марними (ви Подумайте, якщо помилка синтаксису зараз може бути неприємною. Уявіть, якби вам довелося повністю переписати розділ свого коду, а потім зачекати день, щоб його скласти). Їм не довелося перевіряти вхід майже стільки ж, ні робити тестування на користування чи будь-який інший критичний тест, оскільки комп'ютери там, де так мало, вони '
Коли PDP та їх еквіваленти стали більш поширеними, програміст (особливо в коледжних середовищах) виписує свій код на папері, а потім резервує час з PDP, щоб ввести код і запустити його кілька разів. Вони не отримали багато часу, якщо вони не працювали в маленькі години ранку, тому люди, які трималися всю ніч, щоб отримати свій код, щоб пробігти, не були рідкістю, і обмеженість часу на "справжньому" PDP (або еквівалент) призводять до того, що ряд груп будує власний клон, щоб отримати трохи більше часу.
Я б сказав, що в ті часи фактично використовувати комп'ютерну програму може бути легше, ніж написати сьогодні. Зважаючи на те, що сьогодні IDE набагато зручніший для користувачів, ніж користувальницькі інтерфейси комп'ютерних програм тоді, навіть коли вони мали віддалені послідовні термінали. Більшість програм використовували критичні незадокументовані послідовності ключів або команди.
Мій єдиний досвід роботи з давніми комп'ютерними системами - це старий кольоровий принтер Kodak 2610 Photo. Він завантажився із серійного TTY за допомогою оптичного зчитувача смуг. Під час мого працевлаштування мені довелося перезавантажувати її лише один раз після відмови в роботі.
Управління командами здійснювалося через серійний vt100 tty, але вся конфігурація була збережена та відновлена за допомогою механічного tty, який міг читати та писати паперові смужки.
Я пам’ятаю, як моя мама розповідала, що вона програмувала в коледжі (приблизно 1969-1970). Вона сказала, що перший рік вони використовували перфокарти, що було боляче. На 2-му курсі вони отримали PDP-8, який був дивовижним комп'ютером, і я думаю, що вони насправді мали термінал або, принаймні, паперову стрічку.
Я думаю, що вона працювала у фортран та лісп.
Джеррі Вайнберг відповів на подібне запитання ще раз у своєму блозі: http://secretsofconsulting.blogspot.com/2008/12/how-we-used-to-do-unit-testing.html
Я думаю, що це може принести трохи світла вашому питанню.