title: SwiftUI and Combine what is the difference between Published and Binding
body: <p>I know in which situations to use <code>@Binding</code> and <code>@Published</code></p>
  <p>like in <strong>ObservableObject</strong> I generally use <strong>@Published</strong>, or <code>objectWillChange.send()</code></p>
  <p>And <code>@Binding</code> in subviews to propagate changes to parent</p>
  <p>But here I have snippet which seems to be working that uses both <code>@Binding</code> and <code>@Published</code>
  in <strong>ObservableObject</strong></p>
  <p>I consider what is the difference.</p>
  <pre><code>@Binding var input: T
  @Binding var validation: Validation
  
  @Published var value: T {
      didSet {
          self.input = self.value
          self.validateField()
      }
  }
  
  init(input: Binding&lt;T&gt;, rules: [Rule&lt;T&gt;], validation: Binding&lt;Validation&gt;) {
      self._input = input
      self.value = input.wrappedValue
      self.rules = rules
      self._validation = validation
  }
  </code></pre>
  <p>As I tested it seems that if I bind TextField to @Published then didSet is called but if I bind it to @Binding then didSet won't be called.</p>