Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

90-cı illərdə məktəb "kompüter elmi" nin necə olduğu və niyə o zaman bütün proqramçıların yalnız öz-özünə öyrədildiyi haqqında bir az.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

Uşaqlara hansı mövzuda proqramlaşdırma öyrədildi

90-cı illərin əvvəllərində Moskva məktəbləri seçmə şəkildə kompüter sinifləri ilə təchiz olunmağa başladı. Otaqlar dərhal pəncərələrdə barmaqlıqlar və ağır dəmirlə örtülmüş qapı ilə təchiz edilmişdir. Hardansa bir informatika müəllimi peyda oldu (o, direktordan sonra ən vacib yoldaş kimi görünürdü), onun əsas vəzifəsi heç kimin heç nəyə toxunmadığından əmin olmaq idi. Heç bir şey. Hətta ön qapı.
Sinif otaqlarında ən çox BK-0010 (çeşidlərində) və BK-0011M sistemlərinə rast gəlmək olar.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi
Foto çəkildi buradan

Uşaqlara ekranda xətlər və dairələr çəkə bilmələri üçün ümumi quruluş, eləcə də onlarla BASIC əmrləri haqqında məlumat verildi. Kiçik və orta siniflər üçün bu, yəqin ki, kifayət idi.

Yaradıcılıqlarını (proqramlarını) qorumaqla bağlı bəzi problemlər var idi. Çox vaxt monokanal kontrollerlərdən istifadə edən kompüterlər “ümumi şin” topologiyası və 57600 baud ötürmə sürəti ilə şəbəkəyə birləşdirilirdi. Bir qayda olaraq, yalnız bir disk sürücüsü var idi və onunla tez-tez işlər səhv gedirdi. Bəzən işləyir, bəzən işləmir, bəzən şəbəkə donur, bəzən disket oxunmur.

Sonra 360 kB tutumlu bu yaradıcılığı özümlə apardım.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

Proqramımı yenidən oradan çıxarmaq şansım 50-70 faiz idi.

Bununla birlikdə, BC kompüterlərindəki bütün bu hekayələrin əsas problemi sonsuz donmalar idi.

Bu, kodu yazarkən və ya proqramı icra edərkən istənilən vaxt baş verə bilər. Donmuş sistem 45 dəqiqəni boş yerə sərf etdiyiniz demək idi, çünki... Hər şeyi yenidən etməli oldum, amma qalan dərs vaxtı artıq bunun üçün kifayət etmədi.

1993-cü ilə yaxın, bəzi məktəb və liseylərdə 286 avtomobildən ibarət normal siniflər meydana çıxdı, bəzi yerlərdə hətta üç rubl var idi. Proqramlaşdırma dilləri baxımından iki seçim var idi: “BASIC” bitdiyi yerdə “Turbo Pascal” başladı.

"Turbo Pascal"da "tanklar" nümunəsindən istifadə edərək proqramlaşdırma

Paskaldan istifadə etməklə uşaqlara ilmələr qurmağı, bütün növ funksiyaları çəkməyi və massivlərlə işləməyi öyrədirdilər. Bir müddət “yaşadığım” fizika-riyaziyyat liseyində həftədə bir cütlük informatika fənninə verilirdi. Və iki il ərzində bu cansıxıcı yer var idi. Əlbəttə ki, ekranda bir massivin və ya bir növ sinusoidin dəyərlərini göstərməkdən daha ciddi bir şey etmək istədim.

Tanklar

Battle City NES klon konsollarında (Dendy və s.) ən populyar oyunlardan biri idi.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

1996-cı ildə 8-bitlərin populyarlığı keçdi, onlar çoxdan şkaflarda toz yığırdılar və böyük miqyaslı bir şey kimi PC üçün "Tanklar" klonunu düzəltmək mənə gözəl göründü. Aşağıdakılar, Paskalda qrafika, siçan və səslə nəsə yazmaq üçün o vaxtlar qaçmağın necə lazım olduğu haqqındadır.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

Yalnız çubuqlar və dairələr çəkə bilərsiniz

