Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Sedikit tentang "sains komputer" sekolah pada tahun 90-an, dan mengapa semua pengaturcara kemudiannya diajar sendiri secara eksklusif.

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Apa yang kanak-kanak diajar untuk memprogramkan

Pada awal 90-an, sekolah Moscow mula dilengkapi secara selektif dengan kelas komputer. Bilik-bilik itu segera dilengkapi dengan palang pada tingkap dan pintu bersalut besi yang berat. Dari suatu tempat, seorang guru sains komputer muncul (dia kelihatan seperti rakan yang paling penting selepas pengarah), yang tugas utamanya adalah untuk memastikan tiada siapa yang menyentuh apa-apa. Tiada apa-apa pun. Malah pintu depan.
Di dalam bilik darjah seseorang paling kerap boleh menemui sistem BK-0010 (dalam jenisnya) dan BK-0011M.

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya
Foto diambil oleh itu

Kanak-kanak diberitahu tentang struktur umum, serta kira-kira sedozen arahan ASAS supaya mereka boleh melukis garisan dan bulatan pada skrin. Untuk gred rendah dan pertengahan, ini mungkin sudah memadai.

Terdapat beberapa masalah dengan mengekalkan ciptaan seseorang (program). Selalunya, komputer yang menggunakan pengawal mono-saluran digabungkan ke dalam rangkaian dengan topologi "bas biasa" dan kelajuan penghantaran 57600 baud. Sebagai peraturan, terdapat hanya satu pemacu cakera, dan perkara-perkara sering berlaku dengannya. Kadang-kadang ia berfungsi, kadang-kadang tidak, kadang-kadang rangkaian dibekukan, kadang-kadang cakera liut tidak boleh dibaca.

Saya kemudian membawa bersama saya ciptaan ini dengan kapasiti 360 kB.

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Peluang saya untuk mendapatkan program saya daripadanya sekali lagi ialah 50-70 peratus.

Walau bagaimanapun, masalah utama dengan semua cerita ini dengan komputer BC ialah pembekuan yang tidak berkesudahan.

Ini boleh berlaku pada bila-bila masa, sama ada menaip kod atau melaksanakan program. Sistem beku bermakna anda menghabiskan 45 minit dengan sia-sia, kerana... Saya terpaksa melakukan semuanya sekali lagi, tetapi masa pelajaran yang tinggal tidak lagi mencukupi untuk ini.

Lebih dekat dengan tahun 1993, di beberapa sekolah dan lyceum, kelas biasa dengan 286 kereta muncul, dan di beberapa tempat terdapat tiga rubel. Dari segi bahasa pengaturcaraan, terdapat dua pilihan: di mana "BASIC" berakhir, "Turbo Pascal" bermula.

Pengaturcaraan dalam "Turbo Pascal" menggunakan contoh "tangki"

Menggunakan Pascal, kanak-kanak diajar untuk membina gelung, melukis semua jenis fungsi dan bekerja dengan tatasusunan. Di lyceum fizik dan matematik, tempat saya "tinggal" untuk seketika, satu pasangan setiap minggu ditugaskan untuk sains komputer. Dan selama dua tahun ada tempat yang membosankan ini. Sudah tentu, saya mahu melakukan sesuatu yang lebih serius daripada memaparkan nilai tatasusunan atau sejenis sinusoid pada skrin.

kereta kebal

Battle City ialah salah satu permainan paling popular pada konsol klon NES (Dendy, dll.).

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Pada tahun 1996, populariti 8-bit telah berlalu, mereka telah lama mengumpul habuk di dalam almari, dan nampaknya keren kepada saya untuk membuat klon "Tangki" untuk PC sebagai sesuatu yang berskala besar. Berikut adalah tentang bagaimana ketika itu perlu mengelak untuk menulis sesuatu dengan grafik, tetikus dan bunyi pada Pascal.

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Anda hanya boleh melukis kayu dan bulatan

