Objective-C是否有一个标准库? [英] Does Objective-C have a Standard Library?

查看:145
本文介绍了Objective-C是否有一个标准库?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大多数现代编程语言都有一个标准库?我的印象是,Obj-C没有合适大小的标准库,而是主要/全部依赖Cocoa,并且(加上不希望使用GNUstep的人)是为什么Obj-C仅在macs上使用的原因)?

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)?

这是正确的/在什么程度上?有标准的obj-c集合吗?

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

(请注意,我没有做过任何Obj-C编程,并且不太可能在不久的将来尝试它,我很好奇). P.S.有没有像样的非可可/努斯特图书馆?他们是非苹果公司吗?它们是开源的,有据可查吗?

(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?

推荐答案

与Outis的回答相反,Objective-C最初不是由NeXT开发的. NeXT在80年代中后期采用了Objective-C作为首选语言. Objective-C是由Brad Cox和Tom Love在80年代初期在Stepstone创建的.

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.

与该问题相关的是,当Cox和Love创建Objective-C时,他们的主要目标之一是构建一种可以支持完全组件化的软件模型的语言.也就是说,您可以从某处购买软件组件,然后将其插入应用程序以添加功能.

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.

在此基础上开发了ICPak 101和IIRC 102(或者说我不记得是201),这是Objective-C的标准库.它从来没有真正流行.

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.

很明显,NeXT和Apple一直是Objective-C背后的主要动力,因此,如今,可可基金会已成为Objective-C最受欢迎的标准库.它不是唯一的一个.仍然有一些正在使用的ICPak版本,实际上还有很多非NeXT/非Apple Objective-C项目.同样,在Linux上的少数项目中仍继续使用Objective-C,主要是通过GNUStep.

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.

通常,Objective-C旨在成为一种简单而又小的语言.随之而来的是相对简单而小型的库(比较STL或Boost to Foundation的大小).

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).

如果搜索"stes可移植对象编译器",您会发现David Stes是Stepstone所做的所有工作的延续,包括ICPak实现(再次使用IIRC,我已经很长时间没有对此进行研究了).

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).

这篇关于Objective-C是否有一个标准库?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