גוגל פרסמה את Jetpack Compose ב-Beta, מנוע ה-UI ההצהרתי של החברה שנכתב ב-Kotlin שנועד לפשט את פיתוח ממשק המשתמש.
הנה אנחנו שוב. כתבתי על Jetpack Compose, מנוע ה-UI החדש של גוגל, כשזה נכנס אלפא, ושוב כאשר JetBrains העביר אותו לפלטפורמות שולחניות. היום, גרסת הבטא של Jetpack Compose כבר כאן.
למקרה שלא נתפסת על כל טכנולוגיות ממשק המשתמש החדשות הקיימות (אני לא מאשים אותך) ואתה לא רוצה כדי לקרוא את המאמרים האחרים האלה (עכשיו אני כן מאשים אותך), הנה תיאור קצר של מה מדובר. Jetpack Compose הוא מנוע ממשק משתמש הצהרתי שנכתב ב-Kotlin שמטרתו להחליף (או לפחות להוות אלטרנטיבה בת קיימא עבור) מנועי ממשק משתמש חיוניים קלאסיים, כמו פריסות XML של אנדרואיד. אני לא אכנס להבדל בין פריסות הצהרתיות לצוויות, אז בוא נגיד ש-Jetpack Compose הוא מנוע פריסה רב עוצמה לקוד בלבד שיכול להקל בהרבה על יישום ממשק המשתמש.
אם זה לא יהיה, מה המשמעות של מהדורת בטא עבור Compose, בדיוק? ובכן, בוא נראה.
ממשק API
כל מסגרת טובה צריכה API (בהגדרה). בשלבי הקדם-אלפא והאלפא, גוגל הייתה קשה בבניית ה-API של Compose שיהיה אינטואיטיבי ושימושי ככל האפשר. ובדיוק כמו כל פרויקט טוב, הוא עבר הרבה תיקונים. השימוש ב-Compose בשלבים אלה עלול להיות קשה מכיוון שניתן להסיר ממשקי API או לשנות את שמותיהם ללא אזהרה רבה.
כעת, כשאנחנו בשלב הביטא, גוגל בטוחה שה-API שלם ויציב. משמעות הדבר היא שאין יותר הסרות או שינויים (דרסטיות), כך שתוכל להשקיע יותר זמן ביצירת האפליקציה שלך מאשר להתעדכן בשינויים ב-API.
כמובן, API יציב לא אומר שהוא בלתי ניתן לשינוי. גוגל עדיין תוסיף תכונות ותשנה דברים, אבל עכשיו יהיו הודעות הוצאה משימוש ומחזורי החלפה מתאימים.
תמיכת Coroutine
זכור מתי גוגל הוציא משימוש את AsyncTask באנדרואיד, וכולם היו מודאגים ואז שכחו מזה לגמרי? אתה כנראה יכול להודות על כך למסגרת הקורוטינה של קוטלין. בצורתו הבסיסית ביותר, הוא מהווה תחליף ל-AsyncTask, אך הוא גם הרבה יותר חזק, הרבה יותר גמיש והרבה יותר חוצה פלטפורמות.
בעוד של-Jetpack Compose יש בערך תמך בשימוש בקורוטינים, זה היה בעיקר כשכבת יכולת פעולה הדדית. עם זאת, עם גרסת הבטא, קורוטינים מובנים ב-Compose, כך שתוכל להשתמש שוב בשיחות האסינכרון שלך.
אנימציות
אנימציות יכולות להיות די מעצבנות לבנות באנדרואיד, ולמשך זמן מה הן היו גם ב-Compose. עם זאת, בגרסת הבטא, גוגל מבטיחה API של אנימציות "קל לשימוש" כדי להקל על הדברים. הם גם עדכנו את Android Studio כדי לכלול תמיכה בתצוגה מקדימה של אנימציות אלה, כך שלא תצטרך לפרוס את האפליקציה שלך כדי לבדוק אותן.
פריסות
ל-Android Studio יש כמה כלים די מסודרים להתמודדות עם פריסות. האחת היא התצוגה המקדימה של הפריסה, המאפשרת לך לראות בערך איך הפריסה שלך תיראה במכשיר, ואת אחר הוא מפקח הפריסה, המאפשר לך לראות בדיוק מה קורה בפריסת האפליקציה שלך כשהיא על התקן.
לפני כן, התצוגה המקדימה של הפריסה עבדה עם פריסות Compose, אבל היית צריך לבנות מחדש את האפליקציה שלך בכל פעם ששינית משהו כדי שהתצוגה המקדימה תתעדכן. עם זאת, כעת, כשאנחנו בגרסת הבטא, Android Studio עודכן כך שיכלול תצוגה מקדימה בשידור חי של קוד הכתיבה שלך.
גם לפני כן, מפקח הפריסה בעצם לא פעל עם פריסות Compose. הוא יציג צילום מסך של האפליקציה, אך הוא לא הצליח לחלץ ולהציג מסגרת קווית של כל רכיבי הפריסה. בדיוק כמו בתצוגה המקדימה של הפריסה, Android Studio עודכן עם מפקח פריסה חדש התומך בפריסות Compose.
טוקבק
עכשיו בואו נדבר על נגישות, תכונה חשובה להפליא שלצערי לרוב נשכחת. למרבה המזל, גוגל לא שכחה, למרות שזה יכול היה להגיע מוקדם יותר: כעת תומכים בפריסות Compose טוקבק, קורא מסך מתקדם באנדרואיד שגם קורא לך תוכן וגם מאפשר לך ליצור אינטראקציה עם התצוגה באמצעות מחוות פשוטות.
למרות שזוהי תכונת הנגישות העיקרית היחידה לעת עתה, גוגל הבטיחה כי ביציבות יתווספו תכונות נגישות אחרות. מוטב מאוחר מאשר אף פעם, אני מניח, ואני מקווה שהתכונות הללו ישולבו בצורה הדוקה יותר עם Compose מאשר עם XML.
וזה בערך הכל.
אם אתה רוצה להתחיל עם Jetpack Compose, עכשיו זה זמן די טוב. יש לך ממשק API מלא תכונה לשחק איתו וללמוד, והרבה מדריכים היישר מגוגל. לבדוק אתר המפתחים של גוגל למידע נוסף על עדכונים וכיצד להשתמש ב-Compose.
וכמובן, ספר לנו מה אתה חושב על השינויים בבטא או על דעתך על Compose באופן כללי.