Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

Un pouco sobre como era a "informática" escolar nos anos 90 e por que todos os programadores daquela eran exclusivamente autodidactas.

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

Que lles ensinaron aos nenos a programar

A principios dos anos 90, as escolas de Moscova comezaron a equiparse selectivamente con clases de informática. As habitacións foron inmediatamente equipadas con reixas nas fiestras e unha pesada porta revestida de ferro. De algún lugar apareceu un profesor de informática (parecía o compañeiro máis importante despois do director), que tiña como principal tarefa asegurarse de que ninguén tocase nada. Non é nada. Mesmo a porta de entrada.
Nas aulas pódese atopar con máis frecuencia os sistemas BK-0010 (nas súas variedades) e BK-0011M.

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo
Foto tomada por iso

Falouse aos nenos da estrutura xeral, así como dunha ducia de comandos BÁSICOS para que puidesen debuxar liñas e círculos na pantalla. Para os graos junior e medio, isto probablemente fose suficiente.

Houbo algúns problemas para preservar as propias creacións (programas). Na maioría das veces, os ordenadores que usaban controladores monocanle combináronse nunha rede cunha topoloxía de "bus común" e unha velocidade de transmisión de 57600 baudios. Como regra xeral, só había unha unidade de disco e moitas veces as cousas saían mal con ela. Ás veces funciona, outras non, ás veces a rede está conxelada, ás veces o disquete é ilexible.

Logo levei comigo esta creación cunha capacidade de 360 ​​kB.

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

As posibilidades de que saque o meu programa de novo foron do 50-70 por cento.

Non obstante, o principal problema de todas estas historias cos ordenadores de BC foron as conxelacións sen fin.

Isto pode ocorrer en calquera momento, xa sexa escribindo código ou executando un programa. Un sistema conxelado significaba que pasabas 45 minutos en balde, porque... Tiven que facer todo de novo, pero o tempo restante da clase xa non era suficiente para iso.

Máis preto de 1993, nalgunhas escolas e liceos, apareceron clases normais con 286 coches, e nalgúns lugares había ata tres rublos. En canto ás linguaxes de programación, había dúas opcións: onde remataba "BASIC", comezaba "Turbo Pascal".

Programación en "Turbo Pascal" usando o exemplo de "tanques"

Usando Pascal, ensinábanse aos nenos a construír bucles, debuxar todo tipo de funcións e traballar con matrices. No liceo de física e matemáticas, onde eu "vivín" durante un tempo, asignábanse unha parella por semana á informática. E durante dous anos houbo este lugar aburrido. Por suposto, quería facer algo máis serio que mostrar os valores dunha matriz ou algún tipo de sinusoide na pantalla.

Tanques

Battle City foi un dos xogos máis populares nas consolas clon de NES (Dendy, etc.).

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

En 1996, a popularidade dos 8 bits pasou, levaban moito tempo acumulando po nos armarios e pareceume xenial facer un clon de "Tanks" para PC como algo a gran escala. O seguinte é só sobre como naquela época era necesario esquivar para escribir algo con gráficos, rato e son en Pascal.

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

Só podes debuxar paus e círculos

Imos comezar cos gráficos.

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

Na súa versión básica, Pascal permitía debuxar algunhas formas, pintar e determinar as cores dos puntos. Os procedementos máis avanzados do módulo Graph que nos achegan aos sprites son GetImage e PutImage. Coa súa axuda, foi posible capturar unha sección da pantalla nunha área de memoria previamente reservada e logo usar esta peza como imaxe de mapa de bits. É dicir, se quere reutilizar algúns elementos ou imaxes da pantalla, primeiro debuxaos, cópiaos na memoria, borra a pantalla, debuxa a seguinte, etc. ata crear a biblioteca desexada na memoria. Dado que todo ocorre rapidamente, o usuario non se decata destes trucos.

O primeiro módulo onde se utilizaron sprites foi o editor de mapas.

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

Tiña un terreo de xogo marcado. Facendo clic co rato apareceu un menú onde podías seleccionar unha das catro opcións de obstáculos. Falando do rato...

O rato xa é finais dos 90

Por suposto, todos tiñan ratos, pero ata mediados dos 90 só se usaban en Windows 3.11, paquetes de gráficos e un pequeno número de xogos. Wolf e Doom tocábanse só co teclado. E no ambiente DOS o rato non era especialmente necesario. Polo tanto, Borland nin sequera incluíu o módulo do rato no paquete estándar. Tiveches que buscalo a través dos teus coñecidos, que botaron as mans e exclamaron en resposta: "Para que o necesitas?"

Non obstante, atopar un módulo para enquisar o rato é só a metade da batalla. Para facer clic co rato nos botóns da pantalla, tiñan que ser debuxados. Ademais, en dúas versións (prensado e non prensado). Un botón que non se preme ten unha parte superior clara e unha sombra debaixo. Cando se presiona, é ao revés. E despois debuxao na pantalla tres veces (non presionado, presionado e despois non presionado de novo). Ademais, non esquezas definir atrasos para a visualización e ocultar o cursor.

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

Por exemplo, procesar o menú principal no código quedou así:

Tanchiki en Pascal: como se lles ensinaba aos nenos a programar nos anos 90 e que había de malo

Son: só altofalante para PC

Unha historia aparte con son. A principios dos noventa, os clons de Sound Blaster estaban a prepararse para a súa marcha vitoriosa e a maioría das aplicacións só funcionaban co altofalante incorporado. O máximo das súas capacidades é a reprodución simultánea dun só ton. E iso é exactamente o que che permitiu facer Turbo Pascal. A través do procedemento de son foi posible "chirriar" con diferentes frecuencias, o que é suficiente para os sons de disparos e explosións, pero para un salvapantallas musical, como estaba de moda entón, isto non era axeitado. Como resultado, atopouse unha solución moi astuta: no propio arquivo do software descubriuse un "ficheiro exe", descargado unha vez desde algún BBS. Podería facer milagres: reproducir ondas sen comprimir a través dun altofalante para PC, e fíxoo desde a liña de comandos e non tiña unha interface real. Só faltaba chamalo polo procedemento Pascal exec e asegurarse de que esta construción non se derrubase.

Como resultado, a música asasina apareceu no salvapantallas, pero pasou unha cousa divertida con ela. En 1996, tiña un sistema nun Pentium 75, con manivela ata 90. Todo funcionaba ben nel. Na universidade na que Pascal se nos instalou no segundo cuadrimestre, había "tres rublos" moi gastados na aula. Por acordo co profesor, levei estes tanques á segunda lección para facerme unha proba e non volver alí. E así, despois do lanzamento, un ruxido forte mesturado con sons guturais gorgoteantes saíu do altofalante. En xeral, a "tarxeta de tres rublos" DX de 33 megahercios resultou incapaz de xirar correctamente ese mesmo "executábel". Pero se non, todo estaba ben. Por suposto, sen contar a lenta votación do teclado, que estropeou todo o xogo, independentemente do rendemento do PC.

Pero o principal problema non está en Pascal

Segundo o meu entender, "Tanques" é o máximo que se podería espremer do Turbo Pascal sen insercións de montaxe. As deficiencias obvias do produto final son a lenta enquisa do teclado e a lenta representación gráfica. A situación viuse agravada polo número extremadamente reducido de bibliotecas e módulos de terceiros. Podíanse contar cos dedos dunha man.

Pero o que máis me molestou foi o enfoque da educación escolar. Ninguén lles falaba aos nenos daquela das vantaxes e das posibilidades doutras linguas. Na clase, case de inmediato comezaron a falar de begin, println e if, o que encerraba ao alumnado dentro do paradigma BASIC-Pascal. Ambas as dúas linguas poden considerarse exclusivamente educativas. O seu uso de "combate" é unha ocorrencia rara.

Por que ensinarlles aos nenos linguas falsas é un misterio para min. Que sexan máis visuais. Deixa que as variacións de BASIC se usen aquí e alí. Pero, en calquera caso, se unha persoa decide conectar o seu futuro coa programación, terá que aprender outros idiomas desde cero. Entón, por que non se lles debe dar aos nenos as mesmas tarefas educativas, pero só nunha plataforma normal (lingua), dentro da cal poderían desenvolverse de forma independente?

Falando de tarefas. Na escola e na universidade sempre foron abstractos: calcular algo, construír unha función, debuxar algo. Estudei en tres colexios diferentes, ademais tivemos “Pascal” no primeiro curso do instituto, e nin unha vez os profesores plantexamos ningún problema aplicado real. Por exemplo, facer un caderno ou outra cousa útil. Todo era descabellado. E cando unha persoa leva meses resolvendo problemas baleiros, que logo van ao lixo... En xeral, a xente xa sae calcinada do instituto.

Por certo, no terceiro curso da mesma universidade déronnos “pluses” no programa. Parecía algo bo, pero a xente estaba cansa, chea de falsificacións e tarefas de “adestramento”. Ninguén estaba tan entusiasmado como a primeira vez.

PD Busquei en Google sobre cales son os idiomas que se ensinan agora nas clases de informática nas escolas. Todo é igual que hai 25 anos: Basic, Pascal. Python vén en inclusións esporádicas.

Fonte: www.habr.com

Engadir un comentario