Предшественник к обучению Цель C

0

Я хочу изучить Objective C, но я хочу сделать это правильно. Прежде чем начать, должен ли я сначала изучить другой язык? (Я думал C/C++).

Очевидно, это довольно субъективно, но любая помощь ценится.

  • 1
    Вероятно, C, так как цель C является подмножеством C
  • 2
    Знание C совсем не больно, на самом деле многое проясняется - есть несколько мест, где люди говорят: «Почему на самом деле Objective-C делает это так», где кто-то со знанием C говорит «конечно» это сделано из-за C ". Здесь много сообщений, которые были бы очевидны, если бы все программисты Objective-C знали, что C. C ++ гораздо менее важен; он понадобится вам только в том случае, если вы используете библиотеки C ++ и, возможно, вам никогда не придется писать код C ++ самостоятельно.
Показать ещё 5 комментариев
Теги:
cocoa

3 ответа

1

Я предлагаю изучить C, потому что все, что является законным в C, является законным в Objective C. Большая часть синтаксиса C передается Objective C (кроме @). Указатели очень актуальны в C, поскольку они находятся в Objective C, поэтому хорошее понимание указателей из C является обязательным. C - это процедурный язык, а Objective C - объектно-ориентированный. Языки, такие как Java, С# и C++, облегчат вам состояние ОО, критическую часть Objective C.

Edit: Если вы действительно хотите изо всех сил, изучите Smalltalk, так как это язык, на котором Objective C получил свои идеи обмена сообщениями.

0

Objective-C построен поверх C, это C с добавлением дополнительных материалов. Вы можете написать чистый C-код в файле.m *, и можете ожидать его работы, и он работает. Итак, чем больше вы знаете о C, тем больше вы понимаете Objective-C.

Например, кто-то спросил меня, как работает следующая строка кода в Objective-C:

NSString *string = @"Hello, World!"; //**

В принципе, он спрашивал меня, как я могу назначить строковый литерал @"Hello, World!" к переменной типа указателя. Но если бы он прошел через С, не было бы необходимости задавать этот вопрос. Поскольку в C вы можете написать следующую строку кода:

char *string = "Hello, World!";

Он фактически назначает указатель на char array - "Hello, World!" на переменную string которая имеет тип указателя курса.

Не только это, Objective-C сильно использует блоки, а снова блоки - это C. То же самое, указатели на функции, структуры и т.д. Все исходят от C до Objective-C.

Objective-C также использует синтаксис printf когда он отправляет сообщения на консоль.

Так да. Обучение C сначала определенно помогает вам хорошо понимать Objective-C.

* Файлы Objective-C обычно хранятся с расширением.m

** Мы используем знак @ чтобы компилятор мог различать, которые являются строками C (без начала с @) и которые являются объектно-C-строками (со стартом @).

-2

Не изучать C++ раньше! Это может смутить вас и не поможет понять Objective-C. Если вы хотите почувствовать объектно-ориентированную часть Objective-C, вам стоит взглянуть на Smalltalk. Smalltalk отлично подходит для новичков, но, к сожалению, не слишком много учебных материалов, которые ориентированы на взрослых.

Однако я бы рекомендовал изучить Objective-C, не изучая ничего в первую очередь. Есть несколько книг и курсов, которые сосредоточены на этом.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню