Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

Малку за тоа како беше училишната „компјутерска наука“ во 90-тите и зошто тогаш сите програмери беа исклучиво самоуки.

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

На што децата беа научени да програмираат

Во раните 90-ти, московските училишта почнаа селективно да се опремени со компјутерски часови. Собите веднаш беа опремени со решетки на прозорците и тешка железна врата. Од некаде се појави наставник по информатика (изгледаше како најважниот другар по директорот), чија главна задача беше да се погрижи никој ништо да не допре. Воопшто ништо. Дури и влезната врата.
Во училниците најчесто може да се најдат системите BK-0010 (во неговите сорти) и BK-0011M.

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа
Фотографија направена оттука

На децата им беше кажано за општата структура, како и за десетина BASIC команди за да можат да цртаат линии и кругови на екранот. За помлади и средни одделенија, ова беше веројатно доволно.

Имаше некои проблеми со зачувување на нечии креации (програми). Најчесто, компјутерите што користат моно-канални контролери беа комбинирани во мрежа со топологија „заедничка магистрала“ и брзина на пренос од 57600 бауд. Како по правило, имаше само еден диск, и честопати работите тргнаа наопаку со него. Понекогаш работи, понекогаш не, понекогаш мрежата е замрзната, понекогаш флопи дискот е нечитлив.

Потоа ја носев со мене оваа креација со капацитет од 360 kB.

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

Шансите повторно да ја извадам мојата програма беа 50-70 проценти.

Сепак, главниот проблем со сите овие приказни со компјутерите на BC беа бескрајните замрзнувања.

Ова може да се случи во секое време, без разлика дали пишувате код или извршувате програма. Замрзнат систем значеше дека залудно потрошивте 45 минути, бидејќи ... Морав да направам сè одново, но преостанатото време за лекција веќе не беше доволно за ова.

Поблиску до 1993 година, во некои училишта и ликеј се појавија нормални часови со 286 автомобили, а на некои места имаше дури три рубли. Во однос на програмските јазици, имаше две опции: каде завршуваше „BASIC“, започнуваше „Turbo Pascal“.

Програмирање во „Турбо Паскал“ користејќи го примерот на „тенкови“

Користејќи го Паскал, децата беа научени да градат јамки, да цртаат секакви функции и да работат со низи. На физичко-математичкиот ликеј, каде што „живеев“ извесно време, по еден пар неделно ми се доделуваше на информатика. И две години имаше ова здодевно место. Се разбира, сакав да направам нешто посериозно од прикажување на вредностите на низа или некој вид синусоид на екранот.

Тенковите

Battle City беше една од најпопуларните игри на NES клон конзоли (Dendy, итн.).

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

Во 1996 година, популарноста на 8-битите помина, тие долго време собираа прашина во плакарите и ми се чинеше кул да направам клон на „Танкови“ за компјутер како нешто од големи размери. Следното е само за тоа како тогаш беше потребно да се избегне за да се напише нешто со графика, глувче и звук на Паскал.

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

Можете да цртате само стапчиња и кругови

Да почнеме со графика.

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

Во својата основна верзија, Паскал ви дозволи да нацртате некои форми, да сликате и да ги одредите боите на точките. Најнапредните процедури во модулот Graph кои нè доближуваат до sprites се GetImage и PutImage. Со нивна помош, беше можно да се сними дел од екранот во претходно резервирана мемориска област и потоа да се користи овој дел како битмапа слика. Со други зборови, ако сакате повторно да употребите некои елементи или слики на екранот, прво ги цртате, ги копирате во меморијата, го бришете екранот, го нацртате следниот и така натаму додека не ја креирате саканата библиотека во меморијата. Бидејќи сè се случува брзо, корисникот не ги забележува овие трикови.

Првиот модул каде што се користеа sprites беше уредувачот на мапи.

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

Имаше обележано поле за играње. Со кликнување на глувчето се појави мени каде што можете да изберете една од четирите опции за пречки. Говорејќи за глувчето...

Глувчето е веќе крајот на 90-тите

Се разбира, сите имаа глувци, но до средината на 90-тите тие се користеа само во Windows 3.11, графички пакети и мал број игри. Wolf и Doom се свиреа само со тастатура. И во DOS-околината, глувчето не беше особено потребно. Затоа, Borland дури и не го вклучи модулот за глувчето во стандардниот пакет. Мораше да го бараш преку твоите познаници, кои ги кренаа рацете и како одговор извикаа: „За што ти треба?“

Сепак, наоѓањето модул за анкетирање на глувчето е само половина од битката. За да кликнете на копчињата на екранот со глувчето, тие требаше да бидат нацртани. Покрај тоа, во две верзии (притиснати и непритиснати). Копче што не е притиснато има светло горниот дел и сенка под него. Кога ќе се притисне, тоа е обратно. И потоа нацртајте го на екранот три пати (не притиснато, притиснато, потоа не притиснато повторно). Плус, не заборавајте да поставите доцнења за прикажување и да го скриете курсорот.

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

На пример, обработката на главното мени во кодот изгледаше вака:

Танчики во Паскал: како децата ги учеле програмирањето во 90-тите и што не е во ред со тоа

Звук - само звучник за компјутер

Посебна приказна со звук. Во раните деведесетти, клоновите на Sound Blaster само се подготвуваа за нивниот победнички марш, а повеќето апликации работеа само со вградениот звучник. Максимумот од неговите способности е истовремена репродукција на само еден тон. И токму тоа ти го дозволи Турбо Паскал. Преку процедурата за звук можеше да се „чкрипи“ со различни фреквенции, што е доволно за звуците на истрели и експлозии, но за музички скринсејвер, како што беше модерен тогаш, тоа не беше соодветно. Како резултат на тоа, беше пронајдено многу лукаво решение: во сопствената архива на софтверот беше откриена „exe датотека“, преземена еднаш од некои BBS. Тој можеше да прави чуда - да репродуцира некомпресирани бранови преку звучник на компјутер, а тоа го правеше од командната линија и немаше вистински интерфејс. Сè што беше потребно беше да се повика преку постапката Pascal exec и да се увериме дека оваа конструкција не се урне.

Како резултат на тоа, на екранот се појавила убиствената музика, но со неа се случила смешна работа. Во 1996 година, имав систем на Пентиум 75, завиткан до 90. Сè работеше добро на него. На универзитетот каде што ни беше инсталиран Паскал во вториот семестар, во училницата имаше добро истрошени „три рубли“. По договор со наставникот ги однесов овие тенкови на вториот час за да направам тест и да не одам повторно таму. И така, по лансирањето, од звучникот излезе силен татнеж помешан со жуборечки грутални звуци. Општо земено, „картичката од три рубли“ DX од 33 мегахерци се покажа дека не може правилно да ја врти истата „извршна датотека“. Но, инаку се беше во ред. Се разбира, не сметајќи го бавното гласање на тастатурата, кое ја расипа целата игра, без разлика на перформансите на компјутерот.

Но, главниот проблем не е во Паскал

Според моето разбирање, „Тенкови“ е максимумот што може да се исцеди од Турбо Паскал без монтажни влошки. Очигледните недостатоци на финалниот производ се бавното гласање на тастатурата и бавното графичко прикажување. Ситуацијата беше влошена од исклучително малиот број библиотеки и модули од трети страни. Можеа да се избројат на прстите од едната рака.

Но, она што најмногу ме вознемири беше пристапот кон училишното образование. Тогаш никој не им кажуваше на децата за предностите и можностите на другите јазици. На часот, тие речиси веднаш почнаа да зборуваат за почеток, печатење и ако, што ги заклучи учениците во ОСНОВНА-Паскалната парадигма. И двата од овие јазици може да се сметаат за исклучиво едукативни. Нивната „борбена“ употреба е ретка појава.

Зошто да ги учиме децата лажни јазици е мистерија за мене. Нека бидат повизуелни. Нека се користат варијации на BASIC овде и таму. Но, во секој случај, ако некое лице одлучи да ја поврзе својата иднина со програмирање, ќе мора да научи други јазици од нула. Па, зошто на децата да не им се даваат исти образовни задачи, туку само на нормална платформа (јазик), во која тие понатаму би можеле да се развиваат самостојно?

Зборувајќи за задачи. На училиште и на факултет секогаш беа апстрактни: пресметај нешто, конструирај функција, нацртај нешто. Учев во три различни училишта, плус имавме „Паскал“ во првата година на институтот, и ниту еднаш наставниците не поставија вистински применет проблем. На пример, направете тетратка или нешто друго корисно. Сè беше пресилен. И кога човек поминува со месеци решавајќи празни проблеми, кои потоа одат во ѓубре... Во принцип, луѓето веќе го напуштаат институтот изгорени.

Инаку, во трета година на истиот универзитет ни беа дадени „плуси“ во програмата. Изгледаше како добра работа, но луѓето беа уморни, полни со фалсификати и задачи за „тренинг“. Никој не беше толку ентузијаст како првиот пат.

П.С. Пребарав на Гугл кои јазици сега се учат на часовите по информатика во училиштата. Сè е исто како пред 25 години: Басик, Паскал. Пајтон доаѓа во спорадични подмножества.

Извор: www.habr.com

Додадете коментар