ყველა მიმოხილვა
2 წთ საკითხავად

Expo Modules 2.0 ნატიური კოდის დაკავშირების უფრო მარტივ მიდგომას გვაცნობს

Expo-ს 8 სექტემბრის წინასწარი მიმოხილვა ნატიური მოდულების დაკავშირებისთვის საჭირო კოდს ამცირებს. პირველი API ექსპერიმენტულია iOS-ზე SDK 57-ში; ოფიციალური ბეტა SDK 58-ისთვის იგეგმება.

პირველი შეხედვა Expo Modules 2.0-ზე — AtmosGate-ის მიმოხილვის სარედაქციო გარეკანი

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

Expo-ს მიერ 8 სექტემბერს გამოქვეყნებული Modules 2.0-ის წინასწარი მიმოხილვა კოდის წერის განსხვავებულ მოდელს აჩვენებს. Swift-ის ანოტაციები განსაზღვრავს, რა უნდა გახდეს ხელმისაწვდომი JavaScript-ისთვის, ხოლო დაკავშირების სამუშაოს მეტ ნაწილს კომპილატორი ასრულებს. ეს საინტერესო მიმართულებაა გუნდებისთვის, რომლებიც საკუთარ ნატიურ მოდულებს უვლიან, თუმცა მნიშვნელოვანი შენიშვნით: პირველი ვერსია ექსპერიმენტულია.

ნაკლები განმეორებითი კოდი დასაკავშირებლად

SDK 57-ში უკვე შეტანილი iOS მაკროები მოიცავს მოდულის დეკლარაციებს, JavaScript-ისთვის ხელმისაწვდომ წევრებს, ჩანაწერებს, გაზიარებულ ობიექტებსა და მოვლენებს. ძველი მოდულის განსაზღვრის სტილით თითოეული მეთოდის ცალკე აღწერის ნაცვლად, დეველოპერებს შეუძლიათ Swift-ის კოდს ანოტაციები უშუალოდ ქცევის განხორციელების ადგილთან დაუმატონ.

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

წყაროები და გამოშვების ჩანაწერები: [1]

რა არის ახლა ხელმისაწვდომი

Expo SDK 57-ის რეალიზაციას ექსპერიმენტულად და დოკუმენტაციის გარეშე გამოშვებულად აღწერს; API ჯერ კიდევ შეიძლება შეიცვალოს. ოფიციალური ბეტა, დოკუმენტაცია და აგენტის უნარი SDK 58-ისთვის იგეგმება.

Android-ის რეალიზაცია, ნატიური ხედების მხარდაჭერა და TypeScript-ის დეკლარაციების გენერაცია ჯერ კიდევ მუშაობის პროცესშია. შესაბამისად, ეს შესაფასებელი წინასწარი ვერსიაა და არა უკვე გამოშვებული, სრულად მზად მყოფი მრავალპლატფორმული ჩანაცვლება. Modules 1.0-ის მხარდაჭერა გრძელდება.

წყაროები და გამოშვების ჩანაწერები: [1]

მიგრაციის დაგეგმვამდე ერთი მოდული სცადეთ

Expo-ს თანახმად, Modules 1.0 და 2.0 ერთ მოდულში შეიძლება თანაარსებობდეს. ეს გუნდს საშუალებას აძლევს, თითო ფუნქცია ან თვისება ეტაპობრივად გადაიტანოს ისე, რომ არსებული აპლიკაცია მუშაობას აგრძელებდეს.

გამოსადეგი ექსპერიმენტისთვის აიღეთ ერთი მცირე iOS ინტეგრაცია მკაფიო სატესტო მოთხოვნებით. შეამოწმეთ მისი მნიშვნელობები, შეცდომები, მოვლენები და ქცევა აპლიკაციის სასიცოცხლო ციკლის მდგომარეობებს შორის გადასვლისას. ახალი API-ის შეფასების პერიოდში უცვლელი დატოვეთ Android-ის რეალიზაცია და გამოშვების არსებული პროცესი.

  • დაიწყეთ მცირე მოდულით, რომლის JavaScript ქცევა ცნობილია.
  • გამოსცადეთ ნატიურ კოდთან საზღვარი, შეცდომებისა და სასიცოცხლო ციკლის ცვლილებების ჩათვლით.
  • ჩაიწერეთ შეფასებაში გამოყენებული ექსპერიმენტული SDK-ისა და API-ის ვერსიები.

წყაროები და გამოშვების ჩანაწერები: [1]

შედარების შედეგები სწორ მასშტაბში განიხილეთ

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

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

წყაროები და გამოშვების ჩანაწერები: [1]

წყაროები და გამოშვების ჩანაწერები

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

  1. An early look at Expo Modules 2.0

    Expo · 8 სექტემბერი, 2026