Re: What is Core Foundation, and other terminology/history questions.
Re: What is Core Foundation, and other terminology/history questions.
- Subject: Re: What is Core Foundation, and other terminology/history questions.
- From: Jason Coco <email@hidden>
- Date: Mon, 18 Aug 2008 01:26:57 -0400
On Aug 18, 2008, at 01:09 , Sumner Trammell wrote:
Hi, can someone explain to me the philosophy/principles behind Core
Foundation? I'm just having a hard time seeing the overall
relationship between Carbon, Core Foundation, and Cocoa.
It's basically a C-language version of the Foundation Framework. For a
pretty good explanation of CoreFoundation, you can read this guide:
http://developer.apple.com/documentation/CoreFoundation/Conceptual/CFDesignConcepts/CFDesignConcepts.html#/
/apple_ref/doc/uid/10000122
A few (stupid) questions I have are:
+ Why was Core Foundation invented?
It was created to help facilitate cross-platform application
development as well as transitioning C applications to Foundation/
Objective-C. It's
also very useful if you're creating a library that is meant to be used
both by Objective-C applications and C applications.
+ What did developers use BEFORE Core Foundation, back in the NEXTSTEP
days? There was no Core Foundation back then, correct? Everything was
pure Obj-C/Cocoa?
Yes, in those days you used NextStep's Object-C framework to develop.
If you want to develop GUI's on Mac OS X you still have to use
either Cocoa or Carbon. CoreFoundation only provides functionality for
things in the Foundation Framework for Cocoa. It also provides
some base classes to the CoreServices Framework for Carbon.
+ When Apple and NeXT merged, the Carbon and Cocoa (before they got
those names) APIs needed merging? And so a common base was created?
And it is Core Foundation?
Sort of... it's easiest just to think of it as the C version of the
Foundation Framework (although I suppose that's a bit of an over-
simplification
since there are some things you need to drop down to CoreFoundation to
do even from the Foundation Framework... e.g., directly stopping
a RunLoop or adding a socket as a RunLoop source).
BTW, no questions are stupid when you're asking things like why, or
please explain. For more good information, however, I suggest reading
the above guide and then checking out the CoreFoundation section of
Apple's Developer Reference Library:
http://developer.apple.com/documentation/CoreFoundation/index.html#//
apple_ref/doc/uid/TP30000440-TP30000421
HTH, /Jason
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden