ประสิทธิภาพของ Jetpack Compose

Jetpack Compose มอบประสิทธิภาพที่ยอดเยี่ยมตั้งแต่เริ่มต้น กําหนดค่าแอปโดยใช้แนวทางปฏิบัติแนะนําเพื่อหลีกเลี่ยงข้อผิดพลาดที่พบบ่อยและเพิ่มประสิทธิภาพแอปพลิเคชัน Compose

การเปรียบเทียบ Jetpack Compose

เราใช้ฮีโร่ เบนช์มาร์กเพื่อตรวจสอบประสิทธิภาพของ Jetpack Compose เทียบกับ View ซึ่งเป็นเบนช์มาร์กที่มุ่งเน้นเส้นทางของผู้ใช้ที่สำคัญและใช้งานจริง เช่น การเริ่มแอปแบบ Cold Start หรือการเลื่อนรายการหรือตารางกริดที่มีรูปภาพ เราดำเนินการ เบนช์มาร์กเหล่านี้โดยใช้แอป Pokedex แบบโอเพนซอร์ส เพื่อเปรียบเทียบการใช้งาน View และ Compose

เกณฑ์เปรียบเทียบเหล่านี้แสดงให้เห็นว่า Compose 1.9 ขึ้นไปมีประสิทธิภาพตรงกับประสิทธิภาพของ View สำหรับ การกระตุกขณะเลื่อน

ตั้งแต่ Compose 1.9.0 เป็นต้นมา Compose และ View มีอัตราการกระตุกเท่ากัน
ตั้งแต่ Compose 1.9.0 เป็นต้นมา Compose และ View จะมีอัตราการกระตุกเท่ากัน

ดูเมตริกเพิ่มเติมและดูข้อมูลเกี่ยวกับวิธีการของเราได้ที่การเปรียบเทียบฮีโร่

หัวข้อสำคัญ

แนวคิดหลักบางส่วนเกี่ยวกับประสิทธิภาพใน Compose มีดังนี้

  • เฟส: การทำความเข้าใจเฟสการจัดองค์ประกอบ เลย์เอาต์ และการวาด เป็นสิ่งสำคัญในการเพิ่มประสิทธิภาพวิธีที่ Compose อัปเดต UI
  • โปรไฟล์ Baseline: โปรไฟล์เหล่านี้จะคอมไพล์ล่วงหน้าซึ่งโค้ดที่จำเป็น จึงทำให้แอปเปิดตัวได้เร็วขึ้นและโต้ตอบได้ราบรื่นยิ่งขึ้น
  • ความเสถียร: เพิ่มความเสถียรของแอปเพื่อข้ามการจัดองค์ประกอบที่ไม่จำเป็นได้อย่างมีประสิทธิภาพมากขึ้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพ

กำหนดค่าแอปอย่างถูกต้อง

หากแอปทำงานได้ไม่ดี อาจเกิดปัญหาในการกำหนดค่า ขั้นตอนแรกที่ดีคือการตรวจสอบตัวเลือกการกำหนดค่าต่อไปนี้

เครื่องมือ

ทำความคุ้นเคยกับชุดเครื่องมือที่มีให้เพื่อช่วยคุณวัดผลและวิเคราะห์ประสิทธิภาพของแอป Compose

แนวทางปฏิบัติแนะนำ

เมื่อพัฒนาแอปด้วย Compose โปรดคำนึงถึงแนวทางปฏิบัติแนะนำต่อไปนี้

ดูรายละเอียดเพิ่มเติมได้ที่คู่มือแนวทางปฏิบัติแนะนำ

ยอดดู

หากคุณใช้ View แทน Compose โปรดดูคำแนะนำปรับปรุงประสิทธิภาพเลย์เอาต์โดยเฉพาะ

แหล่งข้อมูลเพิ่มเติม