Якія лепшыя рэсурсы для навучання распрацоўцы iOS? Я шукаю, каб даведацца Swift, Objective-C і какава.


адказ 1:

Я распрацоўваў iOS на працягу некалькіх гадоў як з кантрактамі, так і з адкрытым зыходным кодам. Я таксама кіраваў і вучыў распрацоўцы iOS. Што і казаць, мне шмат разоў задавалі гэтае пытанне. Лепшы адказ будзе розным у залежнасці ад таго, які тып навучання вам патрэбен, і вашыя цяперашнія веды пра тое, як усё працуе.

У многіх іншых адказах тут пералічаны агульныя рэсурсы, але перад тым, як выбраць адзін, важна ўлічыць

выгляд

патрэбнага рэсурсу:

  • Хочаце вучыцца самастойна?
  • Хочаце глядзець відэа?
  • Вы хочаце выйсці з падручніка?
  • Вы хочаце падсправаздачнасці за кошт надзейнай праграмы навучання?

Я разглежу некалькі розных стыляў і дам рэкамендацыі.

Самакіраваныя навучальныя рэсурсы

Перавагі

: танна (звычайна бясплатна); гнуткі

Недахопы

: цяжка задаць што-небудзь, акрамя вельмі канкрэтных пытанняў; цяжка атрымаць водгук на такія суб'ектыўныя паняцці, як стыль кода альбо архітэктурны дызайн; Для таго, каб застацца на шляху, патрэбна неверагодная колькасць дысцыпліны

Ёсць некалькі карысных рэсурсаў, якія добра:

Бясплатна

- Знакаміты

Курс Стэнфарда

на iTunes U (

Распрацоўка прыкладанняў для iOS 7 для iPhone і iPad

) з'яўляецца свабодным і высока структураваным. Гэта ўсёабдымны і хуткі тэмп. Гэта не выдатна для пачаткоўцаў праграмавання, але гэта можа быць добра для АП, які мае папярэдні досвед праграмавання на базе Інтэрнэту.

-

Дакументацыя Apple

гэта неверагодна грунтоўна, добра напісана і на дзіва лаканічна. Пачні з

Аб'ектна-арыентаванае праграмаванне з Objective-C

і адгалінавацца адтуль.

-

Рэя Вендэрліча

Падручнікі для распрацоўшчыкаў і гульняў для iPhone / iOS

гэта добрая сярэдняя пляцоўка - яна мае лінейную структуру, падобную на ход, але дазваляе вам лёгка засяродзіцца на адным навыку, напрыклад, праглядзе стала або гульні.

-

NSHipster

гэта блог, які абнаўляецца кожны панядзелак з кароткім артыкулам пра нешта, звязанае з распрацоўкай iOS, як правіла, пэўны клас ці сінтаксіс. Гэта жартаўліва, весела і пазнавальна.

Платна

Ёсць таксама некалькі платных кампаній з утрыманнем матэрыялаў, але бясплатныя рэчы такія высокай якасці, я асабіста не думаю, што за іх варта плаціць.

  • Курсы iOS на дрэве
  • Школьная школа

Навучанне "адзін да многіх"

(звычайна асабіста)

Перавагі

: праца з настаўнікам; працаваць з іншымі студэнтамі, якія навучаюцца ў тым жа тэмпе, што і вы

Недахопы

: магчыма адстаць (альбо паскорыць наперад) ад класа; неабходнасць канкурыраваць час з настаўнікамі / настаўнікамі; клопатаў на паездках; дарагі; вам часта трэба кінуць працу; вучэбная праграма не можа быць наладжана для вашага ўзроўню кваліфікацыі

Ёсць шмат выдатных месцаў для заняткаў на iOS, для якіх звычайна патрабуецца 40-60 гадзін у тыдзень (у тым ліку хатняе заданне) і звычайна праходзіць каля 10 тыдняў:

- У Чыкага

Mobile Makers Academy

(9000 долараў) забяспечвае выдатную асабістую праграму, якая ўключае ў сябе не толькі праграмаванне, але і практыку прайгравання ідэй, і дапамогу ў працаўладкаванні.

- У Сіэтле,

Паскоральнік распрацоўкі iOS для Code Fellows

($ 10 000) нават прапануе гарантыю працаўладкавання.

- У Нью-Ёрку,

Школа Флатырон

($ 12 000) мае выдатных настаўнікаў і дапамагае ў працаўладкаванні.

Падобныя паслугі даступныя ва ўсім свеце ў буйных гарадах. Проста знайдзіце " iOS bootcamp ”, і вы, верагодна, знойдзеце добры варыянт.

Паколькі ў АП ужо ёсць навыкі праграмавання, яны могуць быць зацікаўлены і ў больш кароткіх курсах. Напрыклад,

Канцэпцыі будучых медыя

прапануе мноства кароткіх (~ аднатыднёвых) заняткаў, якія даюць вам асноўнае разуменне Objective-C. З гэтага вы пачнеце працу, але, відавочна, не можа быць усёабдымнай.

Навучальныя рэсурсы "адзін да аднаго"

(звычайна ў Інтэрнэце)

Перавагі

: гнуткае планаванне; зваротная сувязь і кіраўніцтва ад настаўніка па меры росту вашага навучання; танней, чым навучанне ў класе (без накладных выдаткаў фізічнага месца)

Недахопы

: страчаны сеткавы патэнцыял (няма групы студэнтаў, каб падтрымліваць сувязь); гнуткае планаванне можа прывесці да адтэрмінацыі

Калі вы можаце сабе гэта дазволіць, я лічу, што асабістае навучанне адзін на адзін забяспечвае лепшы баланс паміж выдаткамі і здольнасцю да навучання.

Звычайна ёсць навучальная праграма, якую вы праходзіце ў сваім уласным тэмпе, і вы Skype / ScreenHero / Google Hangout з настаўнікам раз ці два на тыдзень. Гэтыя заняткі па настаўніцтву могуць быць адаптаваны да вашага ўзроўню кваліфікацыі.

Вось прыклад такой налады: пры вывучэнні радкоў пачаткоўцы праграмавання могуць задаць пытанні свайго настаўніка:

- Што такое радок? - Што такое падстрока? - Калі радкі выкарыстоўваюцца ў дадатках iOS?

Больш прасунуты праграміст можа спытаць:

- Якія тыпы кадавання звычайна выкарыстоўваюцца ў распрацоўцы прыкладанняў для iOS? - Як мне лакалізаваць радкі паміж рознымі мовамі? - Як звычайна захоўваецца інфармацыя пра фарматаванне радкоў?

Такая разнавіднасць налады вучэбнай праграмы немагчымая на глыбокім узроўні з навучаннем адзін да многіх, і гэта цалкам неструктуравана з навучаннем самастойна.

Блок

, дзе я працую, прапануе захапляльны вопыт настаўніцтва адзін на адзін са структураванай, але гнуткай вучэбнай праграмай. У рэшце рэшт, ёсць таксама "праектны" досвед, у якім ваш настаўнік выконвае ролю старэйшага распрацоўшчыка і накіроўвае вас, калі вы ствараеце розныя прыкладанні для iOS з нуля, выкарыстоўваючы некалькі розных тэхналогій, у тым ліку Objective-C і Swift. . Да канца вопыту Bloc вы сабралі некалькі прыкладанняў для iOS, і вы павінны быць гатовыя прайсці працу распрацоўшчыка iOS пачатковага ўзроўню (ці, магчыма, вышэй, калі вы ўжо збіраецеся з некаторымі адбіўнымі праграмаваннямі ).

Вось параўнанне паслугаў настаўніцтва адзін на адзін:

Курсы апускання:

(Пад "апусканнем" я маю на ўвазе так старанна, як і лагер для загрузкі):

  • Блок складае 4999 долараў за 450-500 гадзін навучання (старэйшыя за 12, 18 або 36 тыдняў), уключаючы строгі інтэграваны навучальны план і 36 сустрэч настаўніка

Больш лёгкія курсы:

  • Задумлівы - 1500 долараў за 120-150 гадзін навучання (на працягу 12 тыдняў), уключаючы асноўную навучальную праграму і 12 сустрэч з настаўнікамі

Настаўніцтва без суправаджальнага матэрыялу курсу:

  • HackHands падобны на Uber для настаўніцтва, прапаноўваючы настаўніцкае відэа-настаўніцтва па патрабаванні 1 $ у хвіліну
  • AirPair - гэта настаўніцкая пляцоўка, дзе настаўнікі ўсталёўваюць сваю стаўку ў дыяпазоне ад $ 60 / гадзіна да $ 300 / гадзіна

Hackhands і Airpair адрозніваюцца ад Bloc і Thinkful тым, што яны не прапануюць змесціва ці структуры для суправаджэння настаўніцтва.

Праграма Thinkful менш дарагая, але і значна менш строгая і менш цэласная, чым у блокаў. (Гл

Выбар паміж блокам альбо прадуманым

; Я не буду перапрацоўваць усё гэта тут.)

Агульныя парады

Я буду прытрымлівацца некаторых агульных парад, хаця АП не прасіла гэтага:

1. Не дазваляйце сабе перабіцца.

У распрацоўцы iOS можна даведацца шмат тон і шмат рэчаў. Я мог бы напісаць цэлую кнігу пра захаванне дадзеных на дыск, анімацыю, падключэнне да вэб-сэрвісу альбо пра мноства іншых рэчаў, якія вы робіце як распрацоўшчык iOS. Пачніце з шырокага навучання, а потым паглыбіцеся, калі ў вас з'явіцца патрэба. Калі што-то зусім блытае вас, запішыце свае канкрэтныя пытанні і абмяркуйце яго з настаўнікам. Што прывяло мяне да № 2 ...

2. Даведайцеся, як задаваць канкрэтныя пытанні.

Прачытайце кіраўніцтва па стэку Overflow, каб задаць добры пытанне. Чым больш канкрэтны вы, тым больш карысным будзе атрыманы адказ. Акрамя таго, працэс напісання добрага канкрэтнага пытання часам можа прывесці вас да адказу самастойна.

3. Альбо выконвайце навучальную праграму, альбо працуйце над рэальным прадуктам.

Існуе велізарная разнастайнасць і глыбіня пазнання, і ваш час абмежаваны. Калі ў вас няма праблемы з вырашэннем, немагчыма вырашыць, чаму навучыцца далей. Працуйце з вучэбнай праграмай, таму заўсёды ёсць наступны крок, альбо забарона працаваць над прадуктам, каб заўсёды была магчымасць рэалізаваць альбо выправіць памылку.