თემის მონახაზი

  • კურსის შესახებ

    სასწავლო კურსის მიზნები და ამოცანები: კურსის მიზანია დაინტერესებულ პირებს გააცნოს მობაილ დეველოპმენტის საფუძვლები, როგორც Android ასევე IOS სისტემისთვის. გამოუმუშავოს მათ მარტივი და საშუალო დონის აპლიკაციების დამოუკიდებლად შექმნის უნარი. 


    სასწავლო კურსის შესწავლის წინაპირობები: წინაპირობა არ აქვს (კურსი განკუთვნილია დამწყებებისთვის)

    სწავლების ფორმატი (სწავლების მეთოდი): სალექციო მეცადინეობა (თეორიული მასალის გაცნობა), პრაქტიკული მეცადინეობა

    ასაკობრივი კატეგორია: 15+


    შენიშვნა: კურსისთვის საჭიროა გამართული ლეპტოპი ან კომპიუტერი Windows ან macOS ოპერაციული სისტემით, სადაც შესაძლებელი იქნება პროგრამა Visual Studio Code-ში მუშაობა. ტექნიკური მახასიათებლების შესახებ ინფორმაცია იხილეთ ამ ვებგვერდზე: https://code.visualstudio.com/docs/supporting/requirements#:~:text=VS%20Code%20is%20lightweight%20and,1%20GB%20of%20RAM


    ძირითადი თემები:

    ● მობაილ დეველოპმენტის ზოგადი მიმოხილვა, ტენდენციების და საჭირო ინფორმაციის გაცნობა;

    ● JavaScript პროგრამირების საფუძვლები (მონაცემთა ტიპები, მასივები, ფუნქციები, ობიექტები, მეთოდები, ლუპები და სხვა...)

    ● React Native Expo პროექტის დაყენება და გაშვება

    ● ძირითადი UI კომპონენტების გაცნობა და ინტერფეისის აწყობა

    ● ასინქრონული ჯავასკრიპტი

    ● ჰუკების ფუნქციონალის გაცნობა და აპლიკაციაში ჩაშენება

    ● API სერვისის გამოყენება

    ● CRUD ოპერაციების განხორციელება

    ● Native მოდულების გამოყენება

    ● აპლიკაციის ბილდის შექმნა


    მობაილ დეველოპმენტის საბაზისო კურსის განმავლობაში: 

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

    ● Visual Studio Code-ის ინტერფეისის გამოყენება

    ● React Native-ის საფუძვლები

    ● დოკუმენტაციებთან და საჭირო წყაროებთან მუშაობა

    ● მარტივი და საშუალო დონის აპლიკაციების შექმნა

    ● CRUD ოპერაციების განხორციელება


    სასარგებლო წყაროები:

    ● ჯავასკრიპტის მთავარი სახელმძღვანელო - http://vnadiradze.ge/info/javascript/

    https://webschool.ge/js/1291

    https://docs.expo.dev/

    https://reactnative.dev/docs/components-and-apis

  • #1 React Native-ის ისტორია და სამუშაო გარემოს მომზადება

    • მობაილ დეველოპმენტის ისტორია
    • React Native შექმნის ისტორია
    • Visual Studio Code-ისა და Node js
    • გადმოწერა/დაყენება
    • პროგრამირების ზოგადი საფუძვლები
    • განსხვავება ვებ და მობაილ
    • დეველოპმენტს შორის
    • სამუშაო ფოლდერის გაკეთება


    წყაროები:

    Node js - https://nodejs.org/en/download

    Visual Studio Code - https://code.visualstudio.com/download

  • #2 JavaScript-ის საფუძვლები

    • რა არის JavaScript და რაში გამოიყენება იგი
    • ცვლადები (let, const)
    • მონაცემთა ტიპები (boolean, null, undefined, string, number, object)
    • არითმეტიკული ოპერატორები (+, -, /, *, +=, -=, %, ==, ===)
    • მარტივი არითმეტიკული ოპერაციების ჩატარება
    • მონაცემთა ტიპების ინვერსია (მაგ: !true იგივეა რაც false)

  • #3 JavaScript II - სტრინგები, სტრინგ მეთოდები, if else და for loop (for ციკლი)

    • რა არის სტრიქონი (string) JavaScript-ში
    • string მეთოდები (length, slice, replace, toUpperCase, toLowerCase, indexOf)
    • If else პირობის გამოყენება და მარტივი ამოცანის ამოხსნა
    • რა არის და რაში გამოიყენება for ციკლი (for loop)

  • #4 JavaScript III - ფუნქციები და ობიექტები

    • რა არის ობიექტი
    • ობიექტის key და value, ობიექტის მეთოდები (ფუნქციები ობიექტში)
    • ფუნქციები
    • Arrow ფუნქციები
    • ფუნქციის პარამეტრები
    • მარტივი ამოცანები ფუნქციებთან და ობიექტებთან დაკავშირებით

  • #5 JavaScript IV - მასივები, map მეთოდი, scoping

    • რა არის მასივი (array)
    • როგორ უნდა მივწვდეთ მასივის წევრებს
    • map მეთოდი
    • რა არის scope

  • #6 JavaScript V - მასივის მეთოდები და Expo პროექტი

    • მასივის მეთოდები (sort, filter, map, forEach, indexOf, push, pop, shift, unshift, includes, length, slice)
    • Expo პროექტის დაყენება და გაშვება

  • #7 Expo, ელემენტები, Statusbar

    • Expo პროექტის სტრუქტურის მიმოხილვა
    • პროექტში არსებული მოდულებისა და ფაილების გაცნობა
    • Expo ელემენტები (View და Text)
    • Statusbar-ისა და მისი თვისებების გაცნობა
    • StyleSheet - სტილების ობიექტი

  • #8 Box Model, flex, ელემენტების განლაგება

    • Box Model - padding და margin
    • flex მოდელის მიხედვით ელემენტების განლაგება ეკრანზე
    • ელემენტებისთვის სტილის მინიჭება
    • Image, View, Text ელემენტების გამოყენება

  • #9 Expo და React Native კომპონენტები, props, ივენთები

    • რა არის კომპონენტი
    • პირველი კომპონენტის აწყობა
    • კომპონენტის props-ები
    • React Native - Pressable კომპონენტი
    • ინვენთები (მოვლენები) და onPress ივენთი
    • Icon-ის გამოყენება
    • Box shadow სტილის მინიჭება
    • ელემენტისთვის 2-მაგი სტილის მინიჭება

  • #10 ScrollView და FlatList, Custom კომპონენტი

    • Scroll ივენთი
    • React Native - ScrollView კომპონენტი
    • React Native - Flatlist კომპონენტი
    • განსხვავება ScrollView-სა და FlatList-ს შორის
    • Custom კომპონენტ <Title/>-ის აწყობა

  • #11 Navigation: Tab და Stack, ბიბლიოთეკები

    • ბიბლიოთეკების მოძიება და დაინსტალირება
    • React Native ნავიგაციის ბიბლიოთეკის დაყენება
    • განსხვავება Tab და Stack ნავიგაციებს შორის
    • BottomTab ნავიგაციის აწყობა
    • Stack ნავიგაციის აწყობა

  • #12 ImageBackground, Custom Advanced კომპონენტი, Platform Api

    • ImageBackground და TouchableOpacity ელემენტების გამოყენება
    • რთული Custom კომპონენტის აწყობა და სტილების მინიჭება
    • Platform Api-ის გაცნობა
    • IOS და Android პლაფტფორმებისთვის განსხვავებული დიზაინის შექმნა Platform Api-ის
    • დახმარებით

  • #13 React ჰუკები, სთეითი, კომპონენტის სასიცოცხლო ციკლები, ასინქრონული ჯავასკრიპტი

    • რა არის local და global სთეითი
    • როგორია კომპონენტის სასიცოცხლო ციკლი
    • რა არის ჰუკი
    • useState და useEffect ჰუკების გამოყენება
    • ასინქრონული ჯავასკრიპტი
    • fetch api-ის გაომყენება
    • Log in ფუნქციონალის აწყობა
    • Backend api-სთან მუშაობა

  • #14 CRUD ოპერაციები, Conditional Rendering, useContext, AsyncStorage

    • Get, Post, Put, Delete - ოპერაციების განხორციელება
    • Conditional Rendering-ის გამოყენებით, განსხვავებული კომპონენტების დარენდერება
    • useContext ჰუკის გამოყენება
    • AsyncStorage-ის გამოყენება ინფორმაციის ლოკალურად, მობილურში შესანახად
    • TextInput კომპონენტთან მუშაობა
    • Submit ფორმის აწყობა
    • Log in ფუნქციონალის გამართვა useContext-ისა და AsyncStorage-ის დახმარებით

  • #15 შეჯამება

    • გავლილი მასალის შეჯამება
    • აპლიკაციის გამოქვეყნება
    • ფინალური პროექტი