Thunkable ішіндегі айнымалылар мен тізімдер

  • Бағдарлама ішінде деректерді сақтау үшін айнымалыларды пайдалану әдісін үйрену
  • Тізімдерге деректерді ұйымдастыру әдісін үйрену
  • Бағдарламадағы айнымалылар мен тізімдерді пайдалану

Бұл сабаққа арналған іс-шаралар:

ДЕРЕКТЕРДІ САҚТАУ

Бағдарламаны кодтағанда, әдетте, бағдарламада сақтау, жаңарту және қатынасу қажет кейбір ақпарат немесе деректер болады.

Бағдарламаны іске қосу үшін қажет болуы мүмкін деректердің 3 түрі бар:

Айнымалылар

Бағдарламаны іске қосып жатқанда ақпаратты сақтаңыз.

Мысалы, пайдаланушы аты немесе ойын ұпайы.

Жергілікті сақтау орны

Бағдарламаны іске қосқан сайын алынатын мобильді құрылғыдағы ақпаратты сақтаңыз.

Мысалы, пайдаланушы мекенжайы немесе жоғары ойын ұпайы.

Бұлтты сақтау

Барлық бағдарлама пайдаланушылары ақпаратқа қатынаса алуы үшін ақпаратты web-те (бұлтта) сақтаңыз.

Мысалы, ойын көшбасшылары тақтасы немесе чат хабарлары.

Бұл сабақта біз айнымалы мәндерді пайдалана отырып, қолданба ішінде деректерді сақтауға назар аударамыз.

АЙНЫМАЛЫЛАР

Кодтаудағы ең маңызды ұғымдардың бірі - айнымалы. Айнымалы – өзгеретін деректер бөлігінің атауы. Есте сақтаудың оңай жолы - айнымалы мәннің өзгеруі немесе өзгеруі мүмкін.

Мәнді өзгертетін күн сайын сіз үшін маңызды ақпарат көп. Мұнда кейбір мысалдар берілген:

birthday cake with candles
сіздің жасыңыз
clouds with raindrops
ауа райы
monthly calendar
бүгінгі күн

Айнымалы ақпарат ішіне сақтауға болатын жәшік сияқты.

  1. Іштегі нәрсені есте сақтау үшін жолақты белгілейсіз немесе атайсыз .
  2. Ақпарат қажет болғанда қорапты ашып, ішіне не керек екенін алуға болады. 
  3. Сіз сондай-ақ қораптың ішіндегі нәрсені өзгерте аласыз, бірақ сол атауды сыртында қалдыра аласыз.

 

animation of variable being stored in a box

АЙНЫМАЛЫЛАР

Thunkable ішінде қолданба іске қосылған кезде ақпаратты сақтау үшін қолданба айнымалы мәндерін пайдаланасыз. 

Барлық ауыспалы блоктар Айнымалы жәшікте кездеседі. 

thunkable variable drawer

Айнымалыларға арналған үш негізгі блок бар. Олар туралы төмендегі қойындыларда біліңіз.

 

Инициативті блок айнымалыға арналған бағдарламадағы сақтау орнының бөлінуін белгілейді. Оған пайдалы атау беріңіз.

app variable numberOfLessons is initialized to 0

Мұнда білім қолданбасында қанша сабақ аяқталғанын бақылау үшін, мүмкін, numberOfLessons айнымалысы 0-ге инициализацияланған.

Жиын блогы айнымалы мәнін орнатуға немесе жаңартуға мүмкіндік береді.

set variable block

Мұнда ағымдағы мән орындалды және айнымалы ағымдағы мәнге + 1 орнатылады. Сонымен, егер numberOfLessons 2 болса, жаңа мән 3 болады.

get блогы айнымалының ағымдағы мәнін алуға мүмкіндік береді.

Мұнда get блогы Label1-де көрсету үшін сөйлемге сабақтар санын енгізу үшін пайдаланылады.
get block used in join block for setting label1 text
Мұнда ол шартты блокта нөлге тең екендігін тексеру үшін ағымдағы сабақтар санын алу үшін қолданылады.
get block used in if block

ТІЗІМДЕР

Қолданбаны құрастырған кезде, сізде қолданба ішінде қол жеткізуді қажет ететін деректердің бірнеше бөлігі бар болуы мүмкін.

Мысалы, бір пайдаланушы атының орнына қолданбаға қолданбаның барлық пайдаланушы аттарына кіру қажет болуы мүмкін. Немесе сіздің қолданбаңыз жануарларға қатысты болуы мүмкін, сондықтан жануарлардың бірнеше атаулары мен суреттері сақталуы керек.

Thunkable бағдарламасында бағдарламалардағы бірнеше деректер элементтерін ұйымдастыру үшін тізім деп аталатын нәрсені пайдаланасыз. Басқа бағдарламалау тілдері оларды массивтер деп атайды, бірақ олар бір нәрсе. 

Сіз бұрын істер тізімін немесе азық-түлік тізімін жасаған болуыңыз мүмкін және бағдарламалаудағы тізімдер өте ұқсас.

shopping list on paper with pen on top
lists palette in thunkable

Тізімдерге Блоктар өңдегішіндегі Негізгі блоктар палитрасы арқылы қатынасады. Тізімде элементтерді жасауға, сақтауға, шығарып алуға және жаңартуға мүмкіндік беретін бірнеше блоктар бар.

Тізімді бағдарлама айнымалысында сақтайсыз, осылайша тізімге атау бере аласыз.

initializing a list of fruits

Қатысты ақпараттың бірнеше бөлігі болған кезде тізімдерді пайдалану керек.

