iOS - GNUstep(查看Foundation源码)

作为iOS开发,大家都知道iOS是闭源的,我们只能看到头文件,而看不到里面的实现。网上有部分iOS开源的代码,如:Runtime的开源代码
objc-runtime部分类截图:

001.png

但是这里公开的Foundation框架中只有NSObject的实现。假如我们想要查看NSString,NSArray,NSRunLoop,NSThread等Foundation这些类,是没有源码的。虽然通过汇编语言,一步步的跟踪也可以查看。但是汇编太过于晦涩难懂,所以这里推荐一个GNUstep

GNUstep是GUN计划的项目之一,它将Cocoa的OC库重新开源实现了一遍,并且开源出来了。虽然GNUstep不是苹果官方的源码,是GNU计划写的,但是还是具有一定参考价值的。

GNUstep源码下载地址:http://www.gnustep.org/resources/downloads.php

002.png

我们可以下载【GNUstep Base】,下载完成后打开目录Source-->Foundation 这里有许多Foundation的其它类,比如:NSArray,我们可以点击进去,查看到我们经常使用的方法及实现。

003.png
004.png

感兴趣的小伙伴可以自己去下载下GNUstep这个项目,去了解自己感兴趣的Objective-C类内部的实现原理。

GNUstep源码下载地址:http://www.gnustep.org/resources/downloads.php

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 《如何学习》韩焱解读;美.本尼迪克特.凯里;译者:玉冰。 001 遗忘是记忆的朋友,遗忘是一个垃圾信息过滤器,大脑...
    忆青说阅读 163评论 0 1
  • ①“想吃些什么?”楚天客气地问道,转手把菜单给了对面的老头。 对面留着白胡子的老头自顾自的吸着烟袋,显然跟周围的一...
    爱自学的老方阅读 321评论 0 8
  • 前几天去吃一家的驴肉米线,结果点了五串烧烤,发现钱不够了,照着往常的法子,希望能微信或支付宝转账,不料,店里的女工...
    吴王思贤阅读 202评论 0 0