Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
514 views
in Technique[技术] by (71.8m points)

cocoa - Does Objective-C have a Standard Library?

Most somewhat modern programming languages have a standard library? It is my impression is that there isn't a decent sized standard library for Obj-C , rather that it relies mostly/all on Cocoa and that (plus people not wanting to use GNUstep) is why Obj-C is only used on macs)?

Is this true/to what extent? Are there any standard obj-c collections?

(note I haven't done any Obj-C programming and am not to likely to try it in the near future, I'm just curious). P.S. are there a any decent non-Cocoa/Gnustep Libraries? are they non-apple, are they open source, well documented?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Contrary to Outis's answer, Objective-C was not originally developed at NeXT. NeXT adopted Objective-C as the language of choice in the mid to late '80s. Objective-C was created by Brad Cox and Tom Love at Stepstone in the early '80s.

Of relevance to the question, when Cox and Love created Objective-C, one of their primary goals was to build a language that could support fully componented software models. That is, you would be able to buy a software component from somewhere and plug it into your application to add functionality.

Out of this was developed ICPak 101 and, IIRC, 102 (or 201, I don't honestly remember), which was a bit of a standard library for Objective-C. It never really caught on.

Clearly NeXT and Apple have been the primary motivating forces behind Objective-C and, thus, today Cocoa's Foundation is the most popular standard library for Objective-C. It isn't the only one; there are still versions of the ICPak in active use and there are non-NeXT/non-Apple Objective-C projects that are actually quite large. As well, Objective-C continues to be used by a handful of projects on Linux, mostly via GNUStep.

In general, Objective-C is intended to be a simple and small language. Out of that comes relatively simple and small libraries (compare the size of, say, STL or Boost to Foundation).

If you search for "stes portable object compiler", you'll find David Stes's continuation of all that Stepstone did, including an ICPak implementation (again IIRC -- I haven't looked into this stuff in a long time).


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...