Свифт и использование расширения класса
Я не понимаю, почему программисты используютextension
Ключевое слово в их реализации класса. В других темах вы можете прочитать, что тогда код более семантически разделен и т. Д. Но когда я работаю со своим собственным кодом, мне кажется, что его использование более понятно// MARK - Something
, Затем, когда вы используете методы list (ctrl + 6) в Xcode, все видно на первый взгляд.
В документации Apple вы можете прочитать:
«Расширения добавляют новые функциональные возможности к существующему классу, структуре или типу перечисления».
Так почему бы не написать свой собственный код прямо в моем собственном классе? В отличие от того, когда я хочу расширить функциональность некоторого иностранного класса, какNSURLSession
или жеDictionary
, где тыиметь использовать расширения.
Мэтт Томпсон использует расширение в своей библиотеке Alamofire, возможно, он может дать мне небольшое объяснение, почему он выбрал этот подход.