Hello guys, In this post, I will talk through on installing Swift environment for programming on Raspberry Pi. The Swift version will be set up is Swift 4.1.1. Do you feel excited? Read the full story here.
Do you think about writing a program in Swift on Raspberry. Why not? Let's make it fun. I have spent the weekend to try out. My target was set up the environment for Swift programming on my Raspberry Pi 3B+.
Last month, I wrote a post about How to setup SwiftNIO for iOS and tvOS. Basically, I manually create all the targets in a new project, set up everything from scratch. It takes time and I wonder there is a better way? I go back to the start point, try to compile the original Swift-NIO project, finally I see how it works.
Since the first Swift release in 2014, It seems like Swift is a super rock star which takes over the stage. As advertising, Swift is more modern, elegant and even faster. Well, they talk it up a lot. More and more companies have decided to migrate to Swift. Many many senior developers have moved away from Objective-C. Fresh iOS developers are told to learn Swift rather than Objective-C. However, Objective-C won't be dying. It will last long for many reasons. Let's go through the following reasons which I recap in this post
I look over Swift NIO, and I see it kind of potential. Written on the top of POSIX socket. Simple, lightweight. Some parts of its core are written in C or reuse C library. It even reuses the NGNIX's HTTP parser in its core. I have found out that this parser is used widely in some well-known software and open sources. Some instances are NodeJs's parser, IBM-Swift's Kitura-net,...
WatchOS app is an extension, it doesn't stand alone. It basically needs a host app. The WatchOS project usually is a sub-project which eventually its product will be attached to the main app. But XCode doesn’t give us an option to keep the extension out for Release Build. I’m going to write a tutorial to handle this situation.
In Swift, both "if" and "guard" keywords can handle unwrapping optional type. "if" keyword is enough to handle, why is "guard" available?