Отправьте статью сегодня! Журнал выйдет ..., печатный экземпляр отправим ...
Опубликовать статью

Молодой учёный

Dasturlashni o’rgatishda online tekshiruv tizimlaridan foydalanishning ahamiyati

Спецвыпуск
04.05.2017
321
Поделиться
Библиографическое описание
Юсупов, О. К. Dasturlashni o’rgatishda online tekshiruv tizimlaridan foydalanishning ahamiyati / О. К. Юсупов, К. К. Ибадуллаев, М. Ш. Давронов. — Текст : непосредственный // Техника. Технологии. Инженерия. — 2017. — № 2.1 (4.1). — С. 59-61. — URL: https://moluch.ru/th/8/archive/57/2334/.


Ushbu maqolada online tekshiruv tizimlari, ularning imkoniyatlari, dasturlashni o’rgatishda bunday tizimlaridan foydalanishning afzalliklari to’g’risida so’z yuritilgan.

Kalit sozlar: dasturlash, dastur kodi, dastur kodini testlash, online tekshiruv tizimi, online musobaqa, foydalanuvchilar reytingi, web sahifalar yaratish bo’yicha musobaqa

В данной статье речь идёт об онлайн проверяющих системах, их возможности, преимущества использования таких систем на обучении программированию.

Ключевые слова: программирование, исходный код, онлайн проверяющая система, онлайн соревнование, рейтинг пользователей, конкурс для веб-разработки

In this article we are talking about online checking systems, their options, the advantages of using the such systems on teaching programming.

Key words: programming, source code, testing the source code, online checking system, online contest, rating of users, contest for web development

Bugungi kunda axborot texnologiyalari jadal ravishda rivojlanib kundan-kunga yangi texnologiyalar hayotimizga kirib kelmoqda. Bu texnologiyalarning asosida ma’lum algoritmga asoslangan dastur kodlari yotadi.

Dasturlash keng ma’nodagi tushuncha bo’lib u ko’plab sohalarni o’ziga jamlaydi. Umumiy olganda dasturlash bu — kompyuter mikroprotsessori uchun turli buyruqlar berish, qachon, qayerda nimani o'zgartirish va nimalarni kiritish yoki chiqarish haqida buyruqlar berishdir. Dasturlashning negizida esa bir qancha dastur kodlari yotadi. Dastur kodi har xil dasturlash tillarida yozilishi mumkin. Axborot texnologiyalari sohasida ko‘plab dasturlash tillari mavjud bo‘lib, ularning soni yil sayin ortib bormoqda. Bir xil turdagi ishni bajaradigan dasturlarni deyarli barcha dasturlash tillarida yozish mumkin. C++, Java va Python tillari universal tillar hisoblanadi, C va Assembler tillari mashina tiliga ancha yaqin tillar bo‘lib, quyi yoki o'rta darajali tillardir. Algoritmik til inson tillariga qanchalik yaqin bo‘lsa, u tilga yuqori darajali til deyiladi.

Dasturlashni o’rgatish qaysi dasturlash tilini tanlashdan qat’iy nazar shu til bo’yicha dastlabki fundamental bilimlarni o’rgatishdan boshlanadi. Bular asosan quyidagi mavzulardan tashkil topadi.

  1. Kiritish chiqarish operatorlari
  2. Ma’lumotlarning toifalari
  3. Shart va tanlash operatori
  4. Sikl operatorlari
  5. Bir o’lchamli va ko’p o’lchamli massivlar
  6. Funksiya tushunchasi. Rekursiv funksiyalar
  7. Fayllar bilan ishlash
  8. Ma’lumotlarning murakkab toifalari. Struktura va sinflar

Bu mavzularni o’zlashtirishda talabadan mavzu bo’yicha nazariy ma’lumotlarni o’rganib shu mavzuga doir masalalarni yechish ya’ni ularning tanlangan dasturlash tilidagi kodini yozish talab etiladi. Dastur kodi to’g’ri ekanligini bir nechta testlarni berib ko’rish yordamida aniqlash mumkin. Bunda dasturni to’g’riligini aniqlash testlarni kirituvchi odamga bog’liq bo’ladi. Ya’ni testlovchi odamdan dasturlash bo’yicha bilimlarni bilishi, dasturchining kodini tushunib uning xatosini topishi va bu xatoni yuzaga chiqaruvchi testlarni topa olishi talab etiladi.

Online tekshiruv tizimlari — dastur kodini testlovchi online tizimlar bo’lib, bu tizimlar yordamida dasturning berilgan testlarni to’g’ri chiqarishidan tashqari dasturning ishlash vaqti, operativ xotiradan egallagan joyi haqida ham ma’lumotlarni olish mumkin. Bunday tizimlarga misol qilib Codeforces, TopCoder, Timus, Acmp, Hackerrank, Hackerearth va boshqalarni misol qilib ko’rsatishimiz mumkin. Bunday tizimlarni yaratish va ularni rivojlantirish ustida O’zbekistonda ham bir qancha ishlar amalga oshirilmoqda. Bu ishlarning yaqqol misoli sifatida algo.ubtuit.uz va acm.tuit.uz online tekshiruv tizimlarini ko’rsatish mumkin. Bu tizimlarning barchasi masalalar yechishga va online musobaqalar uyushtirishga mo’ljallangan.

