Utility Classes
Utility Classes

Why this app?

While developing the Remote Control Flight Log app I realised that I was re-creating many of the views I had used in other apps and was creating some new views that would, undoubtedly, be useful in future apps. It seemed crazy to copy and paste these views around so, based on what I would have done in my Windows days, I looked to create a framework to put them in and share them. That resulted in the Utility Viewsframework.

Fast forward to Flight Log v2 and I realised that I was doing the same sort of thing with my logging class and the principle of creating a framework with useful classes in it would also work. Hence the Utility Classes framework was created.

Key Learning Points

What did I want to achieve?

The concept around creating a framework was covered in the Utility Views framework project, So my learning goals were around creating a specific, clean, API for logging in my apps. The key points I took away were:

  • Creating a function specific API for logging.
  • Remove a dependency on SwiftyBeaver for logging
  • Creating docc documentation.

My framework library contains a WriteLog class that can be used for logging activity at several levels in any app.

What is in it

And the end result is...

And this is what I ended up with.

WriteLog

I have used SwiftyBeaver for logging in previous apps. It has the downside of adding a third party dependency to my code and introduces an overhead that I don't need for development. Remember, this isn't supposed to be an app log for use on released code, just a lightweight way to log actions during development. SwiftyBeaver was total over-kill for this but was also a great tool.

Log Display

WriteLog is my lightweight alternative that gives me just enough logging to be useful without the overheads of a web logging system.

Source code

No secrets here

If anyone wants to take a look at the code, it's up on GitHub in my Utility Classes repo.

Testimonials
Testimonials

Am I really any good?

Don't take my word for my abilities, take a look at other peoples opinions about me.