Вопросы с тегом «protocols»

Обычное средство связи (несвязанных) объектов друг с другом.

562
Как сделать слабую ссылку на протокол в «чистом» Swift (без @objc)

weak ссылки не работают в Swift, если только protocol не объявлено как @objc, чего я не хочу в чистом приложении Swift. Этот код выдает ошибку компиляции ( weakне может быть применен к не классу MyClassDelegate): class MyClass { weak var delegate: MyClassDelegate? } protocol MyClassDelegate { } Мне...

306
В каких ситуациях длинный / короткий опрос AJAX предпочтительнее HTML5 WebSockets?

Я создаю небольшое приложение для чата для друзей, но не уверен, как своевременно получать информацию, которая не является такой же ручной или рудиментарной, как принудительное обновление страницы. В настоящее время я реализую это с помощью простого AJAX, но недостатком является регулярное...

212
Как мне создать свой собственный протокол URL? (например, так: //…) [закрыто]

Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он был по теме переполнения стека. Закрыто 2 года назад . Улучшить этот вопрос Я видел: http://www... ftp://blah.blah......

166
Разница между заголовками Pragma и Cache-Control?

Я прочитал о заголовке Pragma в Википедии, где написано: «Поле заголовка Pragma: no-cache - это заголовок HTTP / 1.0, предназначенный для использования в запросах. Он позволяет браузеру сообщать серверу и любым промежуточным кешам, что ему нужна свежая версия ресурса, а не сервера. сказать браузеру...

144
Разница между TCP и UDP?

В чем разница между TCP и UDP? Я знаю, что TCP используется в случае не критичных ко времени приложений, а UDP используется для игр или приложений, требующих быстрой передачи данных. Я знаю, что TCP используется для HTTP, HTTP, FTP, SMTP и Telnet. Я знаю, что UDP используется для DNS и DHCP. Но...

137
Использование протоколов в качестве типов массивов и параметров функций в swift

Я хочу создать класс, который может хранить объекты, соответствующие определенному протоколу. Объекты должны храниться в типизированном массиве. Согласно документации Swift протоколы могут использоваться как типы:  Поскольку это тип, вы можете использовать протокол во многих местах, где разрешены...

126
Протокол не соответствует самому себе?

Почему этот код Swift не компилируется? protocol P { } struct S: P { } let arr:[P] = [ S() ] extension Array where Element : P { func test<T>() -> [T] { return [] } } let result : [S] = arr.test() Компилятор сообщает: «Тип Pне соответствует протоколу P» (или, в более поздних версиях Swift,...

124
Что означает «Протокол… может использоваться только как общее ограничение, потому что он имеет требования типа Self или связанные с ним»?

Я пытаюсь создать словарь (на самом деле HashSet ) с ключом для настраиваемого протокола в Swift, но он дает мне ошибку в заголовке: Протокол myProtocol может использоваться только в качестве общего ограничения, поскольку он имеет требования типа Self или связанные с ним. и я не могу понять это....

105
Добавление нового сетевого носителя в Android

Я хотел бы добавить нового носителя (ов) в Android (рутированная / настраиваемая сборка), чтобы быть одноранговым с Wi-Fi и GPRS. Я занимался разработкой Android и знаю, что (в Android 2.2) есть константы для WIFI и GPRS. Означает ли это, что мне нужно будет добавлять константы повсюду, а также...

105
Метод не - '@ objc' не удовлетворяет необязательному требованию протокола '@objc'

Обзор: У меня есть протокол P1, который обеспечивает реализацию по умолчанию одной из дополнительных функций Objective-C. Когда я предоставляю реализацию дополнительной функции по умолчанию, появляется предупреждение Предупреждение компилятора: Non-'@objc' method...

102
Протокол может использоваться только как общее ограничение, потому что он имеет требования Self или associatedType.

У меня есть протокол RequestType, и у него есть модель AssociatedType, как показано ниже. public protocol RequestType: class { associatedtype Model var path: String { get set } } public extension RequestType { public func executeRequest(completionHandler: Result<Model, NSError> -> Void) {...

102
Приведите экземпляр класса к @protocol в Objective-C

У меня есть объект (UIViewController), который может соответствовать или не соответствовать определенному мною протоколу. Я знаю, что могу определить, соответствует ли объект протоколу, а затем безопасно вызвать метод: if([self.myViewController conformsToProtocol:@protocol(MyProtocol)]) {...

97
Как заставить перечисление соответствовать протоколу в Swift?

В документации Swift говорится, что классы , структуры и перечисления могут соответствовать протоколам, и я могу добраться до точки, где все они соответствуют. Но я не могу заставить перечисление вести себя так же, как примеры классов и структур : protocol ExampleProtocol { var simpleDescription:...

96
Как в Swift объявить переменную определенного типа, которая соответствует одному или нескольким протоколам?

В Swift я могу явно указать тип переменной, объявив ее следующим образом: var object: TYPE_NAME Если мы хотим пойти дальше и объявить переменную, которая соответствует нескольким протоколам, мы можем использовать protocolдекларативную: var object: protocol<ProtocolOne,ProtocolTwo>//etc Что,...

94
бинарные протоколы v. текстовые протоколы

у кого-нибудь есть хорошее определение того, что такое бинарный протокол? а что такое текстовый протокол на самом деле? как они соотносятся друг с другом с точки зрения количества битов, отправленных по сети? вот что говорит Википедия о бинарных протоколах: Бинарный протокол - это протокол,...

92
«Фатальная ошибка: нельзя соединить массив с Objective-C» - зачем вы вообще пытаетесь, Swift?

Я объявил протокол Swift: protocol Option { var name: String { get } } Я объявляю несколько реализаций этого протокола - некоторые классы, некоторые перечисления. У меня есть контроллер представления со свойством, объявленным так: var options: [Option] = [] Когда я пытаюсь установить это свойство...