Using one tab per task , instead of one tab per file, and applying Xcode behaviours to automatically switch between them.
(via Triangle CocoaHeads May: Xcode Behaviors Presentation – Jay Thrash)
See also How to make Xcode’s UI work for you (maybe)
( Source: https://player.vimeo.com/ )