I am really going to have to start playing around with the SwiftSyntax library! It looks like I'd be able to write some real code timesavers with it.
I've been having a tough time in Swift with the Struct vs. Class issue. Unlike Java and Objective-C, Swift allows value type "classes" known as Struct types. These behave very similar to C++ objects that are created without dynamic memory allocation - in other words they're created on the stack instead of the heap. This … Continue reading Swift Struct vs. Class
In my previous post I talked about Swift's handling of strings and the problems making the characters of a string randomly accessible because of Swift Strings being Unicode compliant. Another part of the issue, and the reason that we can think of Characters in Swift as just Strings in and of themselves, is the concept … Continue reading What in the Hell is a Grapheme Cluster?
Okay, I really do understand the plight. Honestly I do. I mean, I get it! Strings in Swift are not randomly accessible collections of bytes like they are in C or 16-bit words like they are in Objective-C or Java. In Swift a String is a collection of grapheme clusters. So, why not allow you … Continue reading Thoughts on Strings in Swift
Learning Swift is a lot easier thanks to Playgrounds!
I've started using Jazzy to generate documentation for my Swift and Objective-C projects. If you do development on the macOS platform then I highly recommend using Jazzy. It's by far the easiest to use. Here's a sample: Rubicon ► Extensions ► String ► split(on:limit:)
After playing with Swift a bit here are my first impressions of the language. There is definitely a lot to like about it! There's also a few things that annoy me. 😎 But first I'll start out with a giving you a 1,000 foot overview of the language itself. Syntax aside, Swift and Objective-C 2.0 (as … Continue reading Swift – First Impressions
I've made a major milestone in my personal project Rubicon. I've gotten it where it will build on Linux as well as Mac OS X. More info is in the readme file. Check it out: https://github.com/GalenRhodes/Rubicon
Previously in Avoiding an Objective-C Pitfall #1 I discussed a more stable way of creating singletons in Objective-C. As with all things in the world of Apple there's always an easier way and that way comes to us via two very powerful yet unnoticed (in the Windows and Linux communities at least) APIs that Apple has contributed to … Continue reading Always an Easier Way