Мысалы, ойынның ең жоғары 10 жоғары ұпайын көрсеткіңіз келсе, HighScore10 деңгейіне жеткенше HighScore1, HighScore2, HighScore3 және т.б. сияқты атаулары бар он айнымалы мәнді жасауға болады.

Таңдаулы әрекет - барлық 10 жоғары ұпайды ұстап тұру үшін HighScores деп аталатын тізім жасау. Тапсырыс беру, жаңарту және жоғары баллдарды қосу бір тізіммен әлдеқайда оңай.

10 variables vs a single list

Тізімдегі әрбір элементтің тізімнен элементті шығарып алуға мүмкіндік беретін тізімдегі орны болып табылатын индексі бар.

Мысалы, төмендегі блоктарда 2 индексі Жемістер тізіміндегі 2-ші элементті көрсетеді. Сонымен, Label1 «Банандарды» көрсетеді.

initializing a list of fruits
from label1.text set text to in list (app fruits) get #2.

Сондай-ақ, тізімдердегі заттарды қосуға, жоюға және ауыстыруға болады. 

Егер сіз [Apples, Banas, Oranges] бастапқы Жемістер тізімін алсаңыз, төмендегі блоктарды іске қосқаннан кейін, олар бар ретпен Жемістер тізімінде қандай болатынын жорамалдауға бола ма?

initializing a list of fruits
Thunkable blocks to update fruit list
solution: list [apples, cherries, kiwis, grapes]

Үздік тәжірибелер: Айнымалы сөз оқушыларға үйрену қиын тақырыптардың бірі болып табылады. Жәшік аналогиясы шынымен де көмектеседі, сондықтан заттарды суреттеу үшін жәшіктерді нақты өмірлік таңбалауды жасау керек болса, бұл жақсы идея болуы мүмкін!

Оқушыларға сұрақ қоюға арналған бағыттаушы сұрақтар:

Тізімдерден немесе айнымалылардан басқа деректерді сақтаудың басқа жолдары бар деп ойлайсыз ба? Екі құндылықты бірге сақтағыңыз келсе ше? Менде қанша апельсин және қанша алма бар тізімді алғым келеді, мысалы:
Апельсин: 3

Алма: 5

Мен мұны қандай да бір жолмен сақтағым келеді. Бұл әлдеқайда күрделі тізім. Бұл мәндер бір-бірімен байланыстырылған тізімге ұқсайды:
Апельсин -> 3
Алма -> 5

Көрсеткілердің бағыты бар, сондықтан біз оны карта деп атаймыз! Басқа деректер құрылымдары да көп! Басқаларды таба аласыз ба?

Үздік студенттерге арналған қосымша білім: Егер сіздің студенттеріңіздің бірі кодтауға жатпайтын көбірек кодтауды жасауға қызығушылық танытса (мысалы: Python немесе Javascript-те кодтауды жалғастыру), сіз оларға кодтау тілдері не туралы көбірек ойлайтынын түсіндіре аласыз. қорапта бар. Мысалы, сандар сөздегі таңбалардан басқаша өңделеді. Python және Javascript сияқты тілдер сандарды таңбаларға қарсы қалай сақтау керектігін өте таңдайды, өйткені олар айнымалы мәнде сақтауға болатын заттардың әртүрлі «түрлері». Заттарды сақтау үшін қораптардың әртүрлі түрлерін қолданатын ұқсастық жасай аласыз: сіздің қалдықтарыңыз қалдықтарға арналған арнайы қорапқа (туппер ыдыс) түсуі керек, содан кейін сіз жылжытқан кезде заттарыңыз қозғалатын қорапқа (картон қорап) түсуі керек. . Питон үшін де солай. Сандар сандар жолақтарына, ал таңбалар таңбалар жолақтарына кіреді.

Тәлімгер кеңестері AmeriCorps қолдауымен ұсынылған.

stylized A, AmeriCorps logo in navy

ӘРЕКЕТ: ВИКТОРИНА БАҒДАРЛАМАСЫН АЯҚТАУ

Болжамды уақыт: 45 минут

Айнымалылар мен тізімдерді пайдаланып кодты аяқтау

Таңдаған тақырып бойынша пайдаланушының білімін сынайтын викторина бағдарламасын жасау үшін жұмыс парағындағы нұсқауларды орындаңыз.
Жұмыс парағын ашу

РЕФЛЕКСИЯ

 

Бұл сабақта сіз бағдарламада ақпаратты сақтау әдісін және тізімдермен көп ақпаратты қалай пайдалану керектігін үйрендіңіз. Мына сұрақтарды қарастырайық:

reflection with bits of data
Бағдарламаңызда қандай деректерді сақтау қажет?
Бағдарламаға тізімдерді қалай қосуға болады?

НЕГІЗГІ ТЕРМИНДЕРГЕ ШОЛУ

  • Айнымалы — бағдарлама ішіндегі ақпаратты атау және оған қатынасу тәсілі
  • Тізімдер  — Thunkable бағдарламасында бірнеше деректердің бір бөлігін ұйымдастыру тәсілі
  • Индекс  – тізімдегі деректер бөлігінің қайда екенін баяндайтын сан
  • Массив – App Inventor және Thunkable-дан басқа бағдарламалау тілдеріндегі тізімдердің жалпы атауы

ҚОСЫМША РЕСУРСТАР

Қарапайым тізім компоненті (бұрын тізімді қарау құралы деп аталады) мүмкіндік береді

  • бағдарламадағы тізім элементтерін көрсету
  • тізімдегі элементті пайдаланушы таңдауы.
  • пайдаланушы элементті таңдағанда қабылданатын әрекетті кодтау

Қолданыстағы жылдам демо үшін осы бейнені қараңыз: