iHeartRadio สร้างโค้ดเบสที่สะอาดและมีประสิทธิภาพมากขึ้นด้วยคอมโพเนนต์สถาปัตยกรรมของ Android

iHeartRadio ซึ่งมีสำนักงานใหญ่อยู่ในนิวยอร์กซิตี้ให้บริการ เพลงแบบไม่จำกัดและสถานีวิทยุหลายพันสถานีในแอปเดียว โดยการดำเนินงานของบริษัท ครอบคลุมถึงการออกอากาศทางวิทยุ ออนไลน์ อุปกรณ์เคลื่อนที่ ดิจิทัล และโซเชียลมีเดีย คอนเสิร์ตและกิจกรรมแบบสด การเผยแพร่ต่อ บริการวิจัยเพลง และ การเป็นตัวแทนสื่ออิสระ

ผู้ฟังทั่วโลกดาวน์โหลดแอปนี้ไปแล้วกว่าพันล้านครั้ง นับตั้งแต่เปิดตัวในปี 2008 อย่างไรก็ตาม ในช่วงปลายปี 2017 ฐานโค้ดเริ่มเก่า และพบว่าการจัดการโค้ดและการผสานรวมฟีเจอร์ใหม่ๆ เป็นเรื่องยาก

สิ่งที่พวกเ��าทำ

iHeartRadio เลือกใช้ คอมโพเนนต์สถาปัตยกรรมของ Android เมื่อ เริ่มอัปเกรดโค้ด ไลบรารีความคงทนของ Room ที่ตรงไปตรงมาและนำไปใช้งานได้ง่าย ดึงดูดใจวิศวกรของ iHeartRadio ด้วย ความสามารถในการจัดการสิ่งต่างๆ เช่น การค้นหาแบบอะซิงโครนัสและการรองรับ RxJava ซึ่ง iHeartRadio ใช้ก��นอย่างแพร่หลายในโค้ด

นอกจากนี้ ยังใช้คอมโพเนนต์ที่รับรู้ถึงวงจร ซึ่งจะดำเนินการเพื่อตอบสนองต่อการเปลี่ยนแปลงสถานะวงจรของคอมโพเนนต์อื่น วิศวกรของ iHeartRadio พบว่าคอมโพเนนต์เหล่านี้มีประโยชน์อย่างมากในการลดการอ้างอิง ที่แทรกลงในกิจกรรมและ Fragment นอกจากนี้ บริษัทยังได้สร้างต้นแบบโดยใช้ ViewModel ซึ่งช่วยให้ข้อมูลยังคงอยู่ได้แม้จะมีการเปลี่ยนแปลงการกำหนดค่า เช่น การหมุนหน้าจอ

ผลลัพธ์

iHeartRadio พบว่าการย้ายข้อมูลไปยัง Architecture Components และใช้ไลบรารีเพื่อทดสอบว่าการผสานรวมทำงานได้ดีเพียงใดนั้นเป็นเรื่องง่าย Room และคอมโพเนนต์อื่นๆ ต้องใช้โค้ดบอยเลอร์เพลตเพียงเล็กน้อย ซึ่งหมายความว่าโค้ดของแอป สั้นลงอย่างมาก คอมโพเนนต์สถาปัตยกรรม ยังช่วยลดปัญหาหน่วยความจำรั่วได้อีกด้วย นอกจากนี้ ข้อดีอีกอย่างคือ นักพัฒนาซอฟต์แวร์ใหม่ที่เข้าร่วมทีมสามารถเริ่มใช้งานและเริ่มเขียนโค้ดได้อย่างรวดเร็ว

โดยรวมแล้ว การใช้คอมโพเนนต์สถาปัตยกรรมช่วยให้ iHeartRadio สร้างโค้ดเบสที่สะอาดและมีประสิทธิภาพมากขึ้น ซึ่งช่วยป้องกันข้อผิดพลาดได้ ซึ่งเป็นข่าวดีสำหรับทุกแอป โดยเฉพาะแอปที่นำเสนอ เสียงดิจิทัลแบบครบวงจรแก่ผู้ชมทั่วโลก

เริ่มต้นใช้งาน

คอมโพเนนต์สถาปัตยกรรมของ Android เปิดให้นักพัฒนาแอปทุกคนใช้บริการได้ในส่วนของ Android Jetpack เริ่มต้นใช้งานคอมโพเนนต์สถาปัตยกรรมของ Android