Η JetBrains κυκλοφόρησε το Compose for Desktop and Web, μια θύρα του Jetpack Compose της Google για Android, στο alpha. Εδώ είναι τι νέο υπάρχει.
Αν δεν έχετε ακούσει Jetpack Compose, που ήσουν τον τελευταίο καιρό; Η Google δημιούργησε αυτό το δηλωτικό πλαίσιο διεπαφής χρήστη για να αντικαταστήσει την τυπική μηχανή διάταξης XML στο Android. Το Compose επιτρέπει στους προγραμματιστές να δημιουργούν τις διατάξεις τους και τη συνοδευτική λογική τους όλα στο Kotlin. Η JetBrains, η εταιρεία πίσω από την Kotlin, μπήκε επίσης στη δράση Compose και εργάζεται για τη μεταφορά της τόσο σε επιτραπέζιους υπολογιστές όσο και στο διαδίκτυο.
Το JetBrains Compose for Desktop and Web βρίσκεται σε εξέλιξη εδώ και καιρό. Είχε μια δημόσια pre-alpha "Προεπισκόπηση τεχνολογίας" την οποία οι προγραμματιστές μπορούν να χρησιμοποιήσουν για να δημιουργήσουν εφαρμογές πολλαπλών πλατφορμών στο Compose. Προσωπικά το έχω χρησιμοποιήσει Η εφαρμογή μου Samsung Firmware Downloader, και λειτουργεί αρκετά καλά.
Σήμερα, η JetBrains προωθεί την έκδοση του Compose σε alpha. Αυτό σημαίνει ένα πιο σταθερό API, μαζί με ορισμένες νέες δυνατότητες και αλλαγές.
Σύνθεση για τον Ιστό
Πρώτα, ο Ιστός. Η σύνθεση για τον Ιστό είναι ομοιόμορφη νεότερο από το Compose for Desktop, και λείπει αρκετά. Αυτό όμως δεν σημαίνει ότι είναι άχρηστο. Αν και οι προγραμματιστές μπορεί να μην έχουν τα φανταχτερά βασικά στοιχεία διεπαφής χρήστη που είναι διαθέσιμα για Desktop και Android, οι προγραμματιστές εξακολουθούν να έχουν τα πλεονεκτήματα της γραφής στο Kotlin με αρχές δηλωτικού σχεδιασμού.
Τώρα που το Compose βρίσκεται σε στάδιο άλφα, το Web API θα πρέπει να είναι πιο σταθερό, με λιγότερες, αν υπάρχουν, αλλαγές που γίνονται με την πάροδο του χρόνου.
Διαχείριση παραθύρου σύνθεσης
Επιστροφή στην επιφάνεια εργασίας, υπάρχουν ορισμένες αλλαγές στον τρόπο με τον οποίο οι προγραμματιστές αλληλεπιδρούν με τα παράθυρα στην εφαρμογή τους.
Το πρώτο είναι καινούργιο API συνθέτου παραθύρου. Αυτό επιτρέπει στους προγραμματιστές να αλληλεπιδρούν με τα παράθυρα της εφαρμογής τους δηλωτικά. Για παράδειγμα, ο τίτλος του παραθύρου μπορεί τώρα να αλλάξει με μια κατάσταση και τα παράθυρα μπορούν ακόμη και να ανοίγουν και να κλείνουν με βάση τις καταστάσεις.
Ένα άλλο μέρος του νέου API παραθύρου επιτρέπει στους προγραμματιστές να επιλέξουν να ανοίγουν νέα παράθυρα με προσαρμοστικό (αντί για σταθερό) μέγεθος. Αυτό σημαίνει ότι το Compose θα υπολογίσει πόσο μεγάλο πρέπει να είναι ένα παράθυρο με βάση το περιεχόμενό του, θα ορίσει αυτόματα το αρχικό μέγεθος και στη συνέχεια θα ανοίξει το παράθυρο.
Πρόσθετα
Το JetBrains Compose είχε πάντα ένα πρόσθετο Gradle για την εκτέλεση μεταγλώττισης και εκτέλεσης. Με το alpha, αυτό το πρόσθετο αποκτά μια πρόσκρουση έκδοσης, μαζί με ορισμένες διορθώσεις σφαλμάτων.
Στην κορυφή της προσθήκης Gradle, όμως, υπάρχει τώρα ένα πρόσθετο IDE για το IntelliJ IDEA και το Android Studio για καλύτερη υποστήριξη του Compose για επιτραπέζιους υπολογιστές και Web. Ομοίως με το Compose για Android, αυτή η προσθήκη επιτρέπει στους προγραμματιστές να σχολιάζουν συναρτήσεις με δυνατότητα σύνθεσης ως προεπισκοπήσεις και να προβάλλουν προεπισκοπήσεις διάταξης απευθείας στο IDE.
Το πρόσθετο είναι πολύ βασικό αυτή τη στιγμή. Η μόνη άλλη δυνατότητα που διαθέτει αυτή τη στιγμή αφαιρεί την προειδοποίηση IDE σχετικά με τη χρήση κεφαλαίων τίτλων για ονόματα συναρτήσεων με δυνατότητα σύνθεσης. Αλλά θα αποκτήσει περισσότερες δυνατότητες όσο περνάει ο καιρός, όπως η ζωντανή προεπισκόπηση.
Υποστήριξη Αρχιτεκτονικής
Παρόλο που ο στόχος για το JetBrains Compose είναι να είναι cross-platform, δεν έχει ακόμη πλήρη υποστήριξη για όλες τις αρχιτεκτονικές CPU. Το alpha επεκτείνει την τρέχουσα υποστήριξη στα εξής:
- macOS: x86-64 (amd64), arm64
- Windows: x86-64 (amd64)
- Linux: x86-64 (amd64), arm64
- Web: οτιδήποτε πρόσφατο
Αν και αυτό σίγουρα δεν καλύπτει τα πάντα εκεί έξω, η υποστήριξη θα βελτιωθεί μόνο στο μέλλον.
Μελλοντικές Εξελίξεις
Η επιλογή του JetBrains να μετακινήσει το Compose σε κατάσταση άλφα είναι σημαντική. Σημαίνει ότι σχεδιάζουν να συνεχίσουν να αναπτύσσονται για αυτό, με τελικά beta και σταθερά στάδια. Και, φυσικά, περισσότερα χαρακτηριστικά.
συμπέρασμα
Είναι πολύ συναρπαστικό να βλέπεις τι έχει να φέρει το Compose. Στο Android, αντικαθιστά μια ξεπερασμένη (αν και άψογα χρησιμοποιήσιμη) μηχανή διάταξης. Σε επιτραπέζιους υπολογιστές και στον Ιστό, προσφέρει δηλωτική σχεδίαση χρησιμοποιώντας μια γλώσσα με έντονη πληκτρολόγηση που είναι πιο εύκολη στη χρήση (τουλάχιστον για μένα) από τις γλώσσες που βασίζονται σε TypeScript. Ειδικά στην επιφάνεια εργασίας, το Compose συμβάλλει στην κάλυψη ενός αρκετά μεγάλου κενού για λειτουργικές μηχανές διάταξης.
Αν ενδιαφέρεστε να δοκιμάσετε το JetBrains Compose, ελέγξτε το αποθετήριο GitHub για περισσότερες λεπτομέρειες σχετικά με το πώς να ξεκινήσετε.