Введение в разработку Swift для iOS

Почему Swift iOS отлично подходит для первого выученного языка программирования

В этой статье я объясню, почему изучение разработки под iOS на Swift - отличный выбор для новичков.

Когда вы гуглите «первый язык программирования, который нужно изучить», наиболее частым ответом, который вы можете найти, является Python.

В этой статье я объясню, почему изучение разработки iOS на Swift - лучший вариант для новичков.

Я начал свой путь в разработке iOS в мае 2020 года, и я на последних шагах, чтобы опубликовать свое первое приложение в Appstore. Поскольку у меня есть опыт работы как с Python, так и с Swift, я могу утверждать, что последний намного веселее и увлекательнее. Тем более как введение в программирование.

Изначально опубликовано в моем блоге https://www.maray.ai.

Что такое Свифт?

Swift - это язык программирования с открытым исходным кодом, используемый для создания приложений iOS, macOS и watchOS. Он рекламируется как безопасный, быстрый и выразительный. Самое главное, Apple и разработчики постоянно стараются сделать его максимально доступным и удобным для новичков.

«Swift может открыть двери в мир программирования. Фактически, он был разработан, чтобы стать первым языком программирования, независимо от того, учитесь ли вы в школе или исследуете новые пути карьерного роста », Apple

Swift против Python

Моим первым языком программирования действительно был Python. Я изучаю его несколько лет, но особого прогресса у меня не было. Я знаю, как это работает, что я могу с этим делать, но я не создал ничего значимого.

Я использовал Python разными способами, включая создание сценариев в 3D-приложении, написание блокнотов Jupyter для создания классификатора изображений и автоматизацию парсинга веб-страниц. Тем не менее, эти задачи не помогли мне продвинуться в процессе обучения Python.

Мне не хватало формы. Python - это язык сценариев, и с ним можно многое сделать. Это один из основных языков для науки о данных и машинного обучения. Вы можете автоматизировать работу, написать модель глубокого обучения и даже создать автономное программное обеспечение. Однако у меня это не сработало.

