The main advantage that
UICollectionView has over
UITableView is that you have full control over its layout. If you are used to working with
UITableView you can get up to speed with
UICollectionView fast as a big part of the API looks quite familiar to that of
UITableView and the build in layout is great for most use cases. However the exiting part of creating custom layouts will be new and can sometimes get quite complex.
A QR code, short for Quick Response code, is a two dimensional barcode. Because it stores information in both the horizontal and vertical direction it can contain more information than a traditional barcode. It can for example store a url which deep links to a certain page in your app.
With App extensions iOS provides us with a powerful way to make the core functionality of our app available for use from system apps and apps from other developers. Instead of switching between apps they provide the user with an opportunity to use your app in the context of another app. With a share extension for example you could share images from the photos app straight to your app.
We all enjoy fast and responsive apps that feel good when you use them. Therefore as iOS developers we spend a lot of time on delivering the best possible experience to the user. This becomes extra important when your application has to perform some long running operation, for example downloading a large video. Depending on the size of the download, speed of the user’s internet connection, or hardware this could take a while, which can be frustrating for the user. We can improve such an experience by giving the user a sense of the current work that is happening and how far that work has progressed by using a progress indicator.
Core Data is controversial to many developers. Some love it while others think it is too difficult or that it contains too many bugs. Personally I enjoy using Core Data. Out of the box it provides a lot of functionality needed for managing the model layer of most applications and because it is supported by Apple it saves us from adding another third part dependency to our projects.