Weekend good reads for Apple developers #2024/16

It is Friday, and that means – it is time for new pack of great articles on various development topics.

And one video by Christian Tietze – SwiftUI Kata Recreating DebugInfo Viewer.

https://www.youtube.com/watch?v=ksE5XPYGXY0
https://www.youtube.com/watch?v=ksE5XPYGXY0

And this is it for today. Come back next week for more!

Weekend good reads for Apple developers #2024/15

Another weekend comes with great pack of articles.

This is it for today. Come back next week – we'll prepare more interesting reads.

Xcode 15 with Swift 5.9 is released

Apple releases Xcode 15 with Swift 5.9 toolchain.

Xcode 15 includes Swift 5.9 and SDKs for iOS 17, iPadOS 17, tvOS 17, watchOS 10, and macOS Sonoma.

  • Swift macro support brings inline expansions and breakpoint debugging in the source editor
  • Git staging helps craft your next commit without leaving your code
  • String catalogs streamline localization with a single place to view and edit strings
  • Bookmarks help organize your favorite locations and searches in your projects
  • Test reports provide summary view, testing insights, and video playback for UI automation results
  • OSLog offers a structured and customizable logging mechanism in the debug console
  • Documentation Preview editor brings real-time preview for DocC content
  • Archive workflows streamline distribution with simplified export and upload to TestFlight and the App Store
Mac App Store – Xcode

Swift 5.9 is now officially released for supported platforms.

This is a major new release that adds an expressive macro system to the language and introduces support for integrating Swift into C++ codebases through bidirectional interoperability.

It also introduces parameter packs, an improved expression evaluator while debugging, enhanced crash handling, Windows platform improvements, and more.

Swift Blog

Mac App Store: Xcode

Release Notes: Xcode 15 Release Notes

Swift Blog: Swift 5.9 Released

Weekend good reads for Apple developers #2023/8

It's winter here in Bay Area today (it even snows somewhere here), so let's grab some warm beverage and get going.

Let's finish with interesting video on design process by David Smith.

https://youtu.be/BLEOBu2PaeA
Design process by David Smith

And that is it for today. See you next week!

Apple publishes C++ interface for Metal

Apple releases C++ wrapper for Metal.

Metal-cpp is a low-overhead C++ interface for Metal that helps developers add Metal functionality to graphics apps, games, and game engines that are written in C++.

Apple Developer

Highlights:

  • Drop in C++ alternative interface to the Metal Objective-C headers.
  • Direct mapping of all Metal Objective-C classes, constants and enums to C++ in the MTL C++ namespace.
  • No measurable overhead compared to calling Metal Objective-C headers, due to inlining of C++ function calls.
  • No usage of wrapper containers that require additional allocations.
  • Identical header files and function/constant/enum availability for iOS, iPadOS, macOS and tvOS.
  • Backwards compatibility: All bool MTL::Device::supports...() functions check if their required selectors exist and automatically return false if not.
  • String (ErrorDomain) constants are weak linked and automatically set to nullptr if not available.