tags:

views:

29

answers:

2

.framework bundles contain header files which are also included when then framework is shipped. For instance, apps using Growl.framework end up installing the framework along with the app. This comes will all the headers and versioning foo, leading to bloat in download size.

Do most of you OSX developers end up cleaning the .framework included with your apps to remove un-needed files, or is this considered bad practice for some reason?

A: 

Typically, the headers are fairly small, compared to the actual libraries, so the size doesn't matter much. I would expect that this is the reason why framework creators don't particularly worry about this detail. For example, in Python, the framework will contain what "make install" puts into the installation, so you get the same set of headers in the framework as you do in a regular Unix installation.

Martin v. Löwis
A: 

I tend to leave the headers intact. The way I see it, most people have fast enough internet connections to handle downloading a little bit of extra data, and hard drive space is cheap.

If no one ever wants to look at the headers, then you've wasted a little bit of space. However, if you strip the headers and someone, for whatever reason, does want to look at them, there's no way to get them back. I'd rather provide something unnecessary rather than intentionally take away something that someone might want eventually.

Matt Ball
That makes complete sense if you're shipping the framework. If you're shipping an app to consumer, the consumer shouldn't case about looking into your header.
psychotik
That's true, in theory. However, I know that I, at least, often times like to inspect the package contents and embedded frameworks of various apps I use in order to get a feel for how that app is doing certain things (that's how I discovered RegexKit, for example). It may not be a common case, but it does happen.
Matt Ball