Как грамотно начать погружаться в разработку под iOS и что для этого нужно?

Здравствуйте, друзья.

Решил кардинально сменить сферу своей деятельности (оптимизация и продвижение сайтов, и интернет-магазины) и серьёзно подойти к iOS-разработке. Какого-то конкретного опыта в программировании нет вообще, всё только в общих понятиях на уровне базовой теории. К самой разработке подхожу с точки зрения профессионального развития и заработка на этом, а также с точки зрения просто интересного дела и возможных своих проектов.

Тостер по моей теме читал, поэтому вопросов а-ля "какие книги читать?" задавать не буду.

1. Насколько срочно мне понадобится MacBook для погружения в разработку? Однозначно знаю, что без него в итоге никуда. Дело в том, что купить не проблема (не миллионер, но для серьёзных профессиональных перемен готов потратить 1000-1500$ на рабочую технику), но есть ли смысл, не зная ещё абсолютно ничего по теме, в таких начальных тратах? Достаточно ли, скажем, установить на Windows 7 (если что: HP, 2 x 1.7 ГГц, 2 ГБ памяти, встроенное видео) какой-либо эмулятор и хотя бы первые пару месяцев разобраться с начальной базой и основными понятиями?

2. Насколько мощный нужен MacBook для iOS-разработчика? Скажем, достаточно ли будет MacBook Air 13" (Intel Core i5, 4 Гб, 128 Гб (SSD), Intel HD Graphics 5000)? Или смотреть какой MacBook Pro 13'' Retina (Intel Core i5, 8 Гб, 128 Гб (SSD), Intel Iris graphics 5100)? Или, может, ещё что мощнее нужно (процессор i7, памяти 16 Гб, видео не встроенное)? Понятное дело, что если деньги позволяют, лучше брать пошустрее, но, к сожалению, покупать MacBook топовой конфигурации -- ну совсем сейчас неудобно в финансовом плане. С другой стороны, взять старенький MacBook у кого-то с рук, чтобы потом менять его через полгода -- тоже не очень хочется.

3. Нужен ли сам девайс с iOS для старта обучения разработки? Или на Windows 7 / OS X можно будет как-то эмулировать iPhone, чтобы смотреть, что получается? Или это как-то вообще по-другому делается? :-) Опять же, купить не большая проблема, но нужно ли мне это сейчас? И, если он необходим, ещё один смежный вопрос: покупать что-то свежее (5 / 5s) или не важно (4s)?

4. Есть ли необходимость в классических курсах по Objective-C? Или же лучше самостоятельно разбираться с нуля? Живу в Минске, курсы ничего особенного не представляют, всё обычное (подходы, методики, общий уровень). Ещё знаю, что программирование -- это постоянное самообучение. Вопрос: есть ли смысл пройти месячные курсы, чтобы получить стартовую базу, а уже дальше двигаться самостоятельно? Или же без проблем можно старт взять дома?

5. Как планировать процесс самообучения? Ничего нового: прочитал -- попробовал сделать, непонятно -- поискал в интернете, сильно непонятно -- вперёд на форум? Просто примерно так давно я учил HTML. Но, понятное дело, Objective-C дело серьёзное, как и все смежные технологии, и будет ли толк с такого обучения? Или нужна какая-то конкретная система и четкая градация повышения своего уровня (сначала прочесть книгу, потом пройти курс, потом изучить эту смежную технологию и так далее)? Подскажите, пожалуйста, как входили в iOS-разработку именно вы.

Будущие коллеги, уверен, что во время процесса обучения у меня будет возникать уйма вопросов, ради которых стыдно создавать новые темы. Если у кого-нибудь из вас есть возможность пару раз в неделю поотвечать на мои вопросы и кратко проконсультировать по какой-нибудь теме -- дайте, пожалуйста, об этом знать в ответах (оставьте ваши любые контактные данные и условия (бесплатно/платно и так далее)). У всех свои дела, альтруистов очень мало -- всё понимаю, поэтому мои обращения к вам будут максимально редкие и по делу.

Спасибо большое за ваше внимание и интерес к моим вопросам. Хорошей недели всем! ;-)
  • Вопрос задан
  • 14359 просмотров
Пригласить эксперта
Ответы на вопрос 11
@Sobakus
Нормально начать разрабатывать для apple можно только на компьютерах apple. Это самая большая преграда. Не стоит связываться со всякими виртуальными машинами и прочими гениальными идеями. Экономия будет очень сомнительная. Только mac. Для начального уровня не важно что именно это будет: MacBook, Macmini, iMac. Если собираетесь брать новое устройство, то по мне лучше взять 13 MacBook Pro без Ретины. Причем взять минимальную конфигурацию. Почему именно ее? Эту модель можно доапгрейдить. Добавить Ram (до 16 Gb), поменять или добавит HD или SSD диск. В остальных MacBook'ах это уже сделать нельзя, память впаяна в плату. Retina, ну не знаю, все таки не бюджетный вариант. Retina хороша 15 дюймовая в топовой комплектации, но там и цены заоблачные. А у 13 дюймовых моделей все равно придете к тому, что нужен внешний монитор. Тогда смысл в ретине пропадает. По поводу устройств их можно вообще не иметь первый год -полтора. Эмуляторы прекрасно работают с основными функциями. Опять таки для запуска приложения на реальном устройстве нужна лицензия разработчика. Стоит она 100$ В год. (Для запуска на эмуляторах такая лицензия не нужна.)
По поводу самого программирования: тут нужно начинать изучать с ООП, без этого никуда. ( Что такое классы, объекты, указатели, конструкторы и т.д.) т.е. изучать теорию. Лучший выбор это любая книжка про Objective C. Причем в начале просто сидеть и читать изучая термины. В начале будет такая каша в голове, что иногда будет казаться, как этот бред вообще можно понять и освоит. После посмотреть какое-либо обучающее видео на эту тему. И так постепенно, со временем что-то начнет усваиваться. Только ПОСЛЕ этого нужно Обязательно пойти на курсы. Там все систематизируют и раставят по полочкам. Сразу с 0 идти на курсы не советую, тяжело. Усвоите очень мало. Любую информацию нужно переварить, обдумать, а тут бац, новая подвалила, Эээ я еще это не запомнил и т.д. По опыту скажу курсы без подготовки, деньги на ветер.
P.s. Если остались вопросы пишите, чем смогу помогу. (densobakacom собака mail.ru)
Ответ написан
popcorn2d
@popcorn2d
Гар-гар-гар
1) Нативный макбук и ничего другого, можешь взять мак мини, тем более их обновили
2) Всё уже зависит от твоего бюджета, но думаю логично, чем дороже - тем комфортней работать, и да, есть смысл смотреть в сторону ретина 13", ибо это золотая середина между портативностью и мощностью, да и экран будет радовать
3) Нет, девайс на старте не нужен, туторы делаются в эмуляторе, но если есть возможность, можешь купить минимальный ipad mini with retina
4) Вышел Swift, есть смысл начать изучение с него, ибо обж-с очень сложен (язык 15 или 20 летней давности)
5) Зашёл на https://www.codeschool.com/ и делай туторы (обж-с) или по эппл туторам (есть в iBooks)
6) На профильных сайтах есть ссылки на конференции в скайпе, там и приютят, затролят и помогут :)

Удачи :)
Ответ написан
GavriKos
@GavriKos
По эмулятором и макбукам. На винде вы НИЧЕГО не поднимете из этого. Вариант - либо хакинтош, либо виртуалка с макосью. Под макосью есть встроенные в xCode эмуляторы. На первое время (если старт совсем с нуля) этого вам хватит.

