chatterclient from the networking chapter works fine if you like living on the command line. Most Mac users (understandably) want to use GUI programs. CFChatterClient is a GUI version of the chatterclient. It uses CFRunLoop and CFSocket to communicate across the network without blocking the application runloop.
In Xcode, create a new Cocoa Application project called CFChatterClient. Edit MainMenu.xib and lay out the UI as shown in Figure 15.2.
Figure 15.2 CFChatterClient user interface
Example 15.1. CFChatterClientAppDelegate.h ...