# Python
print("Hello, World!)
def multiply(a, b):
    return a * b
// Swift
print("Hello, World!)
// In Swift you have to specify the variable type
// and whether the function returns anything
func multiply(a: Int, b: Int) -> Int {
    return a * b
}

Как человек визуального типа, мне было трудно понять, как работает код, когда у меня не было чего-то визуального, за которым следовало бы следовать. С другой стороны, Swift в основном используется для создания приложений. Большинство руководств посвящено созданию приложений. Изучение Swift почти наверняка приведет к его созданию.

Разработка под iOS обнадеживает, потому что вы работаете над реальными приложениями и получаете личное вознаграждение, публикуя свое приложение для использования людьми.

Работа над приложением была одним из важнейших моментов в процессе обучения. Когда я прошел половину своего первого курса, мне в голову пришла идея и я сразу же приступил к ее разработке.

Несколько месяцев спустя я в нескольких шагах от публикации своего первого приложения в Appstore. Работая над этим, я узнал, как программировать интерфейсы с SwiftUI, как использовать серверы для хранения и извлечения информации, как входить в систему и регистрировать пользователей и так далее. Учиться через создание приложения оказалось гораздо более вдохновляющим и увлекательным занятием.

8 причин начать свой путь программирования с разработки iOS на Swift

Мой путь обучения был практичным и полезным. XCode, программное обеспечение, которое вы используете для создания приложения для iOS или macOS, очень полезно для просмотра того, что делает ваш код, а что нет, в режиме реального времени.

Swift обладает преимуществами Python. Он красивый, читаемый и простой для начинающих. Это быстро и интерактивно.

Два года назад Apple представила SwiftUI, декларативный фреймворк, который значительно упростил программирование приложений. Это отличное время, чтобы погрузиться в это.

Вот 8 причин, по которым разработка на Swift iOS - отличный выбор для начала вашего пути программирования.

  1. Четкий и элегантный синтаксис. Хотя это потомок C, он так же элегантен, как Python.
  2. Быстро и интерактивно. В Swift Playground вы можете быстро кодировать и тестировать синтаксис.
  3. Визуальный. Вы можете видеть, что кодируете. Интерфейс обновляется в режиме реального времени, чтобы отразить изменения в коде.
  4. Соответствующие. Развитие приложений стремительно развивается. Если вы хотите начать карьеру или сменить профессию, это может быть отличным вариантом.
  5. Веселье. Вы создаете продукт, которым могут пользоваться тысячи людей и который потенциально может стать стартапом. И даже приносить пассивный доход.
  6. Поверхностная кривая обучения. Каждое приложение может быть проектом, в котором вы применяете свои знания. Это один из самых эффективных способов обучения.
  7. Внедрение SwiftUI в 2019 году сделало разработку под iOS еще проще. Последний фреймворк Swift четко разделяет структуру приложения, что очень легко понять.
  8. Swift - это язык, основанный на C. Есть много общего, и опыт поможет выучить и свободно владеть другими языками.

В следующей главе я расскажу о стратегии, которая сделала мой путь обучения легким и продуктивным.

Как начать и изучить программирование на Swift для iOS. Пошаговое руководство.

Шаг 1. Изучите основы.

Первый шаг, который я бы порекомендовал, - это прочитать статьи для начинающих и посмотреть обучающие материалы на YT, чтобы понять основы. Стэнфорд ранее в 2020 году выпустил бесплатный курс CS193p Swift для iOS. Он актуален и отлично подходит для понимания основ.

Ресурсы для начала.

Шаг 2. Начните разработку своего первого приложения.

Достаточно пройти курс Стэнфорда, чтобы начать работу с вашим первым приложением. Следование курсу полезно, но создание собственного - гораздо лучший способ обучения.

Слушание находится в самом низу пирамиды обучения с показателем удержания только 5%. Сосредоточьтесь на активном обучении.

Когда я закончил 70% своего первого курса и начал создавать приложение с нуля, я понял, как мало я сохранил от лекций и написания кода.

Сделайте свой первый проект простым. Сложность только оттолкнет вас от решения стоящих перед вами проблем. Вместо этого используйте принцип Златовласки. Создайте простое приложение, чтобы изучить основы и поддерживать мотивацию. Увеличивайте сложность и расширяйте свои знания.

Шаг 3. Пройдите еще один, более продвинутый курс.

После того, как вы завершите свое первое приложение, даже если оно не опубликовано, вы получите представление о том, что хотите создать дальше. В следующем курсе будут рассмотрены темы, о которых вы хотите узнать больше.

Например, я знал, что хочу узнать больше о фреймворке Combine и Firestore, так как хотел реализовать их в своем проекте. Поэтому я больше сосредоточился на курсах, посвященных SwiftUI, Combine и Firestore.

Если вы все еще не уверены на этом этапе и хотите продвинуться в целом, я бы порекомендовал найти курс или книгу, которые охватывают SwiftUI, структуру MVVM и управление данными. Как вы увидите позже, кодирование интерфейса (View) - самая простая часть. Создание модели данных (Model) для вашего приложения - второе по сложности. И создание логики (ViewModel), которая связывает интерфейс и данные, является наиболее сложной задачей.

Шаг 4. Позвольте миру увидеть вашу работу.

Наконец, запустите свое приложение в AppStore. Не пытайтесь сделать его идеальным. Этого никогда не будет. Сосредоточьтесь на основных функциях. Выпустив его раньше, вы получите обратную связь и узнаете, что нужно улучшить.

Публикация приложения означает, что вы открыли учетную запись разработчика в Apple, научились реализовывать вход в систему и покупки в приложении, а также понимали, как соблюдать рекомендации Apple по приложениям. Бесценный опыт.

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

Постарайтесь реализовать минимально жизнеспособную модель продукта и запустить ее как можно скорее. Обратная связь и чувство выполненного долга подпитывают вас для дальнейшего прогресса.

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

Это захватывающее время для изучения программирования на Swift. Apple упростила задачу для новичков. Если вы больше относитесь к визуальному типу людей и хотели бы создать что-то крутое, то Swift - лучший выбор для первого языка программирования, который стоит выучить.

Первоначально опубликовано на https://www.maray.ai.