- შეიტყობთ პროგრამირების შესახებ ორიენტირებულ ღონისძიებებზე
- გაიგებთ სხვადასხვა ტიპის ბლოკების შესახებ Thunkable-ის პლატფორმაზე
აქტივობები ამ გაკვეთილისთვის:
ᲦᲝᲜᲘᲡᲫᲘᲔᲑᲔᲑᲘ
მობილური აპლიკაციები დაფუძნებულია მოვლენებზე ორიენტირებულ პროგრამირებაზე.
მოვლენებზე ორიენტირებული პროგრამირება ეფუძნება მოვლენებს და არა კოდის გაშვებას ზემოდან ქვემოთ. ზოგიერთი პროგრამა უბრალოდ ასრულებს ყველა კოდს ერთდროულად, მაგრამ მობილური აპლიკაციები მუშაობს იმის მიხედვით, თუ როგორ ურთიერთქმედებს მომხმარებელი მასთან.
მობილური აპლიკაციები მუშაობს მოვლენებზე დაფუძნებული , რაც ხდება კოდის გასაშვებად. მაგალითი იქნება - მომხმარებელი აჭერს ღილაკს. მოვლენა ხდება, როდესაც მომხმარებელი დააწკაპუნებს. და იმ კოდს, რომელიც უნდა გაუშვას, როდესაც ეს მოვლენა მოხდება, ეწოდება მოვლენის დამმუშავებელი .
ᲒᲐᲩᲔᲠᲓᲘ ᲓᲐ ᲒᲐᲜᲘᲮᲘᲚᲔ
შეგიძლიათ იფიქროთ ტელეფონთან ურთიერთობის რამდენიმე ხერხზე? რას აკეთებს თქვენი ტელეფონი? გაეცანით რამდენიმე მაგალითს:
- როდესაც აწკაპუნებთ აპის აიქონზე, აპი იხსნება.
- როდესაც აჭერთ ტექსტური შეტყობინების "გაგზავნას" , ის აგზავნის შეტყობინებას და გამოსცემს ხმას.
- აპლიკაციაში შესვლილას აპიპაროლს ითხოვს.

დავიწყოთ იმით, რომ გადავხედოთ სხვადასხვა ნაწილებს Thunkable პლატფორმა.
Thunkable აქვს ორი ფანჯარა, რომელსაც იყენებთ თქვენი აპლიკაციის შესაქმნელად. დიზაინზე დაწკაპუნებით მენიუს ზედა ზოლში (ეკრანის ზედა მარცხენა მხარეს) მიგიყვანთ დიზაინერთან , სადაც თქვენ შეიმუშავებთ მომხმარებლის ინტერფეისს. მომხმარებლის ინტერფეისი არის ყველაფერი თქვენს აპლიკაციაში, რომლებთანაც მომხმარებელს შეუძლია ურთიერთობა. ეს შეიძლება იყოს ღილაკები, ნავიგაციის ზოლები, ტექსტური ყუთები, სურათები და ა.შ.
ᲛᲨᲕᲔᲜᲘᲔᲠᲘ ᲓᲘᲖᲐᲘᲜᲔᲠᲘᲡ ᲤᲐᲜᲯᲐᲠᲐ

კომპონენტების სია
ყველა კომპონენტი, რომელიც დაამატეთ თქვენს აპს, გამოჩნდება აქ, იერარქიულად ორგანიზებული ეკრანის მიხედვით.
სამუშაო სივრცე
თქვენ გადაიტანეთ თქვენი კომპონენტები ტელეფონზე ამ ცენტრალურ სამუშაო სივრცეში. თქვენ აკონტროლებთ კომპონენტების ადგილს და მათ ზომას.
კომპონენტების დამატება
თქვენ გადაიტანეთ ვიზუალური კომპონენტები ამ პანელიდან სამუშაო სივრცეში.
თვისებების პანელი
თვისებების პანელი საშუალებას გაძლევთ დააყენოთ თვისებები თითოეული კომპონენტისთვის. თვისებები არის სხვადასხვა მახასიათებლები, რომლებიც შეგიძლიათ დააყენოთ თითოეული კომპონენტისთვის, როგორიცაა მისი სიგანე, სიმაღლე და ფერი. აირჩიეთ კომპონენტი მაკეტზე და შემდეგ შეგიძლიათ შეცვალოთ მისი რომელიმე თვისება თვისებების პანელში.
როდესაც ვინმე იყენებს თქვენს აპს, ის ურთიერთქმედებს თქვენს მომხმარებლის ინტერფეისთან, ღილაკებზე დაწკაპუნებით, ტექსტის შეყვანით და ა.შ. თქვენი გადასაწყვეტია, რა უნდა გააკეთოს აპმა და დააპროგრამოთ ის ამ მოქმედებების შესასრულებლად.
ბლოკური ედითორი
„Blocks“-ზე დაჭერით გადადიხართ ბლოკური ედითორის ფანჯარაში, სადაც კეთდება კოდირება. ბლოკები გადაგაქვთ მარცხენა პანელიდან სამუშაო სივრცის ეკრანის ცენტრში.

