Articles tagged 'apple-development'
Page 2 of 4
State machines are used to model systems that can be thought of as a collection of states, and a collection of events that cause state changes. Many of the systems we want to model can be abstracted to a state machine. For example, elements in a Game...
Read More...
System libraries are typically defined using C, that means we need a way to make them available to Swift. In this post, we are going to explore how to use the Swift Package Manager to give us access to C libraries, be it system or user-defined.
Let...
Read More...
Long gone are the days when single process single thread was the norm. We now take multithreading for granted, we expect all our applications not to lockup when we interact with them. We expect them to handle multiple users at the same time, etcetera...
Read More...
Last week we discussed how to build XPC Services(the .xpc
bundles) inside your macOS applications. This week we are going to explore how to provide XPC services that can be used from other applications or tools.
To make the XPC service available to...
Read More...
We have access to many Inter-Process-Communication(IPC) mechanisms in macOS. One of the newest is XPC1. Before XPC a common way to use IPC, and provide services between processes, was through Sockets or Mach Messages (Using Mach Ports).
Nowadays,...
Read More...
Many components of macOS trace their roots back to BSD. One key aspect inherited from BSD is the Kernel Event Notification mechanism know as Kernel Queues (kqueue
s for short).
In the past, before kqueue(2)
1/ kevent(2)
2, when we wanted to track events...
Read More...
When we find ourselves listening for events, reacting to those events, and then going back to listening for more events, we have ourselves an Event-Loop. Having an event-loop is a common scenario. So common that Apple decided to provide us with a model...
Read More...
Apple provides many useful network frameworks. Network.framework
(you can check my previous article on Network.framework
if you want to see an example) is the latest. But sometimes we need to go deeper, and the abstractions might get in the way. In...
Read More...
There are many reasons to use more than one programming language in a project. In some cases, a lot of work has gone into building a framework (years maybe). Rewriting the whole framework to have the codebase in the same programming language, might...
Read More...
Apple's network APIs are many, the older APIs are well documented, and you'll find lots of examples. Not so much about the new Network
framework. One factor might be that the name is not that search-friendly. In this post, I'll explain how to use the...
Read More...
With advances in the frameworks and tools we use to develop software, creating a new app seems like magic. We just click a few buttons, and everything is created for us. I enjoy magic, but I think that sometimes we end up being Framework "users" without...
Read More...
I would like to change the template Xcode
uses to generate a git repository, but I haven't found how. So at the moment when I want to use my .gitignore
template I just pull it from a GIST.
This y my Xcode .gitignore template. I use the raw address...
Read More...