Mari kita mulakan dengan grafik.

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Dalam versi asasnya, Pascal membenarkan anda melukis beberapa bentuk, melukis dan menentukan warna mata. Prosedur paling maju dalam modul Graf yang membawa kita lebih dekat kepada sprite ialah GetImage dan PutImage. Dengan bantuan mereka, adalah mungkin untuk menangkap bahagian skrin ke dalam kawasan memori yang disimpan sebelum ini dan kemudian menggunakan bahagian ini sebagai imej peta bit. Dalam erti kata lain, jika anda ingin menggunakan semula beberapa elemen atau imej pada skrin, anda mula-mula melukisnya, menyalinnya ke ingatan, memadamkan skrin, melukis yang seterusnya dan seterusnya sehingga anda mencipta pustaka yang diingini dalam ingatan. Memandangkan semuanya berlaku dengan cepat, pengguna tidak menyedari helah ini.

Modul pertama di mana sprite digunakan ialah editor peta.

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Ia mempunyai padang permainan yang jelas. Mengklik tetikus membawa menu di mana anda boleh memilih salah satu daripada empat pilihan halangan. Bercakap tentang tetikus...

Tikus sudah pun penghujung tahun 90-an

Sudah tentu, semua orang mempunyai tetikus, tetapi sehingga pertengahan 90-an mereka hanya digunakan dalam Windows 3.11, pakej grafik dan sebilangan kecil permainan. Wolf dan Doom dimainkan hanya dengan papan kekunci. Dan dalam persekitaran DOS, tetikus tidak diperlukan. Oleh itu, Borland tidak memasukkan modul tetikus dalam pakej standard. Anda harus mencari dia melalui kenalan anda, yang mengangkat tangan mereka dan berseru sebagai jawapan, β€œUntuk apa kamu perlukan dia?”

Walau bagaimanapun, mencari modul untuk meninjau tetikus hanyalah separuh daripada perjuangan. Untuk mengklik pada butang pada skrin dengan tetikus, mereka perlu dilukis. Lebih-lebih lagi, dalam dua versi (ditekan dan tidak ditekan). Butang yang tidak ditekan mempunyai bahagian atas yang terang dan bayang di bawahnya. Apabila ditekan, ia adalah sebaliknya. Dan kemudian lukiskannya pada skrin tiga kali (tidak ditekan, ditekan, kemudian tidak ditekan lagi). Selain itu, jangan lupa untuk menetapkan kelewatan untuk paparan dan sembunyikan kursor.

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Sebagai contoh, memproses menu utama dalam kod kelihatan seperti ini:

Tanchiki dalam Pascal: bagaimana kanak-kanak diajar pengaturcaraan pada tahun 90-an dan apa yang salah dengannya

Bunyi – Pembesar Suara PC sahaja

Cerita berasingan dengan bunyi. Pada awal tahun sembilan puluhan, klon Sound Blaster hanya bersedia untuk perarakan kemenangan mereka, dan kebanyakan aplikasi hanya berfungsi dengan pembesar suara terbina dalam. Maksimum keupayaannya ialah pembiakan serentak hanya satu nada. Dan itulah yang Turbo Pascal benarkan anda lakukan. Melalui prosedur bunyi adalah mungkin untuk "mencicit" dengan frekuensi yang berbeza, yang cukup untuk bunyi tembakan dan letupan, tetapi untuk penyelamat skrin muzik, seperti yang bergaya ketika itu, ini tidak sesuai. Akibatnya, penyelesaian yang sangat licik ditemui: dalam arkib perisian itu sendiri, "fail exe" ditemui, dimuat turun sekali dari beberapa BBS. Dia boleh melakukan keajaiban - memainkan wav yang tidak dimampatkan melalui Speaker PC, dan dia melakukannya dari baris arahan dan tidak mempunyai antara muka sebenar. Apa yang diperlukan ialah memanggilnya melalui prosedur Pascal exec dan pastikan pembinaan ini tidak runtuh.