მარცხნივ ნახავთ ბლოკების პალიტრას. ზედა არის UI კომპონენტები. თქვენს აპლიკაციაში თითოეულ კომპონენტს აქვს ბლოკების საკუთარი ნაკრები. თქვენ დააწკაპუნებთ კომპონენტზე, რათა აჩვენოთ ბლოკები, რომლებიც შეგიძლიათ გადაიტანოთ სამუშაო სივრცეში.
კოდირების სამუშაო სივრცე
ეს არის თქვენი სამუშაო ადგილი, სადაც გადაიტანეთ ყველა თქვენი ბლოკი. შეგიძლიათ გადაიტანოთ ისინი, მიამაგროთ ისინი ერთმანეთში. თქვენ ასევე შეგიძლიათ წაშალოთ ნებისმიერი ბლოკი, რომელიც არ გჭირდებათ.
ძირითადი ბლოკები
ძირითადი ბლოკები არის სტანდარტული კოდირების ბლოკები თქვენს აპლიკაციაში გამოსაყენებლად. ისინი კლასიფიცირდება მათი ტიპისა და ფერის მიხედვით.
აპლიკაციის მახასიათებლები
ეს არის უხილავი ფუნქციები, რომლებიც შეგიძლიათ დაამატოთ თქვენს აპლიკაციას. შეგიძლიათ დააწკაპუნოთ ერთზე მის დასამატებლად, შემდეგ დააყენოთ თვისებები და გადაიტანეთ კოდის ბლოკები ამ ფუნქციისთვის.
მოვლენის ᲓᲐᲛᲛᲣᲨᲐᲕᲔᲑᲚᲔᲑᲘ
მოვლენის დამმუშავებელი ბლოკავს Thunkable არის ოქროს ფერი და აქვს ღია ბლოკის ფორმა, ასე რომ თქვენ შეგიძლიათ მის შიგნით ბლოკები დაამტვრიოთ. ეს ბლოკები მუშაობს მხოლოდ მაშინ, როდესაც ეს მოვლენა მოხდება.

როდესაც დააჭირეთ ღილაკს
თქვენ უკვე გამოიყენეთ ეს. როდესაც მომხმარებელი დააწკაპუნებს კონკრეტულ ღილაკზე, გსურთ, რომ აპმა გააკეთოს რაღაც, მაგალითად, სხვა ეკრანის გახსნა ან შეტყობინების გაგზავნა.

როდესაც დააწკაპუნეთ ListViewer ელემენტზე
ListViewer ჰგავს ჩამოსაშლელ მენიუს, ამიტომ ეს მოვლენა ხდება მაშინ, როდესაც მომხმარებელი ირჩევს ერთეულს სიაში. აპმა რაღაც უნდა გააკეთოს იმ ელემენტთან, რომელზეც დააწკაპუნეთ.

