100 дней быстроты

Изучение нового языка программирования Apple

С тех пор, как Apple объявила Swift новым современным языком для своих продуктов, я очень хотел выучить его. Несмотря на то, что я не занимаюсь программированием, я решил попробовать. Чуть больше месяца назад я завершил свой проект «100 дней Swift».

Посмотреть все мои Swift-проекты - samvlu.com

Какой у вас был опыт программирования до изучения Swift?

Краткий ответ: не много.
Длинный ответ: мой опыт работы с анимационной графикой, и я веб-разработчик-самоучка. Я знаю HTML, CSS, Sass, Javascript, jQuery, немного Ruby и Python, но раньше не создавал приложений. Хотя я хорошо разбираюсь в HTML и CSS, мой друг-программист убедил меня, что эти языки являются языками сценариев. Они используются для описания и стилизации контента. Программирование не такое. Хотя HTML и CSS не являются языками программирования, я должен сказать, что они помогли мне привыкнуть к просмотру кода и отладке ошибок.

Легко ли было научиться Swift?

Да, синтаксис Swift было легко изучить. Apple проделала невероятно хорошую работу по разработке языка и одновременно с выпуском подробной книги. Но Swift - это лишь часть головоломки. Прежде чем я смог создать свое первое приложение, мне пришлось научиться:

  1. Быстрый
  2. Xcode
  3. Концепции программирования
  4. Фреймворки iOS

Какие есть хорошие ресурсы для изучения Swift?

Я изучал и читал все, что мог найти на Swift. Я также прочитал много материалов по таким концепциям программирования, как объектно-ориентированное программирование и архитектура MVC. Я думаю, что изучать программирование важнее, чем изучать синтаксис Swift. Я расскажу об этом подробнее в следующем разделе. Вот несколько хороших мест для начала изучения Swift в произвольном порядке:

  1. Язык программирования Swift от Apple: в этой книге рассматривается синтаксис Swift. Он также доступен онлайн для людей, предпочитающих использовать свой веб-браузер. (Бесплатно)
  2. Разработка приложений iOS 9 с помощью Swift от Стэнфорда: это курс iTunes U, преподаваемый Полом Хегарти, он работал в NeXT со Стивом Джобсом. Он научит вас создавать несколько приложений на Swift. (Бесплатно)
  3. Рэй Вендерлих: На этом сайте собрана огромная команда талантливых людей, которые создают учебные пособия для различных уровней программирования. Бесплатных руководств более чем достаточно для начала. Также есть книги и учебные пособия только по подписке. (Бесплатная / Платная / Подписка)
  4. Дизайн + Код от Мэн То: в своей книге он собрал значительный объем материала. Мэн учит, как создать приложение с нуля, используя Xcode, Sketch, Swift, Spring Animation Library и многое другое. Он регулярно обновляет книгу, добавляя новые материалы, без взимания платы с предыдущих покупателей. (Оплаченный)
  5. Swift By Example by Brett Bukowski: этот сайт помогает вам изучить синтаксис Swift, предоставляя объяснения кода в простом виде бок о бок. (Бесплатно)

Обновить новый ресурс:

  1. 100 Days of Swift: The Tutorials После завершения этого проекта я вернулся и создал видеоуроки, основанные на моем путешествии. Вы пойдете по тому же пути, что и я, и изучите Swift, создавая крутые проекты. Я покажу вам основы того, как я использую Xcode, библиотеку фрагментов кода и симулятор iOS. Вы также получите прочную основу в Swift, концепциях программирования и разработке для iOS. (Оплаченный)

Вы упомянули, что изучение программирования более важно, чем изучение синтаксиса Swift?

Да, потому что изучение программирования позволяет вам начать создавать вещи.

Изучение циклов for - это не обучение программированию, как и изучение карандашей - это не обучение рисованию. - Брет Виктор, бывший дизайнер Apple

Я потратил много времени, пытаясь построить что-то и задавая вопросы, гадая, как все работает. Я бы не сказал, что изучал программирование, потому что я все еще учусь. Но я помню момент, когда это щелкнуло в моей голове - когда я наконец понял, как все работает. На самом деле это не имеет ничего общего со Swift, но момент программирования щелкнул в моей голове, когда я использовал инструмент для создания прототипов под названием Framer. Он основан на идее немедленной интерактивной визуализации кода, идею, которую Брет Виктор представляет в своем выступлении Изобретения на основе принципа. Использование Framer дало мне общее представление о структуре кода. Это дало мне ответы на такие вопросы, как:

  1. Зачем писать функцию?
  2. Что я могу сделать с помощью цикла for?
  3. Каков вариант использования оператора if?
  4. И многое другое.

Framer дает наглядные ответы на все эти вопросы. Я мог внести небольшие изменения в код и мгновенно увидеть результат. Это дало мне фундаментальное понимание того, как использовать код для создания вещей. Что оказалось жизненно важным при обучении строить вещи с помощью Swift. Я не говорю, что если вы изучите Framer, вы сможете создавать приложения для iOS. Я говорю, что Framer научил меня новому образу мышления, благодаря которому мне было легче научиться создавать приложения для iOS. У Apple есть собственный интерактивный инструмент программирования под названием Playgrounds - он встроен прямо в Xcode. Они оба отличные инструменты.

Последние мысли

Уф! Какая поездка. Когда я начинал этот проект, я думал, что у меня будет 100 проектов, которые я покажу в конце, но у меня их всего 40. Это потому, что я учился и строил одновременно. Для завершения большинства проектов потребовалось несколько дней. Я рад, что смог это сделать. Это дало мне новое мышление. Новый способ решения проблемы. Я по-новому отношусь к разработчикам программного обеспечения.

Прежде чем заняться этим проектом, я часто запускал приложения и задавался вопросом, как они работают. Теперь я запускаю приложения и думаю: «Хм, почему они так сделали».

Посмотреть все мои Swift-проекты - samvlu.com

Прочтите мою следующую статью: