Любые предложения о том, где учиться C онлайн в подготовке обучения Objective-C - PullRequest
0 голосов
/ 28 октября 2010

Я программирую PHP и mySQL уже около 8 лет. Я понимаю и использую современные программные архитектуры и ООП в своих проектах ежедневно. Я решил, что хочу узнать что-то новое.

Вчера я наконец решил, что хочу изучать C и, в конечном итоге, Objective-C, чтобы начать создавать приложения для Mac / iOS. (Вы бы порекомендовали C, C # или C ++? Я просто предположил, что C будет лучше.)

Тем не менее, я скучаю по дням программирования БЕЙСИК-игр в крестики-нолики на своем графическом калькуляторе, ха-ха. Я хотел бы получить очень хорошую основу в C, возможно, создать несколько игр для командной строки, а затем в конечном итоге перейти к программированию с графическим интерфейсом с Objective-C

Где бы вы порекомендовали мне начать смотреть онлайн. Я не просто хочу понять, как заставить код работать в C, но я также хочу понять, как и почему код работает.

Спасибо и пожелай мне удачи: -)

Ответы [ 7 ]

2 голосов
/ 28 октября 2010

Это не онлайн, но чтобы изучать C, я рекомендую вам прочитать Kernighan и Ritchie's Язык программирования C, 2-е изд. (также известный как "K & R").Это тонкий объем, который передает основы C89.Вы, вероятно, можете найти его бесплатно в своей местной библиотеке;это то, что я сделал, в любом случае.C99 изменил несколько вещей, но ядро ​​языка осталось прежним.

Я не помню, попадает ли он в детали того, как исполняемый файл загружается и связывается, и как вообще используются стек и куча,Для этого ознакомьтесь с последней версией Patterson and Hennessy's Организация и дизайн компьютеров: интерфейс аппаратного и программного обеспечения.

Если вы уже понимаете ООП и выЕсли вы хорошо знакомы с C, то поднять Objective-C так же просто, как читать через Apple Язык программирования Objective-C и смотреть на несколько примеров.

Objective-C прост, но платформы Mac / iOS являются гигантскими.Большая часть вашего времени на программирование для Mac / iOS с использованием Objective-C будет потрачена на изучение фреймворков и того, как взаимодействовать со средой исполнения (NSApplication / UIApplication, NSRunLoop, цепочка респондента и обработка событий и т. Д.).Вы можете обойтись с документацией Apple, но Программирование Какао для Mac OS X от Hillegass (в настоящее время в его третьем издании) является стандартным введением не-Apple для программирования на Mac OS X для настольных ПК.Четкого стандартного введения в программирование на iOS еще не появилось, но я рекомендую Conway и Hillegass Программирование для iPhone. После прочтения другой книги Hillegass вы будете знакомы с дидактическим стилем, используемым в iPhone.Программирование .

1 голос
/ 28 октября 2010

Не учите C, чтобы начать изучение Objective-C, этот шаг не нужен.

Я пришел из C #, и когда я только начал изучать Objective-C, у меня было мало опыта в C,что не мешало мне работать в Objective-C.Самое важное, что у вас есть, это ООП и архитектура программного обеспечения.Это продвинет вас дальше, чем изучение C.

Я обнаружил, что лучшие ресурсы для изучения Objective-C и, в частности, для iOS, можно найти в документации Apple:

Еще один замечательный ресурс - Какао с любовью , который написан действительно хорошо и имеетнекоторый замечательный контент, в частности:

Кроме того, я нашел много людей, таких как AppsAmuck демос.Лично я обнаружил, что они написаны довольно плохо, но есть несколько хороших примеров для конкретной области работы с анимацией, URL-адресами и т. Д.

1 голос
/ 28 октября 2010

Если вы хотите создавать приложения для Mac / iOS, просто изучите цель C. Я не думаю, что вы «переместитесь» с C на obj-c, скорее вы просто выучите два разных языка программирования. Работа в C сильно отличается от работы в C ++ или obj-c. Овладение C поможет вам стать ... мастером в C, а не в obj-C.

Я чувствую, что все равно, что сказать, что сначала нужно научиться ездить на мотоцикле, чтобы научиться водить машину. То, что у них обоих есть колеса, еще не значит, что они так работают.

С другой стороны, если вы чувствуете, что C будет вам полезен по какой-то другой причине (что вполне может быть), есть много замечательных книг по C. Я рекомендую язык программирования C от Kernighan & Ritchie (на который часто ссылается только K & R).

0 голосов
/ 29 октября 2010

Если вы действительно хотите изучать C до Objective-C, сделайте это. Для многих это ненужный шаг, но вы будете использовать его в конце концов. Если вы решите, что хотите пропустить изучение C и погрузиться в Objective-C, Книга Кочана - это нежное введение "с нуля".

Для Си будет лучше получить книгу, чем пытаться найти онлайн-учебники. Классический текст (как все здесь говорят) - книга K & R C . Это хорошо известно как стандарт. Проблема в том, что он очень сухой и не очень хорош для самообучения. Это скорее учебник.

Лучшая книга для самообучения - К.Н. Программирование King's C: современный подход . Это дорого, но очень хорошо проработано, подробно, в конце каждой главы есть вопросы для понимания. Я узнал об этой книге от парня, который написал классическую книгу Objective-C, Aaron Hillegass . Он понимает преподавание и порекомендовал его, потому что это отличная книга для обучения. Это поможет вам подумать о C и программировании, где K & R просто сообщит вам.

Лично я отказался от своей цели изучения C для программирования на iPhone и только что узнал Objective-C из книги Хиллегаса (и книга Джеффа Ламарша ). В некоторых случаях я путаюсь с тем, что мне приходится писать или понимать код на C, но это не было большим препятствием.

0 голосов
/ 28 октября 2010

Скотт Стивенсон Cocoa Dev Central содержит множество полезных руководств по какао, включая руководство по программированию на C для программистов какао и ссылки на несколько других полезных ресурсов по этой теме.

Еще один хороший пример - Мастера Пустоты Ули Кустерера, давнего программиста Mac.

0 голосов
/ 28 октября 2010

Я действительно не думаю, что вам нужно слишком углубляться в C, просто потому, что вам обычно не нужно использовать код C при разработке в Objective-C (или, по крайней мере, не те функции, которые вы изучите).Начните непосредственно с Objective-C и попробуйте заполнить дыры именно тогда, когда это необходимо.

Хотя Objective-C считается расширением языка C (с точки зрения его грамматики), он заменяет почти все, что вам нужно сделать вC с Objective-C и его типами, так что нет необходимости использовать его так часто.Обычно это нужно при взаимодействии с чем-то низким уровнем, но не так часто (поскольку обертки Obj-c присутствуют практически во всем).

0 голосов
/ 28 октября 2010

Я бы порекомендовал изучить Objective-C, потому что он настолько отличается от C. Вы должны знать большую часть C-синтаксиса, разрабатывающего PHP.

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