I was hesitant to post the prior entry- so many unknowns for me about SwiftUI. It was scaring me how I had confusion with the breakpoints, this lesson wrapped things together for me so I will explain where I went wrong and explain it here:
This lesson introduces the idea of a custom Binding. This is my first time learning about this idea and how powerful it can be. In the sample we have been using for the past few lessons, we move to DetailView for starting out. On line 8 we have a private var recipe which is used as a ‘source of truth’ and- from this view we are pushing this truth to other views. Does this make sense? We are also loading getters and setters– which explains why that ’emptyRecipe’ extension function kept being called. It is happening right there- on lines 11, 13 & 16. We are modifying our recipe directly from DetailView. What if we had hundreds of recipes to work with?

Seeking to tinker with this idea, I duplicated the number of recipes in the JSON, incremented the id count for each, and re-ran the program. We are running DetailView for each item in our list- even though for loading views (or anything else) we should load only what we need. Is it possible to create a better example, one where we can better grasp using @State, @Binding, or Binding<T>? The example presented is interesting. I am curious architecturally, is there a setup that could be safer, load only as needed and be able to be reproduced on demand? My head is kind of spinning, I can’t get over the fact that as of this point, I don’t think I want to do things this way. Maybe I’d just need a better example of doing this right to increase my comfort. Even when falling back to the prior view, DetailView is loaded again a few times (I counted six).
The lesson closes with mentioning the difference between having a computed property Binding– to me the description is cryptic.

The issue I have with the statement is the bottom. “… the dollar sign ($) prefix tells SwiftUI to pass the projectedValue, which is a Binding”. Okay- does that mean @Binding where we are still using the $ prefix? Off the strength of this tutorial, I’d feel better just diving into documentation after having the code seemingly bounce everywhere and leave me dizzy. So that’s where I’m going.