หยุดการทำ Nesting เพื่อเพิ่มประสิทธิภาพในการทำ Data Mapping
Nested loops ทำให้โค้ดของคุณทำงานช้าลง
หากคุณมีสอง list ที่มีข้อมูลรายการละ 1,000 รายการ การใช้ nested loop จะต้องทำงานถึง 1,000,000 ครั้ง ซึ่งจะทำให้ความเร็วในการทำงานลดลงอย่างมาก
วิธีที่ช้า: คุณวนลูปผ่าน list หนึ่งภายในอีก list หนึ่ง คอมพิวเตอร์ของคุณจะต้องทำงานหนักเกินไปเมื่อข้อมูลมีขนาดใหญ่ขึ้น
วิธีที่เร็ว: ใช้ Map หรือ lookup object
คุณเปลี่ยน list หนึ่งให้เป็น Map ก่อน จากนั้นจึงวนลูปผ่าน list ที่สองเพียงครั้งเดียว วิธีนี้จะช่วยลดภาระงานจากหลายล้านครั้งเหลือเพียงไม่กี่พันครั้งเท่านั้น
ทำไมคุณถึงควรเปลี่ยนวิธีการ:
- ประสิทธิภาพ (Performance): แอปของคุณจะยังคงทำงานได้รวดเร็วแม้จะมีชุดข้อมูลขนาดใหญ่
- การรองรับการขยายตัว (Scalability): โค้ดของคุณจะยังคงทำงานได้รวดเร็วเมื่อฐานผู้ใช้งานเพิ่มขึ้น
- ความง่ายในการบำรุงรักษา (Maintainability): โค้ดที่สะอาดกว่าจะทำให้อ่านและแก้ไขได้ง่ายขึ้น
เลิกใช้ nested loops สำหรับการทำ mapping และเปลี่ยนมาใช้ hash maps แทน วิธีนี้จะช่วยให้ซอฟต์แวร์ของคุณทำงานได้รวดเร็วและมีประสิทธิภาพ
ที่มา: https://dev.to/jehadurre/stop-nesting-how-to-optimize-your-data-mapping-performance-4p1j