როდესაც ეკრანი იხსნება
ეს ღონისძიება გამოიყენება, როდესაც გსურთ რაიმე გააკეთოთ, როდესაც აპი პირველად დაიწყება ან აპი სხვა ეკრანზე გადადის. შეგიძლიათ დააყენოთ ცვლადები, ან განაახლოთ ინფორმაცია ღრუბელიდან.
ᲤᲣᲜᲥᲪᲘᲔᲑᲘ
ფუნქციები არის კოდის ბლოკები, რომლებიც აკეთებენ რაღაცას. მათი გაშვება ბევრჯერ შეიძლება აპში. Thunkable ში ფუნქციების ბლოკები იასამნისფერია. ზოგიერთი ენა მოიხსენიებს ფუნქციებს, როგორც მეთოდებს ან პროცედურებს. ისინი აკეთებენ რაღაცას, ასე რომ თქვენ შეგიძლიათ მათზე მოქმედების ბლოკად წარმოიდგინოთ.

თქვი
ეს ფუნქცია საშუალებას აძლევს აპს თქვას ან თქვას ის ტექსტი, რომელიც გსურთ, რომ თქვას.
ტაიმერის დაწყება და ხმის თამაში
ტაიმერის კომპონენტს შეუძლია დათვლა დაიწყოს. და აპს შეუძლია ხმის დაკვრა.
სეტერები ᲓᲐ მიმღებები (Setters & Getters)
მწვანე ბლოკები დაკავშირებულია კომპონენტის თვისებებთან.
ღია მწვანე ბლოკებს უწოდებენ მიმღებებს , რადგან თქვენ იღებთ ქონების ღირებულებას.

ღილაკის ტექსტი 1
ტექსტი მიიღება და ინახება ცვლადში numberChoice.
Timer1-ის დრო წამებში
ტაიმერის წამების მნიშვნელობა მიიღება და ინახება Lablel1-ის ტექსტში, ამიტომ მნიშვნელობა ნაჩვენებია ეტიკეტზე.
სეტერები უფრო მუქი მწვანეა და მათი დაჭერა შესაძლებელია ბოლოზე ღია ჭრილით. ეს საშუალებას გაძლევთ დააყენოთ ქონების ღირებულება.

ღილაკის ტექსტი 1
Button1-ის ტექსტი დაყენებულია სიტყვებზე „დააწკაპუნე!“
ლეიბლი1.ტექსტი
Label1-ის ტექსტი დაყენებულია Timer1-ის დრო წამებში.
Timer1-ის ინტერვალიმილიწამები
Timer1-ის IntervalMilliseconds (რამდენად ხშირად ითიშება) დაყენებულია 3000-ზე, ანუ 3 წამზე.
მენტორის რჩევა
საუკეთესო პრაქტიკა: შეახსენეთ სტუდენტებს, რომ ზემოთ განხილული რეალური კოდირების მსგავსია. უცნაური ლექსიკა (ფუნქციები, მიმღებები, სეტერები), რომელსაც ჩვენ ვიყენებთ, არის ზუსტად ის, რასაც კოდის დამწერები იყენებენ.
კითხვები, რომლებიც უნდა დაუსვათ მოსწავლეებს: შეგიძლიათ მოიფიქროთ რამდენიმე ყოველდღიური ფუნქცია, რომელსაც ასრულებთ? (მაგალითად: ნამცხვრის გამოცხობა, კბილების გახეხვა – ყველაფერი, რასაც განმეორებადი ნაბიჯები აქვს). ფუნქციები ძალიან ჰგავს ალგორითმებს!
მენტორის რჩევები მოწოდებულია AmeriCorps-ის მხარდაჭერით.

ᲛᲝᲜᲐᲪᲔᲛᲗᲐ ᲑᲚᲝᲙᲔᲑᲘ
როდესაც იყენებთ სეტერის ბლოკებს, შეგიძლიათ გამოიყენოთ სხვა ჩაშენებული ბლოკები - მონაცემების ან ინფორმაციის ბლოკები, რომელიც შეიძლება გამოყენებულ იქნას თქვენს აპლიკაციაში. მონაცემთა ბლოკების რამდენიმე მაგალითი მოცემულია ქვემოთ.

ნომრები
რიცხვების მნიშვნელობები შეიძლება გამოყენებულ იქნას როგორც მონაცემები აპში. ეს ბლოკები შეგიძლიათ იხილოთ მათემატიკის უჯრაში ბლოკების პალიტრის ძირითადი განყოფილებაში.

