Microsoft’ning bepul videodarslari bilan Python dasturlash tilini o‘rganing
1836 – yilda ingliz olimi Charlz Bebbij hozirgi kompyuterlarning bevosita ajdodi bo‘lmish analitik mashina ishlab chiqishga kirishdi va bu masalani nazariy hal qildi. Bu mashinaning asosiy xususiyati uning dastur asosida ishlashi va hisob-kitob natijalarini «eslab» qolishida edi.
Python dasturlash tili yaratilish tarixi
Dizayner sifatida mijoz tomonidan berilgan vazifalarni to’liq tushunish va muammolarga yechim berish
Interfeyslarni loyihalashtirish
Turli qiyinlikdagi interfeyslarni loyihalash. Mavjud dizaynlarni zamon talabiga mos ravishda yangilash
Figma-da ishlash
UX/UI dizaynerlari uchun ommabop dasturlardan biri xisoblangan Figma dasturida to’liq ishlash
Frilanser bo’lib ishlash ko’nikmalari
Upwork frilans platformasida muvaffaqiyatli karyera boshlash. Frilanserlik etikasi
UX tadqiqotlarni o‘tkazish
Turli loyihalar ustida UX tadqiqotlar o’tkazish, loyihani tahlil qilish. Foydalanuvchini tushunish.
Mijozga loyihani taqdim qilish
Loyiha so’ngida mijozga ishni to’g’ri taqdim qilish. Ishni muvaffaqiyatli tugatish. To’g’ri portfolio shakllantirish.
So’nggi bir necha yil ichida deyarli barcha biznes oflayn rejimidan onlayn rejimga o’tdi, shuning uchun UX/UI dizaynerlar talab yuqori bo’lgan kasb egalari xisoblanadi.
14 500 000 UZS
www.hh saytida joylashtirilgan ma’lumotlar asosida. O‘zbekistonda UX/UI mutaxasisining o‘rtacha oylik maoshi
Ushbu kurs UX/UI kasbini 0 dan o’rganishga yordam beradi
Ta’lim jarayoni
01
Darslarni qulay vaqtda ko’ring
Sohani kurs sifatiga ta’sir qilmagan xolda o’zingizga qulay joyda va vaqtda ko’rishingiz mumkin
02
Bilimlarni amalda mustahkamlang
Kurs amaliyotga qaratilgan. Kursni muvaffaqiyatli bitirgan talaba 5-6 ta portfolioga ega bo’ladi
03
Yakuniy loyihani ishlab chiqing
Kurs so’ngida har bir talaba yakuniy diplom ishi loyihasi topshirishi talab qilinadi
04
Mutaxassislik bo’yicha ish toping
Talaba kursni muvaffaqiyatli tamomlagach, o’rgangan sohasi bo’yicha ish topishi mumkin
Kursimiz bitiruvchilari rezyumesi
Lavozimi
UX/UI dizayner
Oylik ish maosh
5 500 000 so’mdan boshlab
* Saytlarining ma’lumotlariga ko’ra
Profesional ko’nikmalar
Loyihani tushunish va uni o’rganish
Figma dasturida mukammal ishlash
Turli qiyinlikdagi interfeyslarni loyihalash
UX tadqiqotlar o’tkazish va loyihalarda tadbiq qilish
Frilanser sifatida ishlash ko’nikmalari
Mijozga loyihani taqdim qilish
Mutaxassislik bo’yicha ish topish
Mentorlar
Farrux N.
Design director
Aif Design agency
Muhammad J.
Lead UX/UI designer
Aif Design agency
Murod T.
UI/UX Deisgner
Aziza I.
UI/UX Deisgner
Aif Design agency
Tanlovda
yordam beramiz
Biror savolingiz bo’lsa yoki nimani tanlashni
bilmasangiz, raqamingizni qoldiring.
O’zimiz aloqaga chiqamiz
Ma’lumotlaringizni qoldiring mutaxasislarimiz
siz bilan tez orada bog’lanishadi
Kurs dasturi
Video darslar soni
UX/UI dizayn kasbini bosqichma-bosqich o’rganib borishingiz uchun, kurs dasturini ishlab chiqdik
Nazariya
Har qanday soha uchun nazariy ma’lumotlar muhim hisoblanadi. Shuningdek UX/UI dizayner kursida ham
Amaliyot
Kursning asosiy qismi amaliyotga qaratilgan. Kursni muvaffaqiyatli bitirgan talaba 5-6 ta portfolioga ega bo’ladi
Microsoft’ning bepul videodarslari bilan Python dasturlash tilini o‘rganing!
Qiziquvchan yoshlar ko‘pligi bois, ular uchun dasturchi bo‘lishning 6 yo‘li, shuningdek, dasturlashni o‘rganuvchilar uchun onlayn resurslar to‘plami haqida ma’lumotlar berganmiz. Endi esa sizlarni Microsoft yaqinda e’lon qilgan videodarslar to‘plami bilan tanishtirmoqdamiz.
IEEE Spectrum ma’lumotlariga ko‘ra, ayni damda Python – eng ommabop dasturlash tilidir; undan keyin esa Java, C, C++ hamda R kabilar keladi. Shuni hisobga olib, Microsoft aynan Python tilini o‘rganishni istaganlar uchun kichik videokurs tayyorlagan.
Mazkur kurs 44 ta qisqa videodarslarni o‘z ichiga oladi; ularning davomiyligi 2 daqiqadan 12 daqiqagacha. Videokurs «allaqachon boshqa, masalaan – JavaScript yoki MakeCode kabi dasturlash tillarida ozroq tajribaga ega bo‘lgan» boshlovchi koderlarga mo‘ljallangan va tabiiyki, ingliz tilida tayyorlangan.
Mazkur kursni o‘zlashtirganlar Python asoslari haqida yetarlicha tasavvurga ega bo‘lib, qo‘shimcha kitoblar, qo‘llanmalar va boshqa ta’limiy materiallar yordamida ushbu dasturlash tiliga qiyinchiliksiz kirishib keta olishlari ko‘zda tutilgan.
Python dasturlash tilida sikllar bilan ishlashga misol
Salom! Hackerank platformasi haqida eshitgandirsiz balki? yoki unda o’zingiz ham birorta misol/masala(lar)ni ishlab ham chiqgandirsiz. Bazi-bazida problem-solving skillarni charxlab turish foydadan holi emas. Quyida men Hackerrank dan olinganDesigner Door Mat malasiga yechimni keltirib o’tdim.
Door mat — ya’ni ostona gilamchasi
Masala: Janob vincent ostonoga qo’yiladigan “gilam” ishlab chiqarish korxonasida ishlaydi. Bir kuni, quyidagi parametrli ostona gilamini loyihasini ishlab chiqdi:
- Gilam o’lchami N * M. (N toq natural son, va M = 3 * N)
- Gilamning qoq markazida “WELCOME” degan yozuv bo’lishi kerak
- Ushbu dizaynda — ‘|’, ‘.’ va ‘-’ simvollaridan foydalaniladi.
Masalan, 7 * 21 o’lchamdagi gilamning ko’rishini quyidagicha bo’lishi kerak.
---------.|.---------
------.|..|..|.------
---.|..|..|..|..|.---
-------WELCOME-------
---.|..|..|..|..|.---
------.|..|..|.------
---------.|.---------
Dastlab, ikkita natural sonni o’qib olib ularni ikkita o’zgaruvchiga o’zlashtirish kerak bo’ladi. “WELCOME” yozuvini gilamning markazida chiqarish uchun mazkaziy qatorni aniqlab olamiz.
n = int(input())
m = int(input())
rows_mid_point = int(n / 2)
E’tibor bergan bo’lsangiz kerak, 0-qatorda bir dona ‘.|.’ simvoli bor, keyingi qatorda esa 3 ta ‘.|.’ simvoli bor undan keyingi qatorda esa 5 ta. Axaa! Ketma-ketlikning har bir qatorida ‘.|.’ simvollar soni 2 tadan oshib bormoqda. Bu farqni iteration_number deb belgilaymiz va dastlabki qiymat sifatida 1 beramiz va har bir keyingi qatorlarda uni ikkitaga oshirib borishimiz kerak bo’ladi.
iteration_number = 1
Endi, ‘.|.’ simvollar qaysi nuqtadan boshlanib qaysi nuqtada tugashiga qarasak — no’linchi qatorda ‘|’ simvoli shu qatorning qoq markazida joylashgan. Ya’ni, 0-qatorning uzunligi 21 ga teng (0 dan 20 gacha bo’lgan ketma-ketlikda simvollar joylashgan) shu qatorning markazi 10-o’rinda bo’lib unda ‘|’ simvoli joylashgan undan bitta oldin 9-o’rinda ‘.’ simvoli bor. Bundan kelib chiqadiki, ‘.|.’ simvolning boshlanishini quyidagicha hisoblash mumkin:
simvolning_boshlanishi = (qator_uzunligi / 2) -1ga teng ekan.
Navbatdagi qatorga e’tibor qilsak, ‘.|.’ simvollari soni 3ta teng va birinchi simvol ‘.’ 6-o’rinda turibdi. 0-qatordagi dastlabki simvol esa 9-o’rinda edi, taxmin qilishimiz mumkinki orada 3tadan farq bilan ‘.|.’ simvollar ketma-ketligi ko’rsatilyapti. 2-qatorda dastlabki ‘.’ simvoli 3-o’rinda turibdi. Demak
simvollar_boshlanishi -> har keyingi qatorda 3ta qadamdan kamayar ekan
x_difference nomli o’zgaruvchi yaratib unga dastlabki qiymatdan deb 0 beramiz, va har bir qatordan keyin(siklda) 3ta ga oshirib boramiz.
x_difference = 0
Shuningdek bizga qatorlarning boshini va o’rtasini ko’rsatuvchi o’zgaruvchilar kerak bo’ladi. Qatorlarning boshlanish o’rnini start_point deb olamiz va unga 0 qiymatni beramiz, qatorning markazi sifatida esa mid_column degan o’zgaruvchi olib unda qator uzunligi qiymatini beramiz.
start_point = 0
mid_column = int(m / 2) + 1
O’zgaruvchilarni kitib oldik endi masalani ishlashni boshlasak ham bo’lar. Har bir qatorda ‘.|.’ simvollarni chiqaruvchi funksiya yozaylik, Bunda birinchi ‘.’ simvolining o’rnini(start_point), qator uzunligini(m) va biror qatorda nechta ‘.|.’ simvoli chiqarilishi kerakligini(‘.|.’ simvollar soni — masalan 0-qatorda 1ta) argument sifatida beramiz.
def print_sybmols(start_point, m, num):
for j in range(start_point-1):
print('-', end='')
print(".|." * num, end='')
for j in range(start_point - 1):
print('-', end='')
print()
Funksiyadagi birinchi siklda 0-o’rindan ‘.’ simvolining o’rnigacha(8) bo’lgan qismda ‘-’ simvollarini chiqariladi.
Misol uchun 0-qatorni ko’rib chiqsak: Funksiyaga start_point = 9(birinchi ‘.’ simvolining o’rni), m = 21(qator uzunligi) va num = 1 qiymatlar berilsin. Funksiyadagi birinchi sikl 0 dan boshlab start_point-1 gacha(9–1 = 8 gacha) ‘-’ simvoli console’da chop etadi. Keyingi qatordagi print() da “.|.” n marta qora ekran da chiqariladi(0-qator uchun bir marta) va yana noldan 9gacha “-” simvoli chiqariladi.
start_point ga bitta oldingi qadamdagi qiymatdan 3 ni ayirish kerak. Ya’ni 0-qatorda start_point = 9, demak 1-qatorda start_point = 6 bo’ladi. Bu ikkinchi iteratsiya(sikl aylanishi) ekanligini hisobga olsak num = num + 2 bo’ladi: num endi 3ga teng.
WELCOME so’zidan keyingi qatordagi simvollarni chiqarishni ham shu funksiyadan foydalanamiz, buning uchun funksiyaga x_difference ni va num ni kamayish tartibida berish kifoya
Qatorlar soniga teng bo’lgan sikl ochamiz va unda 3 xil holatni tekshirish kerak.
Markaziy qatordan kichik qatorlarda simvollarni chop etish
Markaziy qatorda “WELCOME” so’zini chop etish
Markaziy qatordan katta bo’lgan qatorlarda simvollarni chop etish
Bularni esa if, elif va else kontruksiyada quyidagicha yozib olamiz. mid_column o’zgaruvchisiga qatorning markaziy o’rnini qiymat qilib beramiz(M=21 bo’lganda mid_column = 10 bo’ladi). Yuqorida yozgan print_symbols() funksiyamizga har bir siklda start_point, m va iteration_number larni argument qilib beramiz u esa har bir qatorni chizib chiqadi. Markaziy qatorda shunchaki o’rtaga WELCOME so’zini olib uning ikki chekkasida bir xil uzunlikda “-” simvollar bilan to’ldiramiz.
for i in range(n):
if i start_point = mid_column - (1 + x_difference)
print_sybmols(start_point, m, iteration_number)
x_difference += 3
iteration_number += 2
elif i == rows_mid_point:
w1 = mid_column - 4
s = '-' * w1
print(s, end='')
print("WELCOME", end='')
print(s)
else:
x_difference -= 3
iteration_number -= 2
start_point = mid_column - (1 + x_difference)
print_sybmols(start_point, m, iteration_number)
Mazkaziy qatordan pastki qatorlarda esa print_symbols() funksiyasiga iteration_number va x_difference qiymatlarini kamaytirib beramiz. Natijada, “.|.” simvollari qatorlardagi soni kamayish tartibida chop etiladi. Ya’ni quyidagicha
Quyida esa masalaning to’liq yechimi bilan tanishishingiz mumkin.
# Designer Door Mat problem
def print_sybmols(start_point, m, num):
for j in range(start_point-1):
print('-', end='')
print(".|." * num, end='')
for j in range(start_point - 1):
print('-', end='')
print()arr = list(map(int, input().split()))
n = arr[0]
m = arr[1]
rows_mid_point = int(n / 2)
x_difference = 0
iteration_number = 1
start_point = 0
mid_column = int(m / 2) + 1
for i in range(n):
if i start_point = mid_column - (1 + x_difference)
print_sybmols(start_point, m, iteration_number)
x_difference += 3
iteration_number += 2
elif i == rows_mid_point:
w1 = mid_column - 4
s = '-' * w1
print(s, end='')
print("WELCOME", end='')
print(s)
else:
x_difference -= 3
iteration_number -= 2
start_point = mid_column - (1 + x_difference)
print_sybmols(start_point, m, iteration_number)
P.S.: Masalani ishlashga 20 daqiqa ketgandi, ushbu maqolani yozishga esa 2 soat. Tushunarsiz bo’lgan joylarini izohlarda yozsangiz albatta baholi qudrat qo’ldan kelgancha javob yozaman 🙂
Happy coding! Stay safe!
Informatika 12 – dars. Mavzu: Dastur va dasturlash tillari Maqsad
3) rivojlantiruvchi: o`quvchilarning ilmiy-texnik dunyoqarashlarini rivojlantirish.
DTS: Dasturlash tililari haqida ma;lumotga ega bo`lish.
I. Tashkiliy davr
- Qanday algoritmlar chiziqli algoritm deb ataladi?
- Qanday algoritmlar tarmoqlanuvchi algoritm deb ataladi?
- Qanday algoritmlar takrorlanuvchi algoritm deb ataladi?
Ma’lumki, kompyuter texnikasidan samarali foydalanish ikki qismning – texnik va dasturiy ta’minotning uzviyligini talab etadi. Bu uzviylik kompyuter texnik ta’minotining jadal sur’atlar bilan takomillashib borishiga mos dasturiy ta’minotni ham keskin sur’atlar bilan rivojlanishiga sabab bo‘ladi, va aksincha. Buning sababi ma’lum, mos dasturiy ta’minotsiz har qanday kompyuter «qimmatbaho o‘yinchoq» bo‘lib qolaveradi.
Avvalgi darslarda masalalarni kompyuterda hal qilishda kerak bo‘ladigan obyekt, model va algoritm tushunchalari haqida ma’lumot oldingiz. Ma’lumki, kompyuterda biror masalani hal qilish uchun avval uning modeli va algoritmi tuziladi, so‘ng mazkur algoritm ma’lum bir qonun-qoidalar asosida kompyuter tushunadigan tilda ko‘rsatma va buyruqlar shaklida yoziladi. Hosil bo‘lgan kompyuter tushunadigan tildagi matn dastur matni, algoritm esa dastur deb ataladi.
Kompyuter uchun dastur tuzish jarayoni dasturlash va dastur tuzadigan kishi dasturchi deyiladi. Kompyuter tushunadigan til esa dasturlash tili deb ataladi.
- Quyi darajadagi dasturlash tillari ;
- O`rta darajadagi dasturlash tillari;
- Yuqori darajadagi dasturlash tillari.
Dasturlash tillari tarixidan. Dasturlash tillari, asosan, ikkinchi jahon urushidan keyin yaratila boshlandi. Ammo uning boshlanishi tarixi ancha olis yillarga borib taqaladi.
Arxeologik qazilmalarda topilgan sopol taxtachada bundan 3800 yil oldin (eramizdan avvalgi 1800-yillar) Bobilda foiz bilan bog‘liq murakkab amallar algoritmi keltirilgan. Unda aniq masala ishlangan bo‘lib, agar bug‘doy hosili yiliga 20% dan oshib borsa, uning miqdori ikki marta o‘sishi uchun necha yil va oy kerak bo‘lishi algoritmi tuzilgan.
XIX asrda fransuz Jozef Mari Jakkard 1804 – yilda yupqa mato ishlab chiqish jarayonida to‘quv dastgohlari uchun perfokartani eslatuvchi tasma ishlatgan va shu bilan perfokartaga asos solgan edi.
1836 – yilda ingliz olimi Charlz Bebbij hozirgi kompyuterlarning bevosita ajdodi bo‘lmish analitik mashina ishlab chiqishga kirishdi va bu masalani nazariy hal qildi. Bu mashinaning asosiy xususiyati uning dastur asosida ishlashi va hisob-kitob natijalarini «eslab» qolishida edi.
1843 yilda ingliz matematigi Ogasta Ada Bayron (Lavleys) – shoir lord Bayronning qizi analitik mashina buyruqlar asosida ishlashi lozimligini ta’kidladi. U berilgan shartlar bajarilmagunga qadar qadamlar ketma-ketligini ta’minlovchi buyruqlarni yozdi. Ana shu holat bilan u dasturlash tiliga asos soldi. Mazkur va boshqa kashfiyotlar kompyuter yaratilgach, ularni ishlatish uchun zarur bo‘lgan til yaratilishini talab etdi.
Dastur tuzishni osonlashtirish maqsadida inson tiliga yaqin bo‘lgan buyruqlar tizimini qo‘llash masalasi qo‘yildi va hal etildi. Bu kabi dasturlash tillari o‘rta darajadagi dasturlash tillari (ba’zan assemblerlar) deb yuritila boshlandi. Bunday tillarga AVTOKOD-BEMSH, AVTOKOD-MADLEN va boshqalar kiradi. Ular BESM-6, Minsk-22, Minsk-32, IBM-360 elektron hisoblash mashinalarida ishlatildi. Masalan, ST 5, BSUM ifoda 5 raqamini BSUM deb nomlangan yacheykaga joylashtirilsin (ST-store—joylashtirish) degan buyruqni beradi.
Yuqori darajali dasturlash tillaridagi ko‘rsatmalar inson tiliga yaqin bo‘lgan so‘zlar majmuidan iborat. Ular yordamida amallarni bajarish quyi darajadagi tillardan ko‘ra yengil bo‘lib, dasturchidan deyarli adreslar va qurilmalar bilan bevosita bog‘liq axborotlarni bilish talab etilmaydi. Bu tilda tuzilgan dasturlarni kompyuterlar bajara olishi uchun translyatorlar deb nomlanuvchi maxsus dasturlar raqamli ko‘rinishga o‘tkazib beradi.
Keyingi yillarda juda ko‘p yuqori darajadagi dasturlash tillari ishlab chiqilgan bo‘lib, ular qatoriga Paskal, Ada, KARAT, C++, Delphi, Visual Basic Application kabi tillarni qo‘shish mumkin. Hozirgi kunda ishlab chiqilayotgan dasturlash tillari biror yo‘nalishdagi masalalarni hal qilishga mo‘ljallangan bo’lib, ularni obyektga yo’naltirilgan dasturlash tillari deb atashadi.
Quyidagi jadvalda dasturlash tili rivojlanishi tarixidan qisqacha ma’lumot berilgan.
Ishlab chiqilgan yili
Bugungacha ishlab chiqarilgan dasturlash tillaridan keng tarqalgani Paskal (Pascal) dasturlash tilidir. Paskal dasturlash tili 1969-yil Nikalas Virt tomonidan ishlab chiqildi. Paskal tili dasturlashni o‘rgatish maqsadida ishlab chiqilgan bo‘lsa-da yuqori malakali dasturchilar orasida keng tarqaldi. Albatta samarali dasturlash tillari o‘zgarishsiz qolmaydi. Shu sababli ham turli rusumdagi kompyuterlar uchun Paskal tilining ularga moslashtirilgan naqllari ishlab chiqilgan bo‘lib, ular Paskal tilining boshlang‘ich naqlidan farq qilishi mumkin.
- Dastur deb nimaga aytiladi ?
- Dasturlash tili deganda nimani tushunasiz?
- Quyi va yuqori darajali tillar qanday xususiyatlari bilan o‘zaro farqlanadi?
- Dasturlash tillari elektron hisoblash mashinalarining turlariga bog‘liq bo‘ladimi? Javobingizni asoslang.
- Yuqori darajadagi dasturlash tillaridan bir nechtasini ishlab chiqilgan yili bilan aytib bering.
II bob,12-mazuni o`rganish.29-31-betlar
Программирование на Python —
Научим писать код, разрабатывать программы, создавать игры и сайты, составлять алгоритмы на одном из самых популярных языков программирования.
легко изучать и применять на практике
Тренер учитывает цель, интересы, уровень знаний ребенка, после чего под него составляется индивидуальная программа по Python для школьников и подростков. Она состоит из теории, практикумов с задачами, тестов, консольных и графических работ. Дети одновременно будут учиться и наслаждаться своими проектами.
6 причин пройти обучение по направлению Python
Индивидуальный подход
Родители могут быть спокойны, ведь ребенок будет действительно увлечен и проведет время с пользой. В процессе обучения ученики выполняют большое количество практических заданий по каждой теме программы и создают собственные, сложные и красочные проекты.
Курс python для детей состоит из 4 модулей обучения. В направлении «Блочный Python» детей подготавливают к освоению текстового языка. После прохождения базы по Python, ребенок может перейти к изучению более сложных дополнений языка, таких как PyGame и Flask.
При отборе тренеров мы оцениваем не только экспертизу, но и их коммуникативные навыки. Наши учителя могут легко найти общий язык с ребенком и донести до него нужную информацию. Мы убедились, что дружеская атмосфера на занятиях способствует более эффективному обучению.
Современный подход к обучению через развлечение
Адаптивный формат обучения
Дружеские отношения в процессе обучения
Наши тренеры контролируют процесс обучения ребенка и следят за его прогрессом. После каждого занятия в своем личном кабинете вы будете получать от них обратную связь.
Контроль за успеваемостью
Вы сможете планировать время обучения ребенка в личном кабинете, переносить занятия по уважительным причинам.
Удобное расписание
Игорь Касперович
Заведующий направлениями Python, Python: Pygame
Образование: Белорусский национальный технический университет по специальности «Мехатроника, робототехника и автоматизация»
О направлении Python
Только 1 из 50 кандидатов становится тренером в Айтигенио
77 тренеров
О наших тренерах
Интересные факты о направлении
Наше направление — мягкий переход между блочным программированием (Scratch, Minecraft, AppInventor и т.д) и текстовым «взрослым» программированием. Поэтому обучаться ему могут как детки, так и взрослые ребята без опыта программирования. Но, несмотря на легкость направления относительно текстовых языков программирования, дети создают на нем крутые динамичные проекты, которыми делятся с друзьями.
Тренер станет для вашего ребенка не только наставником, но и другом
Кроме профессиональных преподавателей, наших учеников также тренируют действующие специалисты в областях веб-технологий, аналитики, математики, машинного обучения и нейронных сетей — Python всё шире распространяется в различных сферах деятельности.
Занятия проводят лучшие тренеры
Интересные факты о направлении
Python — один из самых востребованных языков программирования. Его используют «большие парни» — Google, Yahoo, NASA, Industrial Light & Magic и даже Microsoft. С помощью этого ЯП ребенок сможет разрабатывать сайты, игры и приложения.
Языки обучения: ru eng es
Построит успешную карьеру в IT
После прохождения обучения ученик сможет освоить профессию web-разработчик и другие смежные IT-специальности. Ребенок разработает собственный проект и подтвердит свои знания по Python.
Прокачает нужные в жизни навыки
Изучая программирование на языке Питон, ребенок улучшит аналитическое и алгоритмическое мышление, логику и креативность, научится самостоятельно принимать решения и действовать.
Изучит востребованный язык программирования
Python находится в 5-ке востребованных языков программирования. Его используют такие гиганты, как Яндекс и Google. С его помощью ребенок сможет разрабатывать сайты, игры, приложения и системные утилиты.
Как обучение поможет ребенку
Программа обучения
обучение на английском и русском языке
Python
На освоение направления на базовом уровне без дополнительных тем потребуется от 60 до 80 часов. На углубленном уровне с дополнительными темами – от 140 до 180 часов.
По окончанию онлайн курса python для детей учащиеся научатся основам языка программирования и его освоят популярные библиотеки.
- Понятие переменной, типы данных “целое число” и “строка”, функции print (с аргументами sep, end) и input, 5 способов форматирования строк.
- Арифметические операции: сложение, вычитание, умножение и деление.
- Целочисленное деление, остаток от деления, округление.
Наряду с теорией курс “Питон для детей” позволяет выполнить несколько практикумов, состоящих из задач по пройденным темам, а в конце модуля пройдёт зависящий от уровня сложности итоговый тест по всей теме.
- Способы импортирование модулей, использование готовых функций из модулей.
- Базовые команды для рисования с помощью модуля turtle.
- Тип данных bool
- Операторы сравнения
- Конструкция If-elif-else
- Логические операторы
Наряду с теорией по Python для подростков ученик выполнит мини-проект “Галактический квест”, несколько практикумов, состоящих из задач по пройденной теме, а в конце модуля пройдёт зависящий от уровня сложности итоговый тест по всей теме.
- Цикл while
- Бесконечный цикл
- Операторы управления циклом break и continue.
Наряду с теорией ученик выполнит несколько практикумов, состоящих из задач по пройденной теме, а в конце модуля пройдёт зависящий от уровня сложности итоговый тест по всей теме.
- Действия со строками, индексы и срезы.
- Поиск, подсчёт и замена символов.
- Буквы, регистр и цифры в строках.
Наряду с теорией курса “Пайтон для детей” ученик выполнит практикум, состоящих из задач по пройденной теме.
- Перебор строк
- Перебор диапазона чисел range
- Операторы управления
Наряду с теорией ученик выполнит несколько практикумов и заданий по модулю turtle, связанных с циклом for, состоящих из задач по пройденной теме.
- Создание списка и элементы списка.
- Минимум, максимум и сортировка.
- Генераторы списков (списковое представление).
Наряду с теорией ученик выполнит несколько практикумов, состоящих из задач по пройденной теме.
- Модуль pickle. Запись/чтение данных в текстовый файл.
- Модуль datetime и time. Работа с датой и временем.
- Работа с терминалом, установка нестандартных модулей через менеджер пакетов pip.
- Модуль pillow. Обработка изображений, рисование фигур на изображении, добавление текста и водяных знаков.
Кроме работы с файлами, ученик столкнётся с модулем, позволяющим работать с датой и временем, научится устанавливать сторонние нестандартные модули через менеджер пакетов и установит модуль, позволяющий обрабатывать изображения с помощью Python.
- Создание функции, аргументы, параметры, возвращение результата.
- Позиционные и именованные аргументы, параметры по умолчанию.
- Использование оператора *.
- Область видимости.
- Lambda-функции.
- Декораторы.
По желанию и в зависимости от способностей ученика будут изучены оператор * и лямбда-функции, упрощающие написание однострочных функций.
Наряду с теорией ученик выполнит проекты “Генератор предложений”, “Дракон из пещеры”, “Быки и коровы”, а также практикум, состоящих из задач по пройденной теме, а в конце модуля пройдёт итоговый тест по всем предыдущим темам.
- Виджеты Label, Button, Frame, LabelFrame, Entry, Listbox, Toplevel, Scale.
- Конфигурация виджетов (изменение параметров виджета).
Весь модуль состоит из практических заданий. Ученик выполнит мини-проекты “Проверка паролей”, “Список дел”, “Будильник” и “Генератор цветов”.
- Создание словарей.
- Изменение, удаление и перебор элементов.
- Генераторы словарей, дополнительные методы словарей.
- Модуль json.
- Универсальный формат данных, который выглядит как словарь.
После этого ученик выполнит проект “Камень-ножницы-бумага”, в котором использование словаря сыграет ключевую роль.
По желанию и в зависимости от способностей ученика будут изучены расширенные возможности словарей: функция dict, генераторы словарей, методы get и update, оператор del, использование оператора **, а также ключевые слова args и kwargs.
Кроме того, будет изучен дополнительный способ хранения данных в формате json, который выглядит как словарь, и модуль owm для работы с погодой, с помощью которого можно узнать информацию о погоде в любой точке планеты.
- Отложенный запуск функции. Использование лямбда-выражений.
- Обработка исключений: try, except, finally, else
- Месседжбокс и использование обработки исключений.
- Привязка клавиш с помощью метода bind.
- Методы forget и destroy.
- Модуль pyinstaller. Конвертер файла .py в исполняемый файл .exe.
Весь модуль состоит из практических заданий. Ученик выполнит мини-проекты “Палочки”, “Радуга”, “Решатель примеров”, “Викторина”, “Калькулятор”, “Логин и пароль”, “Заметки”, “Решатель квадратных уравнений” и “Шульте”. В качестве бонуса изучается Pyinstaller – модуль для преобразования программ в исполняемые файлы, которые можно запускать на любом другом компьютере с операционной системой Windows.
- Создание множеств, возможности множеств, изменение множеств
- Пересечение множеств, объединение множеств, разность множеств
По желанию и в зависимости от способностей ученика будут изучены расширенные возможности множеств: генераторы множеств, пересечения множеств, объединение множеств, разность множеств, проверка множеств на пересечение и непересечение.
Кроме того, ученик научится решать задачи с использованием инструментов и возможностей, которые предоставляют множества.
- Создание холста и рисование геометрических фигур
- Изменение и удаление объектов, вызов функций, создание надписей
- Обработка пересечений и отмена отложенного запуска
- Рисование линий и изменение координат через coords
Весь модуль состоит из практических заданий. Ученик выполнит проекты “Paint”, “Время реакции”, “Часы”, “Светофор”, “Пингвин”, “Пинг-понг”.
- Модульность в Python. Создание нескольких модулей для одного проекта.
- Виджеты Radiobutton, Checkbutton, Spinbox.
Весь модуль состоит из практических заданий. Ученик выполнит проекты “Шифр Цезаря”, “Шифр Атбаш”, “Аффинный шифр Цезаря”, “Генератор паролей”, “Зодиаки”, игра “Лабиринт” и другие.
- Создание вложенных массивов,
- Генератор двумерных массивов
- Поиск диагоналей
- Разворот массива
- Объекты, атрибуты-переменные и конструктор класса.
- Аргументы, параметры и методы класса
- Парадигмы ООП. Наследование
- Парадигмы ООП. Инкапсуляция. Геттеры и сеттеры, декоратор property.
- Парадигмы ООП. Полиморфизм и перегрузка операторов.
Большой теоретический блок включает в себя создание простейших базовых игровых классов (Воина и Мага), понятие объектов класса (создание конкретных персонажей), конструктора класса (для создания персонажей с готовыми характеристиками), а также парадигм ООП:
- наследования, где создаются новые, более сложные игровые классы на основе базовых;
- инкапсуляции, где доступ к некоторым характеристикам ограничивается;
- полиморфизм, где в каждом игровом классе программист придерживается одного и того же наименования переменных и методов; кроме того, в рамках полиморфизма изучается перегрузка операторов (арифметических действий и встроенных методов).
- Библиотеки requests и BeautifulSoup4. Основы веб-парсинга.
- Библиотека telebot или discord. Создание бота для Telegram или Discord и запуск бота на Heroku.
- Основы Git. Версии, создание репозитория на Github, команды init, add, commit, remote, push и другие.
В них рассматриваются как вопросы, не попавшие в основную учебную программу, такие как обмен значений переменных или множественное присваивание; линейный и бинарный поиск; функциональное программирование (функции map, filter и lambda) и другие; так и специфические:
- создание ботов в Telegram и Discord (с последующим запуск бота на сервисе Heroku);
- основы веб-парсинга с библиотеками request и BeautifulSoup4.
Python: Flask
На изучение направления на базовом уровне без дополнительных тем потребуется от 40 до 60 часов.
На углубленном уровне с дополнительными темами – от 80 до 130 часов.
- Создание сервера.
- Базис по HTML.
- Создание шаблонов с HTML.
- Базис по CSS и его использованию.
- Дебагер.
- Передача данных в html.
- Условия, циклы, “функции” и переменные в html.
- Наследование шаблонов.
- GET- и POST-запросы.
- Создание форм.
- Изучение полей форм и валидаторов.
- Фреймворк Bootstrap с Flask.
- Архитектура приложений.
- Переопределение страниц-ошибок.
- Работа с cookies.
- Сессии.
- Создание и использование API и REST API.
- SQLite.
- Установка PostgreSQL.
- Изучение таблиц и связей.
- Внесение изменений в БД.
- Использование ORM SQLAlchemy.
- Миграции.
- Механизм аутентификации и авторизации с Flask-Login.
Блочный Python
На освоение направления потребуется от 70 до 80 часов.
По окончанию курса учащиеся будут обладать систематизированными знаниями основ языка программирования Python, а также будут готовы к изучению текстового Python.
- Понятие переменной.
- Типы данных.
- Методы ввода и вывода информации.
По завершению этого модуля курса “Python для детей” ученик создаст несколько консольных приложений для решения различных математических задач.
- Знакомство с понятием “импортирование модулей”.
- Использование готовых команд из модулей.
- Практика основ рисования простых фигур, с использованием модуля turtle
К концу изучения модуля ученик научится импортировать модули, генерировать случайные числа для разнообразия и динамичности приложений, нарисует несколько изображений с помощью модуля turtle и углубится в математические возможности Питона для создания более продуманных игр и приложений.
- Знакомство с понятием “условие” в программировании, а так же с логическим типом данных “boolean” (истина/ложь).
- Изучение блоков ветвления: if/elif/else, операторы сравнения (“больше”, “меньше”, “равно”), логические операторы (и/или/не) и использование их на практике в разных сочетаниях между друг другом.
Наряду с изучением теории ученик выполнит несколько практических заданий по пройденной теме, проект “Светофор”, а в конце модуля выполнит итоговый тест по всей теме.
- Знакомство с понятием “цикл” в программировании.
- Изучение использования циклов for и while.
- Применение циклов в разных алгоритмах и задачах.
Наряду с изучением теории ученик выполнит несколько практических заданий по пройденной теме, а в конце модуля выполнит 2 итоговых теста по циклам for и while.
- Понятие “список” в программировании.
- Создание списка.
- Работа с элементами списка: добавлять новых элементов, удаление, перемещение.
Наряду с теорией ученик выполнит проект “Алхимия”, где в игровой форме использует все метода работы со списками, практикум, состоящих из задач по пройденной теме, а так же итоговый тест по теме.
К концу модуля ученик будет иметь представление, как можно удобно группировать данные программы и легко использовать их в ходе написания кода.
- Понятие “функция” в программировании.
- Создание функции, аргументы, параметры функции, возвращение результата.
Наряду с теорией ученик выполнит практикум, состоящих из задач по пройденной теме.
- Понятия “класс” и “объект” в программировании.
- Создание классов и объектов, аргументы, параметры функции, возвращение результата.
Наряду с теорией по модулю ученик выполнит практикум, состоящих из задач по пройденной теме.
Python: Pygame
На освоение направления потребуется от 30 до 50 часов.
По окончанию курса учащиеся научатся создавать двумерные игры на языке Python и создадут такие игры как Dino Chrome, Flappy Bird, Doodle Jump и Space Invaders (и ещё несколько – опционально).
- Создание окна, обновление экрана и обработка событий.
- Рендеринг и анимация без классов
- Рендеринг и анимация с классом
В дальнейшем ученик с помощью функций и методов создаст небольшую анимацию движущегося по экрану мяча, но для начала загрузит изображение в программу, научится регулировать координаты объектов, отобразит объект на экране, заставит его случайно двигаться с помощью команд и научит отталкиваться от краёв экрана, а затем столкнётся с ограничением создания подобных программ без классов.
Поэтому в завершающем материале этого модуля ученик повторит анимацию мяча, но сделает это с использованием объектно-ориентированного программирования и затем с лёгкостью увеличит количество мячей с одного до десяти.
- Спрайт. Рендеринг фона и спрайта
- Спрайт. Обновление спрайта
- Группа спрайтов. Случайные появления
- Главный герой. Анимация, управление и звук
- Препятствия, случайный вид и столкновения
- Конец игры. Шрифты и счётчик очков
Ученик познакомится с понятиями “спрайт” и “рендеринг”, использует парадигму “наследование” из ООП, узнает об атрибутах и координатах каждого спрайта, а затем отобразит в будущей игре дорогу, чтобы затем создать движение дороги и сделать её бесконечной.
Также в процессе прохождения модуля ученик создаст спрайт облака, познакомится с понятием “группа спрайтов” и улучшит игровой фон с помощью движущихся облаков: облака будут появляться в случайном месте и двигаться с разной скоростью.
Кроме того ученик создаст и позиционирует на экране главного героя, который будет двигаться в анимации и прыгать по клавише Пробел, а затем создаст группу препятствий, который будут каждый раз при появлении иметь случайный внешний вид. При столкновении с препятствиями игра будет перезагружаться.
Завершится модуль подключением в игру игрового шрифта, отображения счётчика очков и вывода надписи “Game over” в случае проигрыша.
В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.
- Фон, слои отрисовки и движение фона
- Главный герой, анимация и препятствия
- Гравитация, поворот изображения и счётчик очков
- Чекпоинт, конец игры и пересечение с точками
Затем ученик добавит главного героя и его анимацию, меняющуюся с постоянной частотой, а также два препятствия, которые будут появляться на одном уровне друг с другом.
Ученик изучит то, как создаётся гравитация в играх, будет регулировать скорость падения, создаст взлёт по клавише “Пробел”, добавит звуки и научит персонажа наклоняться в сторону полёта. Здесь же добавит счётчик посередине экрана и запрограммирует его на обновление при прохождении препятствия.
Завершится модуль добавлением в игру чекпоинта, добавлением игрового шрифта, надписи “Game over” и небольших улучшений игры.
В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.
- Рисование линий на фоне и генерация платформ.
- Главный герой. Управление персонажем, прыжки и смещение камеры.
- Пересечение с точкой, анимация прыжка и случайный цвет платформ.
- Поведение платформ, пружина, счёт и конец игры.
Дальше ученик создаст различные анимации главного героя, запрограммирует его движения, научится разворачивать изображения по горизонтали, по аналогии с предыдущим проектом добавит гравитацию и добавит движение камеры вслед за движением персонажа.
Затем ученику предстоит дополнительно обработать пересечения с платформами, научиться генерировать платформы разного цвета и добавить анимацию прыжка персонажа.
Завершится модуль изменением поведения каждой из цветных платформ, добавлением пружины и поведения столкновения с ней, добавлением игрового шрифта, надписи “Game over” и небольших улучшений игры.
В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.
- Космос и космический корабль.
- Выстрелы по таймеру и громкость звуков.
- Генератор изображений и анимация взрывов.
- Движение, генерация и атака спрайтов.
- Здоровье и отображение уровня здоровья персонажа.
В процессе прохождения модуля ученик использует “группу спрайтов” и “таймер”, чтобы запрограммировать прерывающиеся выстрелы космического корабля, а также научится регулировать громкость звуков.
В дальнейшем ученик создаст пришельца, который в случае столкновения с выстрелом персонажа будет взрываться анимацией взрыва и соответствующим звуком, а ещё позже научится создавать группу разных пришельцев, которая будет двигаться по определённому алгоритму, а также в случайном порядке стрелять в сторону главного героя.
Завершится модуль изучением понятия “группа из одного спрайта”, добавлением здоровья главного героя и отображением его в углу экрана, добавлением игрового шрифта, надписи “Game over” и небольших улучшений игры.
В конце модуля ученик создаст игру, которую сам в дальнейшем сможет улучшать.
Qiziqarli malumotlar
Microsoft’ning bepul videodarslari bilan Python dasturlash tilini o‘rganing