Qrafikdən başlayaq.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

Paskal özünün əsas versiyasında bəzi formaları çəkməyə, rəngləməyə və nöqtələrin rənglərini təyin etməyə imkan verirdi. Qrafik modulunda bizi spritlərə yaxınlaşdıran ən qabaqcıl prosedurlar GetImage və PutImage-dir. Onların köməyi ilə ekranın bir hissəsini əvvəllər ayrılmış yaddaş sahəsinə çəkmək və sonra bu hissəni bitmap təsviri kimi istifadə etmək mümkün idi. Başqa sözlə, ekranda bəzi elementləri və ya şəkilləri təkrar istifadə etmək istəyirsinizsə, yaddaşda istədiyiniz kitabxananı yaratana qədər əvvəlcə onları çəkirsiniz, yaddaşa köçürürsünüz, ekranı silirsiniz, növbətisini çəkirsiniz və s. Hər şey tez baş verdiyi üçün istifadəçi bu hiylələri hiss etmir.

Spritlərin istifadə edildiyi ilk modul xəritə redaktoru idi.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

İşarələnmiş oyun sahəsi var idi. Siçan üzərinə klikləməklə, dörd maneə variantından birini seçə biləcəyiniz bir menyu açılır. Siçan demişkən...

Siçan artıq 90-cı illərin sonudur

Təbii ki, hamının siçanları var idi, lakin 90-cı illərin ortalarına qədər onlar yalnız Windows 3.11-də, qrafik paketlərdə və az sayda oyunda istifadə olunurdu. Wolf və Doom yalnız klaviatura ilə oynanılırdı. Və DOS mühitində siçana xüsusi ehtiyac yox idi. Buna görə də Borland standart paketə siçan modulunu belə daxil etməyib. Siz onu tanışlarınız vasitəsilə axtarmaq lazım idi, onlar əllərini yuxarı qaldırıb “O, sizə nə lazımdır?” deyə qışqırdılar.

Bununla belə, siçanı sorğulamaq üçün modul tapmaq döyüşün yalnız yarısıdır. Siçan ilə ekrandakı düymələri sıxmaq üçün onları çəkmək lazım idi. Üstəlik, iki versiyada (basılmış və basılmamış). Basılmayan düymənin üstü açıq və altında kölgə var. Basıldıqda isə əksinə olur. Və sonra üç dəfə ekrana çəkin (basılmadı, basılmadı, sonra yenidən basılmadı). Üstəlik, ekran üçün gecikmələr təyin etməyi və kursoru gizlətməyi unutmayın.

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

Məsələn, kodda əsas menyunun işlənməsi belə görünür:

Paskalda Tanchiki: 90-cı illərdə uşaqlara proqramlaşdırma necə öyrədilirdi və bununla nə pis idi

Səs – yalnız PC dinamiki

Səs ilə ayrı bir hekayə. XNUMX-cı illərin əvvəllərində Sound Blaster klonları yalnız qalib yürüşlərinə hazırlaşırdılar və əksər proqramlar yalnız daxili dinamiklə işləyirdi. Onun imkanlarının maksimumu eyni vaxtda yalnız bir tonun təkrar istehsalıdır. Turbo Pascal sizə bunu etməyə imkan verən məhz budur. Səs proseduru ilə müxtəlif tezliklərdə "cığırmaq" mümkün idi, bu, atəş səsləri və partlayış səsləri üçün kifayətdir, lakin musiqi ekran qoruyucusu üçün, o zamanlar dəbdə olduğu kimi, bu uyğun deyildi. Nəticədə, çox hiyləgər bir həll tapıldı: proqramın öz arxivində bəzi BBS-dən bir dəfə endirilmiş "exe faylı" aşkar edildi. O, möcüzələr yarada bilərdi - PC Dinamiki vasitəsilə sıxılmamış dalğalar səsləndirir və o, bunu komanda xəttindən edirdi və faktiki interfeysə malik deyildi. Sadəcə Pascal exec proseduru vasitəsilə onu çağırmaq və bu konstruksiyanın çökməməsinə əmin olmaq lazım idi.