ტექსტი ან სტრიქონები
ტექსტი, რომელსაც ზოგჯერ სტრიქონებსაც უწოდებენ, შეიძლება გამოყენებულ იქნას როგორც მონაცემი. ეს არის ასოები, სიტყვები და წინადადებები, რომლებიც შეიძლება გამოყენებულ იქნას აპლიკაციაში. ბლოკები გვხვდება ბლოკების პალიტრის Core განყოფილების ტექსტის უჯრაში.

ლოგიკური
მონაცემთა ამ ტიპს აქვს მხოლოდ ორი შესაძლო მნიშვნელობა - true ან false. ამ ბლოკებს შეუძლიათ დააყენონ ან შეამოწმონ რაღაცის „მდგომარეობა“ და გამოყენებული იქნება პირობითად, რომლის შესახებაც უფრო მეტს შეიტყობთ.
ᲐᲥᲢᲘᲕᲝᲑᲐ: Soundboard-is მაგალითი
მიჰყევით ქვემოთ მოცემულ ვიდეოს
შემდეგ მიჰყევით დეივის ქვემოთ მოცემულ ვიდეოს, რათა გამოიყენოთ ღონისძიების დამმუშავებლები და ფუნქციები თქვენს აპლიკაციაში გამოსვლების დასაკრავად.
ჩელენჯი

აქტივობაში გამოიყენეთ:
- მოვლენის დამმუშავებლის (Event Handler) ბლოკები
- ფუნქციური ბლოკები
მოდით ვცადოთ რამდენიმე სეტერის და მიმღების ბლოკის გამოყენება Soundboard აპში დამატებით.
როდესაც მომხმარებელი დააჭერს რომელიმე სურათს ასოცირებული ხმის დასაკრავად, შეცვალეთ ეკრანის ფონის ფერი.
თქვენ შეგიძლიათ შეცვალოთ იგი ერთ კონკრეტულ ფერზე, მაგრამ შემდეგ თქვენ ვეღარ შეძლებთ მარტივად დააბრუნოთ იგი საწყის შავ ფერზე, ასე რომ, ამის ნაცვლად, შეცვალეთ ეკრანის ფონი შემთხვევით ფერზე.
მინიშნება: შეამოწმეთ ფერის უჯრა, რომ ნახოთ, როგორ მიიღოთ შემთხვევითი ფერი.
რეფლექსია
ახლა, როცა ცოტა მეტი შეიტყვეთ სხვადასხვა კოდის ბლოკების შესახებ, იფიქრეთ თქვენი აპლიკაციის გადაწყვეტაზე:

ძირითადი ტერმინების მიმოხილვა
- მომხმარებლის ინტერფეისი – ყველაფერი თქვენს აპლიკაციაში, რომლებთანაც მომხმარებელს შეუძლია ურთიერთობა
- დიზაინერი - ფანჯარა, სადაც შეგიძლიათ დაამატოთ კომპონენტები თქვენს აპლიკაციაში და შეიმუშაოთ მათი ვიზუალი
- ბლოკების ედიტორი - ფანჯარა, სადაც კოდს წერთ ბლოკებით
- მოვლენა – რაღაც, რაც ხდება კოდის გასაშვებად
- Event Handler (მოვლენის დამმუშავებელი) – კოდის ბლოკები, რომლებიც ეუბნებიან თქვენს აპს, რა უნდა გააკეთოს კონკრეტული ურთიერთქმედებისას
- მოვლენებზე ორიენტირებული პროგრამირება – მოვლენებზე დაფუძნებული პროგრამირება ( და არა მთელი კოდის გაშვება ზემოდან ქვემოდან)
- ფუნქციები – კოდის ბლოკი, რომელიც მუშაობს და შეიძლება მრავალჯერ გაუშვათ
ᲓᲐᲛᲐᲢᲔᲑᲘᲗᲘ ᲠᲔᲡᲣᲠᲡᲔᲑᲘ
იხილეთ მეტი დეივ ვოლბერის Thunkable გაკვეთილები draganddropcode.com- ზე
სტუდენტური ელჩი მეანაკში ნაირის უფასო Thunkable კურსი Udemy-ზე კიდევ ერთი შესანიშნავი რესურსია!