Конечно, дети могут разрабатывать приложения для iPhone. Но это нелегко

iphone-app-development-swift-playgrounds Тренды

Прошлым летом, после просмотра вдохновляющей демонстрации приложений, созданных юными кодерами с помощью языка программирования Swift Playgrounds от Apple, я решил привлечь своих детей к разработке приложения для iPhone. В возрасте 10 и 13 лет они оба играли с бесчисленными игрушками STEM, предназначенными для ознакомления с основными понятиями кодирования, некоторые из которых даже включали в себя простое программирование, поэтому я решил, что будет интересно перейти к созданию собственного приложения.

Мы начали с обсуждения концепций, а затем остановились на приложении о кошках (естественно) и разработали макет на бумаге. Я оптимистично полагал, что мы сможем создать версию 1.0 за лето, но мы зашли в тупик, пытаясь договориться о том, кто будет рисовать каждый элемент (они увлеченные художники). В дальнейшем проблемы возникали все быстрее и быстрее. Это будет сложнее, чем я думал, поэтому я решил пообщаться с несколькими молодыми кодерами, которые сами занимались этим делом.

Стремление к привлекательности

swift playgrounds обзор GEAR SOURCE Apple

В магазине App Store компании Apple представлено около 2 миллионов приложений, разработанных самыми разными людьми — от детей в спальнях до команд профессиональных разработчиков в огромных офисах. Потенциальная аудитория только в США составляет около 125 миллионов человек, поэтому есть много стимулов для разработки на iOS. Успех может измеряться прибылью и количеством загрузок для одних, но для других разработка приложения — это служение делу и попытка помочь людям. Это также может быть достойным занятием ради самого себя.

Так было с Рахулом Кумаром, который начал кодировать в 7 лет. В 2020 году из-за ограничений, связанных с блокировкой Covid-19, ему стало скучно в своей комнате, и он решил разработать приложение для iPhone до окончания средней школы. Имея доступ к MacBook своего отца, Кумар создал EmSafe — приложение для путешествий в чрезвычайных ситуациях, призванное помочь беженцам, иммигрантам, перемещенным лицам и тем, кто не говорит по-английски, получить доступ к службам экстренной помощи в более чем 230 регионах мира.

Кумар имел некоторый опыт работы с Java и Python до того, как начал кодировать на Swift, но он самоучка и не получал никакой помощи от своих родителей. «Когда я начинал, мне было трудно кодить на этих языках, и я часто оставлял проекты незавершенными на несколько недель, потому что не мог легко найти конкретный ресурс для решения своей проблемы», — говорит он.

Его проект столкнулся с трудностями, когда он представил его на внутреннюю экспертизу Apple. Хотя инструменты разработки и поддержка сообщества бесплатны, вы должны зарегистрироваться в программе Apple Developer Program (99 долларов США в год), прежде чем сможете представить приложение на рассмотрение и распространять его через App Store. У Apple есть подробный набор рекомендаций, которым необходимо следовать для публикации любого приложения или игры. «Мне пришлось продолжать устранять проблемы по мере того, как App Review находил их, например, проблемы с текстом кнопки и способом отображения предупреждения», — говорит Кумар. Но он упорствовал, и в итоге был выбран компанией Apple в качестве победителя конкурса Worldwide Developers Conference Swift Student Challenge в 2021 и 2022 годах. Кумар выпустил первую версию EmSafe в июле.

Впервые Apple выпустила Swift Playgrounds в виде приложения для iPad в 2016 году, а в 2020 году появилась версия для MacOS. Оно бесплатно и позволяет редактировать код в одном окне и видеть, как он будет выглядеть в готовом приложении в другом (в реальном времени). Есть встроенные уроки и задачи, которые можно пройти, и вы можете загрузить примеры игровых площадок, чтобы посмотреть, как они работают. Программа призвана научить вас основам с помощью наглядных примеров, и она отмечает ошибки в коде по мере ввода. Можно создать приложение для iPhone полностью в Swift Playgrounds, но можно также экспортировать проекты в Xcode (полнофункциональную среду разработки Apple).

