วีดีโอ: ทำไมปฏิกิริยาตอบสนองไม่เปลี่ยนรูป?
2024 ผู้เขียน: Stanley Ellington | [email protected]. แก้ไขล่าสุด: 2023-12-16 00:24
ไม่เปลี่ยนรูป เป็นแนวคิดที่ว่า ปฏิกิริยา โปรแกรมเมอร์ต้องเข้าใจ หนึ่ง ไม่เปลี่ยนรูป ค่าหรืออ็อบเจกต์ไม่สามารถเปลี่ยนแปลงได้ ดังนั้นทุกๆ การอัพเดตจะสร้างค่าใหม่ โดยปล่อยให้ค่าเก่าไม่ถูกแตะต้อง จำไว้ว่า เช่นเดียวกับหลายๆ สิ่งในการเขียนโปรแกรม มันเป็นการแลกเปลี่ยน
ในลักษณะนี้ อะไรคือสิ่งที่เปลี่ยนแปลงและไม่เปลี่ยนแปลงในปฏิกิริยา?
NS เปลี่ยนแปลงได้ อ็อบเจ็กต์คืออ็อบเจ็กต์ที่สถานะสามารถแก้ไขได้หลังจากสร้างแล้ว หนึ่ง ไม่เปลี่ยนรูป อ็อบเจ็กต์คืออ็อบเจ็กต์ที่ไม่สามารถแก้ไขสถานะได้หลังจากสร้างแล้ว
อาจมีคนถามอีกว่า ทำไมรัฐถึงไม่เปลี่ยนรูป? วัตถุที่ไม่มี สถานะ หรือคัดค้านด้วย สถานะไม่เปลี่ยนรูป ให้การรับประกันและความไว้วางใจแก่ทุกฝ่ายที่บริโภคมัน ไม่เปลี่ยนรูป ออบเจ็กต์กำลังขยายกฎความรับผิดชอบเดียวเนื่องจากจำเป็นต้องส่งการพึ่งพาทั้งหมดไปยังตัวสร้าง ไม่เปลี่ยนรูป บล็อกใด ๆ สถานะ เปลี่ยนระหว่างวัฏจักรสดของวัตถุ
รู้ด้วยว่าทำไม redux จึงไม่เปลี่ยนรูป
3 คำตอบ Redux เป็นห้องสมุดขนาดเล็กที่เป็นตัวแทนของ สถานะ เช่น ( ไม่เปลี่ยนรูป ) วัตถุ และรัฐใหม่โดยผ่านกระแส สถานะ ผ่านฟังก์ชันบริสุทธิ์เพื่อสร้างสถานะอ็อบเจ็กต์/แอปพลิเคชันใหม่ทั้งหมด พวกเขาไม่เคยกลายพันธุ์และส่งคืนวัตถุที่สร้างขึ้นใหม่: อนุญาตให้ใช้เหตุผลเกี่ยวกับอินพุต + เอาต์พุตโดยไม่มีผลข้างเคียง
ทำไมการไม่เปลี่ยนรูปจึงดี?
หนึ่ง ไม่เปลี่ยนรูป วัตถุเป็นวัตถุที่สถานะไม่สามารถและจะไม่เปลี่ยนแปลงหลังจากสร้างครั้งแรก ไม่เปลี่ยนรูป ออบเจ็กต์นั้นยอดเยี่ยม ส่วนใหญ่เป็นเพราะมันปลอดภัยสำหรับเธรด (และควรหลีกเลี่ยงโค้ดเธรดให้มากที่สุด) คุณสามารถส่งต่อได้โดยไม่ต้องกลัวว่าจะมีการเปลี่ยนแปลง