2014-06-11 1 views
2

스위프트 헤더는 싱크 프로토콜은신속한 Sink 프로토콜이란 무엇입니까? 이 스위프트와 코코아 디자인 패턴에 대한 사용되어야 하는지를

protocol Sink { 
    typealias Element 
    func put(x: Element) 
} 

싱크 프로토콜은 무엇으로 정의하고있다? 내가 그이 프로토콜을 구현 말할 수

있는 유일한 방법은

struct IntEncoder : Sink { 
    var asInt: UInt64 
    var shift: UInt64 
    func put(x: CodeUnit) 
} 
+0

이제 프로토콜이 비어있는 것 같습니다. –

답변

3

("부엌 싱크대"에서와 같이) 싱크는 생산자/소비자 쌍의 소비자 측을 나타내는 것입니다. 그것은 단지 일종의 입력을 받아들이는 추상 인터페이스입니다. 따라서 객체를 생성하는 모든 객체에 객체를 전달하는 방법으로 Sink을 제공 할 수 있습니다. 이것은 생산자가 소비자가 물체를 통과해야하는 최소한의 지식입니다.

대기열 및 세트는 입력을 저장하는 단순 싱크의 예입니다. 네트워크 연결 또는 로거는 즉시 입력을 처리하는 싱크 역할을 할 수 있습니다.

+0

참고 : 이것은 또한 nodejs에있는 개념입니다. http://bl.ocks.org/joyrexus/10026630 (ps - 저자가 아니며 해당 작성자를 알지도 못합니다 :) – Jiaaro

+0

as sink as 주방 싱크대에 있지만 싱크대, 싱크대, 싱크대 같은 싱크대가 소스입니다. –

+0

물론 이죠, 그렇지만 주방이 가라 앉지 않으시겠습니까? 그것들은 모두 같은 개념으로 명명되었습니다. – nschum

관련 문제