Какао / Objective-C - Могу ли я как-то увидеть файлы реализации? - PullRequest
4 голосов
/ 07 января 2009

Я верю, что могу узнать что-то одно или два, если смогу увидеть файлы реализации (файлы .m). Есть ли способ, которым я могу просмотреть файлы NSString.m или NSNumber.m? и другие? Если я пытаюсь найти эти файлы с помощью прожектора, я ничего не получаю.

Ответы [ 4 ]

8 голосов
/ 07 января 2009

Нет, большинство (все?) Реализаций библиотеки Какао распространяются только в скомпилированной двоичной форме. Вы можете разобрать их, но это, вероятно, против лицензионного соглашения Mac OS X, и это также не поможет вам понять их.

Вы могли бы взглянуть на Cocotron , который является реализацией Cocoa с открытым исходным кодом. Это будет не совсем то же самое, но, по крайней мере, для базовых классов, оно будет практически идентичным.

6 голосов
/ 07 января 2009

Многие из базовых классов какао, такие как NSString и NSNumber, реализованы в базовом фундаменте и «беспошлинно соединены» с классами target-c. Основой является API C (не ObjC), а source доступен как часть проекта с открытым исходным кодом Darwin.

Итак, чтобы увидеть, как NSString или NSNumber реализован под капотом, перейдите по ссылке выше и взгляните на CFString и CFNumber соответственно (вам понадобится учетная запись разработчика Apple, но регистрация бесплатна).

2 голосов
/ 07 января 2009

Также стоит взглянуть на источники mySTEP .

Это помогло мне, когда я делал что-то, что подклассило NSMatrix некоторое время назад.

1 голос
/ 07 января 2009

Я думаю, они уже скомпилированы в библиотеки.

Я просто быстро проверил мой Mac и не смог найти файл NSString.m. Вы используете документацию XCode? Я считаю, что в нем есть почти все, что мне нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...