JetBrains შემოაქვს Jetpack Compose, Google-ის დეკლარაციული დიზაინის ჩარჩოს Android-ისთვის, ვებზე. ის დღეს ხელმისაწვდომია გადახედვის სახით.
ბოლო რამდენიმე წლის განმავლობაში, იყო საკმაოდ დიდი ბიძგი კროს-პლატფორმული პროგრამის განვითარებისთვის. ისეთი ჩარჩოები, როგორიცაა React და Flutter შეიქმნა, რათა დეველოპერებს საშუალება მისცენ გააზიარონ ერთი კოდის ბაზა Android-ზე, iOS-ში, დესკტოპზე და თუნდაც ვებში. JetBrains-იც კი, კომპანია ზოგიერთი ყველაზე პოპულარული IDE-ისა და Kotlin პროგრამირების ენის უკან, მუშაობს პლატფორმების განვითარებაზე. ჯერ Kotlin Multiplatform-ით, მაგრამ ახლახან Jetpack Compose-ით.
ცოტა ხნის წინ, JetBrains-მა პორტირებული Jetpack Compose, Google-ის დეკლარაციული დიზაინის ჩარჩო Android-ისთვის, დესკტოპზე. ეს საშუალებას აძლევდა ჯვავის JVM-ის ირგვლივ დაფუძნებული დესკტოპის კროს-პლატფორმის განვითარებას. Jetpack Compose-ის გამოყენებით შეგიძლიათ შექმნათ აპლიკაცია Android-ისთვის, macOS-ისთვის, Windows-ისთვის და თუნდაც Linux-ისთვის, ყველაფერი ერთი კოდის ბაზიდან. მაგრამ iOS-ის გარდა, Compose-ს აკლია საკმაოდ დიდი პლატფორმა: ვებ.
თუმცა ეს შეიცვლება. JetBrains აქვს გაათავისუფლეს რასაც ისინი უწოდებენ Jetpack Compose-ის ტექნოლოგიურ გადახედვას ვებისთვის.
ახლა, Technology Preview ძირითადად პრე-ალფას ლამაზი სახელია. შედგენა ვებისთვის თითქმის არ არის მზად წარმოებაში გამოსაყენებლად. არ არის გაკვეთილები, ძალიან ცოტა დოკუმენტაცია და API-ები თითქმის არ არის დასრულებული. ამის გათვალისწინებით, ვნახოთ, რას გვთავაზობს Compose for Web ჯერჯერობით.
მიმდინარე ვერსიაში, არსებობს ორი გზა, რომლის განვითარებაც შეგიძლიათ Compose for Web-ში: DOM API-ის გამოყენებით ან არსებული Compose ვიჯეტების გამოყენებით, როგორიცაა Column ან Text.
თუ იყენებთ DOM API-ს, გექნებათ API სახელები, რომლებიც წარმოადგენენ სხვადასხვა HTML ელემენტებს, მაგ გვ, ა, და ასე შემდეგ. თუმცა, დიდი განსხვავება Compose-სა და კლასიკურ Kotlin JS-ს შორის არის ის, რომ შეგიძლიათ გამოიყენოთ სახელმწიფოზე დაფუძნებული დეკლარაციული დიზაინი. ეს ვარიანტი, როგორც ჩანს, არის ხიდი კლასიკურ ვებ განვითარებასა და სრულ დეკლარაციულ ინტერფეისის განვითარებას შორის. განლაგების შექმნის გარდა, Compose for Web ასევე გაძლევთ საშუალებას შექმნათ დინამიური, სახელმწიფოზე დაფუძნებული სტილის ფურცლები.
მეორე ვარიანტი არის ის, რაც უფრო ნაცნობი იქნება Android და Compose დეველოპერებისთვის. არის წინასწარ დამზადებული კომპონენტები, როგორიცაა Column, Row და Slider, რომლებიც შეგიძლიათ გამოიყენოთ ვებ UI-ის შესაქმნელად. ამჟამად, ეს არ არის ძალიან სრული და სტილები და ვარიანტები სრულად არ არის დანერგილი. მაგრამ ეს სულ მცირე წარმოდგენას გვაძლევს იმის შესახებ, თუ რას ინახავს JetBrains-ისთვის Compose for Web.
საერთო ჯამში, ამ დროისთვის, ინტერნეტისთვის შედგენის საქმე ნამდვილად არ არის. ჯერ კიდევ თავისშია ძალიან ადრეულ დღეებში. მაგრამ ეს შეიძლება ბევრს ნიშნავდეს მომავლისთვის. პირადად მე, როგორც Android-ის დეველოპერს, მიჭირდა ბრაუზერზე დაფუძნებული განლაგების ჩარჩოებში შესვლა. ძირითადი HTML და CSS შეიძლება იყოს უხერხული, ხოლო React და Flutter სინტაქსები კვლავ ეფუძნება HTML დიზაინს.
სრულად გამორჩეული, მრავალპლატფორმული დიზაინის ენა, რომელიც არ არის დაფუძნებული ვებ დიზაინის პრინციპებზე, საკმაოდ საინტერესოა. მიუხედავად იმისა, რომ Jetpack Compose-ს ჯერ კიდევ დიდი გზა აქვს გასავლელი, ის, რაც JetBrains-მა დაგეგმა, შეიძლება ბევრს ნიშნავდეს UI დიზაინის მომავლისთვის.
თუ გსურთ გაიგოთ მეტი შედგენა ვებისთვის, შეამოწმეთ JetBrains-ის განცხადება. თუ გაინტერესებთ ახლანდელი განხორციელებით თამაში, გადადით GitHub საცავში.