This sprint was titled, Intermediate Swift. That got me thinking so everything we had done for the past 13 weeks was all beginning swift. There is so much to learn about this, yikes!! But it’s ok I can get through this.
We started off learning about swift generics, luckily I had done some reading and video watching about this so I was able to get past what it is. Which is basically creating your own function or data type and being able to assign any already existing type or even your own type. I know that sounds kind of confusing.
It makes more sense to think of a function. When we first start we can create a function that takes an Int and returns an Int. If we wanted to use a double instead of an Int we would have to rewrite the whole function again. However, with the power of generics, we can write the function once and be able to use it with an Int, Double, String, or whatever we wanted to. Having a big picture understanding, helped to understand the examples and the other purpose of generics like creating my own type and restricting it.
In the next lesson, we got a brief introduction to SwiftUI, This coincided with a workshop by Paul Hudson on SwiftUI. It was perfect and such a great interface to use, too bad it only works with iOS 13 and higher but that doesn’t mean it can’t be useful to know. I found this great set of articles that I have been going through to just keep practicing with swiftUI. I can see the potential that swiftUI has and would love to build an app using it, so why not maybe my next app will be done in swiftUI.
That was all the first week. The second week was more theoretical than hands-on so it was harder to understand. We learned about concurrency and how to make it work and when it’s not a good idea to use. It’s still a bit fuzzy in the details but I have a decent higher understanding of it is that we don’t want all of our work to be done on the main queue of our phone because it will slow it down and this will make the users mad and they will delete the app. So what we do is send requests such as fetching data, or anything that has nothing to do with drawing/rendering of the UI.
That led to our sprint challenge. This time around we had to build an app almost all from scratch. I was happy that my storyboard only took me 30 minutes and then the rest of the 3 hours was spent building out the functions and logic of the app. I had to look up some stuff but I am amazed at how much I remember off the top of my head. I was so happy that I didn’t care that I didn’t finish all the concurrency stuff in the 3 hours. I worked on it on Saturday morning. Another two weeks done and now we move on to Code Quality which I believe is debugging and Testing. Testing is somewhat new to me, I did do some when I was learning react but I was not comfortable so these next two weeks should be interesting.
I’m still loving every minute of it all, and don’t regret my choice in attending Lambda at all.