Zillow הוא שוק נדל"ן מוביל באינטרנט שמספק לצרכנים את הרישומים, הנתונים והמחשבונים שהם צריכים כדי לעזור להם לקנות, לשכור או למכור בית. באתר יש גם קישורים לסוכנים מקומיים, לספקי משכנתאות ולמעצבי בתים.
חברת Zillow הושקה בשנת 2006 וממוקמת בסיאטל. היא מחזיקה במסד נתונים של יותר מ-110 מיליון בתים בארה"ב. הם גם מפעילים חבילה פופולרית של יותר מ-24 אפליקציות לנייד בתחום הנדל"ן. ביולי 2017, כשחברת Zillow התחילה לשנות באופן משמעותי את הקוד באפליקציית Android שלה, היא רצתה לפשט את העבודה של המפתחים שלה. לשם כך, היא דאגה שהקוד יהיה קריא יותר וקל יותר להבנה לחברי צוות חדשים.
מה הם עשו
חברת Zillow שינתה את הקוד שלה באמצעות רכיבי ארכיטקטורה של Android. "בדקנו סוגים שונים של ארכיטקטורה," אומר איוש ראג', מהנדס תוכנה ב-Zillow. "היתרון הנוסף של Architecture Components היה המודעות למחזור החיים, שהפכה את ניהול הקוד להרבה יותר קל".
ViewModel מאפשר לנתונים לשרוד שינויים בהגדרות (כמו סיבוב המסך), בעוד ש-LiveData הוא מחזיק נתונים שניתן לצפות בו. שתי הטכנולוגיות האלה שימשו את Zillow, ויחד הן סיפקו תבנית יעילה להטמעה של Model-View-ViewModel (MVVM). "הוא עזר לנו להפוך את הקוד שלנו לכזה שאפשר לבדוק אותו בקלות רבה יותר", אומר ראג'. ספריית העקביות של Room גם הקלה על בניית שכבת מטמון מקומית, כך שהאפליקציה לא נאלצה לשלוף נתונים מהרשת לעיתים קרובות, וכך 'שיפרה את הביצועים ואת חוויית המשתמש'.
תוצאות
ראג' מוסיף שהעברת הרבה קוד לעדכוני נתונים מפעילויות ל-ViewModels בהחלט עזרה להפוך את בסיס הקוד כולו לקריא יותר. הם עדיין לא המירו את כל האפליקציה ל-ViewModel, אבל לא היו באגים שקשורים למחזור החיים של רכיבים שמשתמשים ב-ViewModel. העברת עדכוני נתונים לפעילויות ולמקטעים פועלת גם היא בצורה טובה מאוד.
"המפתחים פרודוקטיביים יותר בזכות השימוש ברכיבי ארכיטקטורת Android", אומר סומירן פרדהאן (Sumiran Pradhan), מהנדס בכיר לפיתוח תוכנה ב-Zillow. הם מקבלים הנחיות מ-Architecture Components כשהם מתחילים מאפס, אבל הוא גם שימושי בבסיס הקוד הקיים. "אחרי שמפתחים חדשים מבינים איפה נמצאת הלוגיקה ב-ViewModel, הם מאוד אוהבים את זה", מוסיף פרדהאן.
שנתחיל?
רכיבי הארכיטקטורה של Android פתוחים לכל המפתחים כחלק מ-Android Jetpack. תחילת העבודה עם רכיבי ארכיטקטורה של Android