การลบล้างวิธีการในส่วนขยาย Swift
ฉันมักจะใส่เฉพาะความจำเป็น (คุณสมบัติที่เก็บไว้, ตัวเริ่มต้น) ลงในคำจำกัดความของคลาสของฉันและย้ายทุกสิ่งทุกอย่างไปเป็นของตัวเองextensionซึ่งเหมือนกับextensionบล็อกตรรกะที่ฉันจะจัดกลุ่มด้วย// MARK:เช่นกัน สำหรับคลาสย่อย UIView ฉันจะปิดท้ายด้วยส่วนขยายสำหรับสิ่งที่เกี่ยวข้องกับการจัดวางส่วนหนึ่งสำหรับการสมัครรับข้อมูลและจัดการเหตุการณ์และอื่น ๆ ในส่วนขยายเหล่านี้ผมอย่างหลีกเลี่ยงไม่ได้ที่จะแทนที่วิธี UIKit layoutSubviewsบางส่วนเช่น ฉันไม่เคยสังเกตเห็นปัญหาใด ๆ เกี่ยวกับแนวทางนี้ - จนถึงวันนี้ ใช้ลำดับชั้นของคลาสนี้เช่น: public class C: NSObject { public func method() { print("C") } } public class B: C { } extension B { override public func method() { print("B") } } public class A: …