ב-Twitter אפשר לשפר את היעילות והמהירות של המפתחים באמצעות פיתוח נייטיב
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
טוויטר היא אחת מפלטפורמות המדיה החברתית הנפוצות ביותר, שבה המשתמשים יכולים לראות מה קורה בעולם בכל רגע נתון. צוות ההנדסה התחיל להשתמש ב-Jetpack Compose כדי לעדכן את מערכת העיצוב שלו.
מה הם עשו
ממשקי המשתמש ומערכת העיצוב של אפליקציית Twitter פותחו לפני כ-10 שנים, והם כללו רכיבים מדור קודם שדרשו מאמצי תחזוקה משמעותיים. לכן צוות ההנדסה רצה לבנות מערכת עיצוב חדשה שניתנת להתאמה, עם רכיבי ממשק משתמש חסרי מצב שקל להשתמש בהם ולתחזק אותם, ואינטואיטיביים להטמעה, להרחבה ולהתאמה אישית. לכן הם החליטו להשתמש ב-Compose.
הצוות התחיל להחליף רכיב אחרי רכיב באמצעות מערכת העיצוב הפנימית שלהם, והוסיף את Compose למסכים חדשים שלא תלויים בהגדרות הקודמות.
תוצאות
התכונה 'יצירת קוד' סיפקה מענה טוב למטרה של שיפור מהירות הפיתוח, שביעות הרצון של המפתחים והיכולת לתחזק את קוד הממשק או הרכיבים שלו. אחרי שהתחילו להשתמש ב-Compose, מהנדסי טוויטר אמרו שזה “In a word: incredible.
אנחנו קוראים לזה באופן פנימי Android UI 2.0, וזה מקשה מאוד לחזור למערכת התצוגה הקודמת שלנו. הוא שיפר את היעילות והמהירות שלנו בכל מה שפיתחנו במיוחד ב-Compose".
הם ראו שיפורים במהירות הפיתוח והניסוי: “The
turn-around on design changes for anything we’ve adopted in Compose is much
faster than we would have experienced previously. בנוסף, אנחנו עורכים הרבה ניסויים בשינויים במוצר, והרבה יותר קל ומהיר לעשות את זה כשהקוד כתוב ב-Compose וב-Kotlin".
הקוד שהם כותבים לא רק אינטואיטיבי יותר, אלא גם מהיר יותר לכתיבה וקל יותר לקריאה: "בנוסף, שכבת העיצוב שלנו הרבה יותר אינטואיטיבית וקלה לקריאה, והצלחנו להשיג בקובץ Kotlin יחיד את מה שקודם דרש כמה קובצי XML שהיו אחראים להגדרות ולשיבוצים של מאפיינים באמצעות כמה שכבות של שכבות-על של עיצובים. הטמעה מחדש של כל מבנה העיצוב שלנו בהקשר של Compose לקחה רק כמה ימים עד כמה שבועות, וכבר הוכח שהיא יציבה ואינטואיטיבית הרבה יותר ממערכת העיצוב הקודמת שלנו".
שנתחיל?
מידע נוסף על כתיבת הודעות
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2021-07-28 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2021-07-28 (שעון UTC)."],[],[],null,["[Twitter](https://twitter.com) is one of the most widely used social\nmedia platforms where users can see what's happening in the world at any given\nmoment. The engineering team started using Jetpack Compose to **modernise their\ndesign system.**\n\nWhat they did\n\nBecause the Twitter app's UI components and theming system was developed around\n10 years ago and was comprised of legacy components that required tremendous\nmaintenance efforts, the engineering team wanted to build a new, scalable\ndesign system; with stateless UI components that were easy to use and maintain;\nand intuitive to implement, extend and customize, so they decided to use\nCompose.\n\nThe team started a component-by-component replacement through their internal\ndesign system and by introducing Compose into new screens that don't depend on\ntheir legacy setup.\n\nResults\n\nCompose provided a solid answer to their goal of improving developer velocity,\ndeveloper happiness, and UI code/component maintainability. After starting to\nuse Compose, Twitter engineers say that it's *\"In a word: incredible.\nInternally we refer to it as Android UI 2.0, and it makes it very difficult to\ndelve back into our legacy view system. It has **increased our efficiency and\nvelocity** for things we've developed specifically in Compose.\"*\n\nThey've seen improvements in the speed of development and experimentation: *\"The\n**turn-around on design changes** for anything we've adopted in Compose **is much\nfaster** than we would have experienced previously. Additionally, we experiment\nvery heavily within our product changes, and this is facilitated much better\nand quicker when written in Compose and Kotlin.\"*\n\nThe code they write is not only more intuitive, but also faster to write, and easier to\nread: *\"Additionally, **our theming layer is vastly more intuitive and legible**\nand we've been able to accomplish within a single Kotlin file what otherwise\nextended across multiple XML files that were responsible for attribute\ndefinitions and assignments via multiple layered theme overlays. Reimplementing\nour entire theming structure within the context of Compose took only a matter\nof days to weeks, and has already proven to be much **more robust and intuitive**\nthan our legacy theme system ever has been.\"*\n\nGet started\n\nLearn more about [Compose](/jetpack/compose)."]]