Steve BarnegrenOwn your abstractionsIf you want to test your Swift code, at some point you’re probably going to need to make some mocks in order to isolate a type that you’re…Sep 12, 2019Sep 12, 2019
Steve BarnegrenThe Humble TableViewI’ve been thinking about tableviews recently. Table views and collection views have become the default way to build UI for many types of…Dec 5, 2018Dec 5, 2018
Steve BarnegrenInjecting a bit of OptionalityWhen I first started writing Swift, I felt like Optionals were a constant pain point. Everything seemed to end up being Optional, resulting…Sep 13, 2018Sep 13, 2018
Steve BarnegreninITNEXTDelegates vs Closure CallbacksRemember how awesome the delegate pattern was in Objective-C? Enabling classes to be super reusable by delegating out the bits that you…Aug 16, 20183Aug 16, 20183
Steve BarnegrenFixing Xcode’s Comment Wrapping ProblemI’m sure we’ve all come across the comment wrapping problem. You write a long comment that looks like this:Jun 28, 2018Jun 28, 2018
Steve BarnegrenBetter Xcode Build NumbersiOS and macOS apps have a version number and a build number. Typically you see these in Xcode or iTunes Connect represented something like…May 24, 20181May 24, 20181
Steve BarnegrenLazy Arguments in SwiftHow can you call a delegate or closure callback, passing in arguments that are lazily calculated? This was an issue that I had recently, so…Apr 28, 20181Apr 28, 20181
Steve BarnegrenFunctional Data Transformations in SwiftAll applications need to do some sort of data transformation. It’s unlikely that the information that you get from your api or database…Mar 23, 2018Mar 23, 2018