我聽說人們說方法混亂是一種危險的做法。甚至連起草的名字都暗示這有點作弊。方法Swizzling正在修改映射,以便調用選擇器A實際上將調用實現B。此方法的一種用法是擴展封閉源類的行為。我們是否可以將風險正式化,以便任何決定是否使用毛毛雨的人都可以做出明智的決定,以決定自己是否想這樣做。例如命名沖突:如果該類以后擴展其功能以包括您添加的方法名稱,則將引起大量問題。通過合理命名混淆方法來降低風險。
3 回答

繁華開滿天機
TA貢獻1816條經驗 獲得超4個贊
真正危險的不是漩渦本身。正如您所說,問題是它通常用于修改框架類的行為。假設您對那些“危險”的私有類如何工作有所了解。即使您的修改在今天起作用,Apple仍然有可能會在將來更改類,并導致您的修改失敗。此外,如果有許多不同的應用程序執行此操作,則在不破壞許多現有軟件的情況下,Apple很難更改框架。
- 3 回答
- 0 關注
- 438 瀏覽
添加回答
舉報
0/150
提交
取消