Talabalarga dasturlashni o’rgatishda bunday tekshiruv tizimlaridan foydalanish katta samara beradi. Bunda talabaning mustaqil o’rganish koeffitsiyetni oshadi va o’qituvchining talabani nazorat qilib borish imkoniyatini ortadi. Online tekshiruv tizimlarining yana bir qulay tomoni bu online musobaqalar uyushtirish mumkinligidir. Online musobaqalarda 5 tadan 13 tagacha masala va ularni yechish uchun 5 soatgacha vaqt beriladi. Bunday musobaqalarda masalalarni yechishda talabadan nafaqat bilim balki tezkorlik ham talab qilinadi. Musobaqalarda qatnashchilar reytingi ham ko’rsatib boriladi. Qatnashchilar reytingi ishlangan masalalar soni, ishlagan vaqti va muvaffaqiyatsiz urinishlar soniga qarab tuziladi.

1-rasm. algo.ubtuit.uz saytidagi online musobaqa reytingi

Bundan tashqari online tekshiruv tizimlarining yana quyidagicha imkoniyatlarini ham ko’rsatib o’tish lozim.

– Musobaqa paytida ruxsat etilgan qatnashuvchilarning yechimini ko’rish va ularning yechimiga qo’shimcha testlar berish imkoniyati. Bunday imkoniyatdan foydalanish uchun qatnashchining o’zi shu masalani ishlagan bo’lishi kerak va bu imkoniyatdan foydalangandan so’ng unga o’z yechimini qayta yuborishga ruxsat berilmaydi.

– Musobaqa tugagandan so’ng istalgan qatnashchining yechimini ko’rish imkoniyati. Bunday imkoniyat qatnashuvchilarga o’zi ishlay olmagan masalalarni yechish usullarini o’rganishga katta yordam beradi. Qolaversa talaba boshqa qatnashchilarning kodini taxlil qilish mobaynida dasturlash bo’yicha yangi bilimlarga ega bo’ladi.

– Musobaqa tugagandan so’ng masalalarni muhokama qilish imkoniyati. Bunda talaba o’zini qiziqtirgan savollarga forum orqali javob topishi mumkin bo’ladi.

– Reyting bo’limi yordamida o’z reytingini bilib borish imkoniyati. Bunda musobaqa qatnashuvchilari o’zlari egallagan o’rniga qarab reyting ballarini yig’ib borishadi. Umumiy ishlagan masalalari bo’yicha va reyting balli bo’yicha tizim foydalanuvchilarining reytingi tuziladi.

– Tizimda ko’plab dasturlash tillarida yozilgan kodlarni kompilyatsiya qilish imkoniyati. Bunda foydalanuvchiga o’z kompyuteriga barcha tillarning kompilyatorlarini o’rnatmasdan tizim kompilyatoridan foydalanish imkoniyati yaratiladi.

Dasturlashni o’rgatishda online tekshiruv tizimlaridan foydalanish yuqori samara beradi. Biror mavzu o’rgatilgandan so’ng shu mavzu asosida tayyorlangan musobaqada qatnashish talabaga o’tilgan mavzuni o’zlashtirishida katta yordam beradi.

Online tekshiruv tizimlarida faqatgina algoritmik musobaqalardan tashqari web sahifalar yaratish bo’yicha ham musobaqalar o’tkaziladi. Bunda qatnashuvchiga masala sifatida biror sahifaning rasm ko’rinishi beriladi va qatnashuvchilardan bu sahifani HTML, CSS va JavaScript lardan foydalanib yaratish talab etiladi. Bunday tizimlarga DesignContest (www.designcontest.com), CodeProject (www.codeproject.com) va Programmr (www.programmr.com) kabi tizimlarni misol qilishimiz mumkin. Web sahifalar yaratish bo’yicha musobaqalar orqali talabalar web sahifalar yaratish bo’yicha bilim va ko’nikmalarga ega bo’lishadi.

Xulosa qilib aytganda online tekshiruv tizimlaridan foydalanish talabalarning mustaqil o’rganishiga yordam beradi. Online musobaqalarda qatnashish esa talabaning dasturlash bo’yicha bilimlarini mustahkamlash va o’rgangan bilimlarni qo’llay olish qobiliyatini oshiradi.

Adabiyotlar:

  1. Теория и практика дистанционного обучения: учеб. пособие для студ. высш. пед. учебн. заведений / Е. С. Полат, М. Ю. Бухаркина, М. В. Моисеева; Под ред. Е. С. Полат // М.: Издательский центр «Академия», 2004. — 416 с.
  2. Лернер И. Я. Дидактические основы методов обучения. — М.: Педагогика, 1981. — 186 с.
  3. http://algo.ubtuit.uz/pictures/Finalbirinchikurs2017/final.html
  4. http://lifehacker.com/the-best-resources-to-learn-to-code-1517844722
Можно быстро и просто опубликовать свою научную статью в журнале «Молодой Ученый». Сразу предоставляем препринт и справку о публикации.
Опубликовать статью
Ключевые слова
dasturlash
dastur kodi
dastur kodini testlash
online tekshiruv tizimi
online musobaqa
foydalanuvchilar reytingi
web sahifalar yaratish bo’yicha musobaqa

Молодой учёный