Nəticədə qatil musiqisi ekran qoruyucuda göründü, lakin onunla gülməli bir hadisə baş verdi. 1996-cı ildə Pentium 75-də sistemim 90-a qədər idi. Onda hər şey yaxşı işləyirdi. İkinci semestrdə bizim üçün Paskalın quraşdırıldığı universitetdə sinifdə köhnəlmiş “üç rubl” var idi. Müəllimlə razılaşaraq bu tankları 33-ci dərsə apardım ki, imtahandan keçib bir daha ora getməyim. Beləliklə, işə salındıqdan sonra dinamikdən gurultulu bağırsaq səsləri ilə qarışan yüksək gurultu çıxdı. Ümumiyyətlə, XNUMX megahertz DX "üç rublluq kart" eyni "icra edilə bilən" i düzgün çevirə bilmədi. Amma əks halda hər şey yaxşı idi. Əlbəttə ki, PC performansından asılı olmayaraq bütün oyunu korlayan yavaş klaviatura sorğusunu saymırıq.

Amma əsas problem Paskalda deyil

Anladığım qədər, "Tanklar" Turbo Paskaldan montaj əlavələri olmadan sıxışdırıla bilən maksimumdur. Son məhsulun aşkar çatışmazlıqları yavaş klaviatura sorğusu və yavaş qrafik göstərilməsidir. Vəziyyət üçüncü tərəf kitabxanalarının və modullarının çox az olması ilə daha da ağırlaşdı. Onları bir əlin barmaqla saymaq olardı.

Amma məni ən çox üzən məktəb təhsilinə yanaşma idi. Onda heç kim uşaqlara başqa dillərin üstünlükləri və imkanları barədə danışmırdı. Dərsdə onlar demək olar ki, dərhal start, println və if haqqında danışmağa başladılar ki, bu da tələbələri BASIC-Paskal paradiqmasının içərisinə bağladı. Bu dillərin hər ikisi müstəsna olaraq maarifləndirici hesab edilə bilər. Onların "döyüş" istifadəsi nadir bir hadisədir.

Uşaqlara niyə saxta dil öyrətmək mənim üçün sirrdir. Qoy daha vizual olsunlar. BASIC-in variasiyaları burada və orada istifadə olunsun. Ancaq hər halda, insan gələcəyini proqramlaşdırma ilə bağlamaq qərarına gəlsə, başqa dilləri sıfırdan öyrənməli olacaq. Bəs niyə uşaqlara eyni təhsil tapşırıqları verilməməlidir, ancaq onlar müstəqil olaraq daha da inkişaf edə biləcəkləri normal platformada (dildə) verilməlidir?

Tapşırıqlardan danışarkən. Məktəbdə və kollecdə onlar həmişə mücərrəd idilər: nəyisə hesablayır, funksiya qurur, nəyisə çəkir. Mən üç müxtəlif məktəbdə oxudum, üstəlik institutun birinci kursunda “Paskal”ımız var idi və müəllimlər bir dəfə də olsun real tətbiqi problem yaratmadılar. Məsələn, bir notebook və ya başqa bir faydalı şey düzəldin. Hər şey çox uzaq idi. İnsan aylarla boş məsələləri həll edəndə, sonra zibil qutusuna atılır... Ümumiyyətlə, insanlar institutu onsuz da yanmış halda tərk edirlər.

Yeri gəlmişkən, həmin universitetin üçüncü kursunda bizə proqramda “pluslar” verildi. Bu, yaxşı bir şey kimi görünürdü, amma insanlar yorğun idi, saxta və "təlim" tapşırıqları ilə dolu idi. Heç kim ilk dəfəki qədər həvəsli deyildi.

P.S. İndi məktəblərdə informatika dərslərində hansı dillərin öyrədilməsi ilə bağlı google-da axtardım. Hər şey 25 il əvvəl olduğu kimidir: Basic, Pascal. Python sporadik daxilolmalarda gəlir.

Mənbə: www.habr.com

Добавить комментарий