По процессу обучения. Лично мой выбор - чтение литературы +параллельная реализация своего проекта. Т.е. прочитайте совсем основы, посмотрите best practises какие нибуть, и потом начинайте что то писать ДЛЯ СЕБЯ (ни в коем случае не расчитывайте потом заработать на первом проекте) и параллельно читать литературу.
Ответ написан
Setrino
@Setrino
1. Macbook оптимально - пробовал IDE под Винду - постоянная не хватка API - не успевают обновлять.

2. Я работаю до сих пор на 13' 2008 - ну чуток лагает но норм.

3. А вот тут весело - нужен iOS девайс на где-то 4/5 месяц обучения если у вас большой проект - потому что все может отлично работать на эмюляторе но при запуске слетало на телефоне. Ну и самое весело это экраны - сейчас началась проблема та же что с Android - кучу экранов с приходом 6 и 6+.

4. Мммммм - не обязательно - в конечном можно писать и на Objective-C, и C++, и C - тут уже как пойдет. Если физика вам нужна (i.e. игра) то тут вы в С упретесь.

5. Про обучение - www.raywenderlich.com - очень советую взять какой то проект и с помощью него идти - ставьте перед собой задачу "создать IM или игру" и идите по этому пути натыкаясь на подводные камни (с iOS без них никак).
Большой совет - не пытайтесь сразу бежать за оптимизацией приложения - сперва сделаете чтобы просто работало - потом фиксите (скорее всего первый свой проект вы будете с нуля переписывать парочку раз).

Тут вот тоже можно "влиться" - www.creativebloq.com/app-design/how-build-app-tuto...

Удачи
Ответ написан
risik
@risik
Программист
По п. 2. Работать с 4ГБ памяти возможно, но очень тяжело. 8ГБ уже норм. Хотя много в этом вопросе не бывает :) i7 vs i5 и количество ядер не так критичны.
Ответ написан
@mr_cloud
iOS Developer
Ответы на все ваши вопросы - https://vk.com/iosdevcourse
Начинайте с первого урока
Ответ написан
Комментировать
CheshireCat
@CheshireCat
full-stack developer
Тоже постарался ответить на все вопросы по порядку в своей статье:
Как научиться программировать под iOS
Ответ написан
Комментировать
@Kirow
1. Нет. Можно установить виртуалку/хакинтош.
2. Можно вообще мак мини.
3. Нужен только если вы фрилансить будете. А так - симулятора для обучения вполне хватит.
4. Не обязательно.
5. Идете в любую компанию на стажировку с нуля, зарплата низкая, но опыт набрать поможет. Это будет лучший вариант, т.к. обучение сразу на реальных задачах + помощь от знающих людей.
Ответ написан
Комментировать
@WildGreyPlus
Посмотрите сайт "Разработка iOS приложений".
Ответ написан
Комментировать
@iosCreated
Вам обязательно понадобится MAC OS компьютер, будь то макбук, или же mac mini. IOS устройство несколько более вторично, поскольку можно на первых порах тестировать на симуляторе.К тому же, чтобы тестить на устройстве, вам понадобится сертификат разработчика. При выборе же IOS девайса, имейте в виду, что тест на самом свежем устройстве не даст вам понятия о том, насколько все быстро будет выполняться на более старых устройствах, в то время, как если у вас все работает шустро на 4S, то, разумеется, и на 6+ все будет отлично. С другой стороны, приобретая более старый девайс, вы должны понимать, что весьма скоро APPLE перестанет выпускать для него обновления, а это для разработчика критично.
По вопросам, касающимся разработки, равно, как и получения сертификата,всегда рад помочь. Моя почта ioscreated@gmail.com
Ответ написан
Комментировать
@Spacedandy
Вопрос не совсем в тему, но, возможно кто-то сориентирует.
Книга iOS.Programming.The.Big.Nerd.Ranch.Guide.4th.Edition (Aaron Hillegas) есть в русском переводе?
Если да, то где бы ее купить?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы