@gogreen37 Thanks very much for your question, and my apologies for the delayed response.
I honestly don’t see much of a difference between the two approaches, except that I can see someone who is used to doing things from an Objective-C background would prefer using the %@ approach, whereas the “Swifty” approach would be to use String Interpolation.
The one thing I will say is that %@ EXPECTS a String object (as opposed to a primitive like int), whereas () will cast WHATEVER is inside the brackets into a String. Sort of a “one size fits all” solution. So to answer your question here, I would say the %@ approach is perhaps being used to ensure that ONLY a String object is displayed, and nothing else, whereas () would be used as a convenience method which could be applied when one does not have to worry about the type that is going to be displayed.
Neither is wrong, both are legitimate syntax to use. It’s really a matter of preference. The only thing I would say to any developer is, whichever approach you use, be consistent in using that approach throughout your project.
I hope this helps!
All the best!