Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode: Copy Headers: Public vs. Private vs. Project?

I'm building a Cocoa Touch Static Library. How should I decide whether to copy a header file as public, private, or project?

like image 661
ma11hew28 Avatar asked Sep 16 '11 01:09

ma11hew28


1 Answers

Public: The interface is finalized and meant to be used by your product’s clients. A public header is included in the product as readable source code without restriction.

Private: The interface isn’t intended for your clients or it’s in early stages of development. A private header is included in the product, but it’s marked “private”. Thus the symbols are visible to all clients, but clients should understand that they're not supposed to use them.

Project: The interface is for use only by implementation files in the current project. A project header is not included in the target, except in object code. The symbols are not visible to clients at all, only to you.

Source: Xcode Developer Library > Tools & Languages > IDEs > Project Editor Help > Setting the Visibility of a Header File

like image 154
Constantino Tsarouhas Avatar answered Sep 30 '22 18:09

Constantino Tsarouhas