«Apple предоставила множество руководств по кодированию для Playgrounds на начальном уровне, но через некоторое время мне понадобилась более подробная и продвинутая информация», — говорит Кумар. Он чувствовал, что ему не хватает опыта кодирования, необходимого для понимания плотной документации для разработчиков. «Основной способ, которым я научился разрабатывать приложения для iOS, заключался в изучении таких сайтов, как Hacking With Swift, а также в поиске фрагментов кода на GitHub».

Бен Робинсон, молодой разработчик Anxiety Relief: Find Your Calm, рассказывает похожую историю. Он начал разрабатывать свое первое настоящее приложение для iPhone в 13 лет, но уже несколько лет изучал программирование.

«Документация Apple вначале казалась довольно пугающей», — говорит Робинсон. «Если я не знал точно, как работает API [интерфейс прикладного программирования], мне было трудно найти нужный компонент». Это ментальный скачок от процедурного мышления к абстрагированию кода и использованию объектно/протокольно-ориентированных конструкций».

Сначала он запутался, думая обо всем, что он кодирует, слишком буквально и пытаясь реализовать функции, которые выполняют слишком много операций. Но, по его словам, сообщество разработчиков iOS поддержало его и предложило множество ресурсов, которые можно было использовать. Как и Кумар, Робинсон нашел полезными учебники Пола Хадсона «Hacking With Swift», поскольку они провели его через ряд API и побудили его создавать вещи с их помощью.

«Я не знал ни одного разработчика приложений; когда я застревал, я обычно оставался во власти любых ответов, которые я мог найти на Stack Overflow», — говорит Робинсон. «Все разработчики-самоучки сталкиваются с этой проблемой, но это также сделало меня более стойким и независимым. Я стал более уверенно логически мыслить и эффективно решать возникающие проблемы».

Робинсон сделал iOS-версию игры «Мафия» для вечеринок со своими друзьями и надеется сделать карьеру в технологическом секторе. «Если у вас есть идея, действуйте! Никогда не знаешь, какая идея окажется той самой, которая взлетит», — советует он начинающим молодым разработчикам. «Если ваша идея увлечет вас в достаточной степени, вы всегда сможете приобрести навыки, необходимые для ее воплощения в жизнь».

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

Кэт Нэпп

Что касается нашего приложения для кошки, то оно шло медленно. Мои дети послушно придумывали иконки, собирали факты о кошках и пытались расшифровать мяуканье и стоны наших собственных двух кошек, надеясь на открытие типа Розеттского камня, которое позволит нам создать приложение, способное переводить их звуки. Когда дело дошло до кодирования, вся тяжесть работы все больше ложилась на меня. К сожалению, я с трудом находила время, и, по правде говоря, я не умею кодировать. Мои дети смотрели учебники и возились со Swift Playgrounds, но даже с примерами требуется время, чтобы разобраться в концепции.

Нам удалось собрать приложение, отображающее факты о кошках и генератор случайных цитат, но становилось ясно, что наши навыки не дотягивают до первоначальной цели. Дети не были впечатлены, а мои попытки обуздать ползучесть функций остались без внимания. Когда я оптимистично предлагал эту историю, я представлял себе бодрый и вдохновляющий рассказ о разработке нашего приложения, и именно здесь вы перейдете в App Store, чтобы увидеть наш в меру впечатляющий результат. Что ж, реальность кусается.

К тому времени, когда дети вернулись в школу, создание готового приложения стало маловероятным. Нет хорошего способа сказать кому-то, что его проект закрывают, но в конце концов меня пощадили. Последний гвоздь в крышку гроба был забит, когда мой младший сообщил мне, что кто-то уже сделал приложение-переводчик для кошек, и мягко предложил вместо этого поработать над веб-сайтом. Итак, наш проект оказался на свалке (как, несомненно, и большинство проектов приложений), но путешествие было веселым, и мы все кое-чему научились — вновь обрели уважение к разработчикам приложений, которые идут до конца.

Источник: https://www.wired.com/story/iphone-app-development-swift-playgrounds/

Avatar photo
Mr.Cat

Слежу за технологиями и новинками электроники, всегда готов поделиться знаниями и помочь в выборе

Оцените автора
Все о телефонах
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.