Akibatnya, muzik pembunuh muncul pada penyelamat skrin, tetapi perkara lucu berlaku dengannya. Pada tahun 1996, saya mempunyai sistem pada Pentium 75, dihidupkan sehingga 90. Semuanya berfungsi dengan baik padanya. Di universiti tempat Pascal dipasang untuk kami pada semester kedua, terdapat "tiga rubel" yang usang di dalam bilik darjah. Dengan persetujuan dengan guru, saya membawa kereta kebal ini ke pelajaran kedua untuk mendapatkan ujian dan tidak pergi ke sana lagi. Oleh itu, selepas pelancaran, bunyi gemuruh yang kuat bercampur dengan bunyi guttural menggelegak keluar dari pembesar suara. Secara umum, "kad tiga ruble" 33-megahertz DX ternyata tidak dapat memutarkan "boleh laku" yang sama dengan betul. Tetapi sebaliknya semuanya baik-baik saja. Sudah tentu, tidak mengira pengundian papan kekunci yang perlahan, yang merosakkan keseluruhan permainan, tanpa mengira prestasi PC.

Tetapi masalah utama bukan pada Pascal

Pada pemahaman saya, "Tangki" ialah maksimum yang boleh dikeluarkan daripada Turbo Pascal tanpa sisipan pemasangan. Kelemahan yang jelas bagi produk akhir ialah pengundian papan kekunci yang perlahan dan pemaparan grafik yang perlahan. Keadaan ini diburukkan lagi dengan bilangan perpustakaan dan modul pihak ketiga yang sangat kecil. Mereka boleh dikira dengan jari satu tangan.

Tetapi yang paling saya kecewakan ialah pendekatan pendidikan sekolah. Tiada siapa yang memberitahu kanak-kanak ketika itu tentang kelebihan dan kemungkinan bahasa lain. Di dalam kelas, mereka hampir serta-merta mula bercakap tentang begin, println dan if, yang mengunci pelajar dalam paradigma BASIC-Pascal. Kedua-dua bahasa ini boleh dianggap sebagai pendidikan secara eksklusif. Penggunaan "tempur" mereka adalah kejadian yang jarang berlaku.

Mengapa mengajar kanak-kanak bahasa palsu adalah misteri kepada saya. Biarkan mereka lebih visual. Biarkan variasi BASIC digunakan di sana sini. Tetapi, dalam apa jua keadaan, jika seseorang memutuskan untuk menyambungkan masa depannya dengan pengaturcaraan, dia perlu belajar bahasa lain dari awal. Jadi mengapa kanak-kanak tidak diberi tugas pendidikan yang sama, tetapi hanya pada platform biasa (bahasa), di mana mereka boleh terus berkembang secara bebas?

Bercakap tentang tugasan. Di sekolah dan kolej mereka sentiasa abstrak: mengira sesuatu, membina fungsi, melukis sesuatu. Saya belajar di tiga sekolah yang berbeza, ditambah pula dengan kami mempunyai "Pascal" pada tahun pertama institut, dan tidak sekali pun guru-guru menimbulkan sebarang masalah yang digunakan. Sebagai contoh, buat buku nota atau sesuatu yang berguna. Segala-galanya adalah jauh. Dan apabila seseorang menghabiskan berbulan-bulan menyelesaikan masalah kosong, yang kemudiannya masuk ke dalam tong sampah... Secara umum, orang sudah meninggalkan institut itu terbakar.

Dengan cara ini, pada tahun ketiga universiti yang sama, kami diberi "tambah" dalam program ini. Ia kelihatan seperti perkara yang baik, tetapi orang ramai letih, penuh dengan tugas palsu dan "latihan". Tiada siapa yang bersemangat seperti kali pertama.

PS Saya google tentang bahasa apa yang kini diajar dalam kelas sains komputer di sekolah. Semuanya sama seperti 25 tahun lalu: Asas, Pascal. Python datang dalam kemasukan sporadis.

Sumber: www.habr.com

Tambah komen