Этот тег следует использовать только для вопросов, касающихся функций Objective-C или зависящих от кода на языке. Теги [cocoa] и [cocoa-touch] следует использовать, чтобы узнать о фреймворках или классах Apple. Используйте связанные теги [ios], [macos], [apple-watch] и [tvos] для проблем, характерных для этих платформ.
Objective-Cявляется язык объектно-ориентированного программирования, сочетающий в себе функции C(c) и Smalltalk(smalltalk ) . Это строгий надмножество C (любой действительный код C является в равной степени допустимым кодом Objective-C, с небольшим исключением, что id
является бесплатным идентификатором для использования пользователем в C, в то время как это ключевое слово в Objective-C), и он наследует свои объектно-ориентированные возможности от Smalltalk. Весь процедурный синтаксис идентичен синтаксису C, а весь объектно-ориентированный синтаксис является реализацией обмена сообщениями Smalltalk.
Objective-Cбыл создан главным образом Брэд Кокси Том Лав в начале 1980-х годов в своей компании Stepstone. В настоящее время он в основном разрабатывается Apple, Inc.
Objective-C- это высокоуровневый объектно-ориентированный язык программирования общего назначения, который добавляет обмен сообщениями в стиле Smalltalk. на язык программирования C. Это основной язык программирования, используемый Apple для macosи iosи их соответствующих API, cocoaи cocoa-touch.
Objective-Cнаследует синтаксис, примитивные типы и операторы управления потоком C и добавляет синтаксис для определения классов и методов , Он также добавляет поддержку на уровне языка для управления графами объектов и литералами объектов, обеспечивая при этом динамическую типизацию и привязку, откладывая многие обязанности до времени выполнения.
Привет, мир в Objective-C
#import <Foundation/Foundation.h>
int main(void)
{
NSLog(@"Hello World!");
return 0;
}
Синтаксис
Objective-C - это тонкий слой поверх C, и, кроме того, строгий надмножество C; можно скомпилировать любую C-программу с помощью компилятора Objective-C и свободно включать C-код в класс Objective-C. Objective-C получает свой синтаксис объекта из Smalltalk. Весь синтаксис для не объектно-ориентированных операций (включая примитивные переменные, предварительную обработку, выражения, объявления функций и вызовы функций) идентичен синтаксису C, в то время как синтаксис для объектно-ориентированных функций является реализацией Smalltalk- стиль обмена сообщениями.
Objective-C имеет много мощных функций, как описано ниже:
- Категории расширяют существующие классы.
- Протоколы и делегаты
- Блоки
- Работа с ошибками
- Свойства с инкапсуляцией
Ссылки
- Хорошие ресурсы для изучения Objective-C(сообщение о переполнении стека).
- Программирование с Objective-C
- Концепции в программировании Objective-C
- Руководство по программированию управления памятью какао, обязательное чтение, особенно часть о политике владения
- Изучите Objective-Cиз Cocoa Dev Central, вводного руководства по языку
- Объектно-ориентированное программирование с Objective-C
- Видео WWDC 2012 для Modern Objective-C и Переход на современную Objective-C
- Видео WWDC 2013 о достижениях в Objective-C
- Видео WWDC 2014 о интеграции Swift с Objective-C
- Расширенное руководство по программированию управления памятью
- Изучите основы Objective-C от CodeSchool
- Ry Objective-C Учебник
- Objective-C Руководство для разработчиков
- Objective-C учебники
- Шпаргалка Objective-C и краткий справочник
Часто задаваемые вопросы в теге Objective-C
- В чем разница между атомарными и неатомарными атрибутами?
- Как работает подчеркивание перед переменной в классе target-c какао?
- Получение даты от [NSDate date] на несколько часов
- Цель C Эквивалент PHP "Переменные переменные"
- NSMutableArray addObject не работает
- Цель C для Windows
- Цель C NSString * свойство сохранить количество странности
- Как добавить знак процента в NSString
- Передача данных между контроллерами представления
Книги
- Программирование в Objective-C
- Эффективный Objective-C 2.0: 52 специальных способа улучшить ваши программы для iOS и OS X
- Дзен и искусство мастерства Objective-C
Видеоурок
- Разработка приложений iOS 7 для iPhone и iPadСтэнфордским университетом - БЕСПЛАТНО < br /> С сайта: «Инструменты и API, необходимые для создания приложений для платформы iPhone и iPad с использованием iOS SDK. Дизайн пользовательского интерфейса для мобильных устройств и уникальное взаимодействие с пользователем с использованием технологий multi-touch. Объектно-ориентированное проектирование с использованием представления модели -контроллерная парадигма, управление памятью, язык программирования Objective-C ». (Подобные курсы также доступны для iOS 8 и 9, но только в Swift)