Путаница — это часть программирования.
— Фелиен Херманс, Мозг программиста

История начинается с красивой цитаты, которая делает мой путь к кодированию моего первого (!!!) приложения, на 100% написанного мной, имеет смысл. Привет, я Хадиджа, младший разработчик (Apple Platform) в Apple Developer Academy @ BINUS. В этой статье я хотел бы рассказать о своем путешествии в кодирование. Это своего рода первый раз, когда я пишу этот тип блога.

Автор книги Мозг программиста, Фелиенн Херманс, отлично объясняет когнитивные процессы, связанные с обучением программированию. Из того, что я прочитал в этой статье, в программировании есть 3 типа путаницы. Из моего опыта получается, что я испытал… все это?

Программирование до Apple Developer Academy: предыстория

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

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

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

Честно говоря, этот опыт вселял в меня своего рода страх и чувство опасения каждый раз, когда я осознавал, что буду программировать. Но оказывается, есть разница между программированием на основе проектов с командой в колледже и самостоятельной сквозной разработкой приложений в Apple Developer Academy. Думаю, эти различия и помогли мне справиться с этим страхом и опасением.

Как Apple Developer Academy изменила для меня программирование

Когда мы попали в Apple Developer Academy, мы стали младшим разработчиком, младшим учеником, а также студентом. Так что каждый является разработчиком хотя бы одного приложения, будь то дизайнер или кодер. Мы разрабатываем проекты, и в этой статье я хочу подробнее рассказать о своих впечатлениях от разработки AR-приложения.

Честно говоря, я столько всего почувствовал, когда было объявлено, что мы будем разрабатывать приложение. У меня было много смешанных чувств по поводу кодирования. Страх, опасение, тревога, но и немного нетерпение. Видите ли, несмотря на то, что у меня был неудачный опыт программирования, я чувствую, что Apple Developer Academy делает изучение всего интересным. Итак, когда я заново изучаю кодирование, я стремлюсь настроить свой мозг так, чтобы программирование ассоциировалось с развлечением.

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

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

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

Дизайном я стараюсь заниматься параллельно с исследованиями для программирования. Итак, мой процесс проектирования начинается с 4-го по 6-й день. Первое, что я делаю, это настраиваю документ Sketch, который буду использовать. После этого я сделал свою главную страницу с камерой дополненной реальности. Я пытаюсь найти примеры на веб-сайте Руководства по человеческому интерфейсу, прежде чем приступить к разработке, чтобы я мог разработать дизайн в соответствии с передовой практикой в ​​соответствии с нативным стилем. После того, как я спроектировал и сделал прототип, я попросил отзыв у своего наставника по дизайну. После того, как я получил обзор, я улучшил свой дизайн и вуаля, на 6-й день мой окончательный дизайн!

Теперь самое сложное. Кодирование. Проклятие моего развития. Тем не менее, как ни странно, теперь кодировать было не так сложно, как тогда. Я получил много помощи от наставников и коллег-младших разработчиков. Внезапно я узнал эти 3 вещи, а именно:

  • Найдите подходящие учебные пособия
    Мне нужно было указать конкретную платформу, которую я использую. В AR есть несколько фреймворков: ARKit, RealityKit, SceneKit, RoomPlan и так далее. RealityKit и SceneKit разные, и их использование нельзя приравнивать. Даже некоторые фреймворки используют UIKit, а не SwiftUI. Я действительно должен обратить внимание на структуру, которую я использую, и найти учебные пособия, которые используют ту же базовую архитектуру.
  • Планируйте перед написанием кода
    Знаете ли вы, что из-за того, что я разработал одну последнюю функцию в последний день, я чуть не сломал свой код, непреднамеренно используя анти-шаблон? Это происходит потому, что я не понял основы представления SwiftUI, поэтому неправильно спланировал шаблон навигации. Я почти создал бесконечную последовательность, используя навигационную ссылку. Респект моему коллеге-младшему ученику за разработку базового SwiftUI, организацию представлений и потребность в едином источнике правды.
  • Было весело программировать
    Как я уже говорил, мое отношение к программированию не изменилось во время программирования для моего проекта. Тем не менее, при поддержке моих товарищей по младшим ученикам и наставников мне удалось полностью написать MVP проекта. Мне удалось перенастроить свой мозг. Я чувствую, что, возможно, потому что Apple Developer Academy @ BINUS — это безопасное место для обучения и неудач, оно устраняет страх неудачи, который я не осознавал после академического падения.

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

В глубине души я думаю, что Apple Developer Academy @ BINUS изменила меня. У меня было то же самое 3 вида путаницы. Но Apple Developer Academy @ BINUS помогла мне их победить. Для Недостатка знаний мне очень помогли семинары и техническая сессия. За недостатком информации мне помогут ChatGPT, Google. Я также чувствую, что моя вычислительная мощность значительно улучшилась со времен учебы в колледже.

На данный момент я думаю, что не могу поделиться чем-то большим, чем мой личный опыт создания приложения AR. Может быть, я расскажу вам в другой раз о приложении AR, которое я создал, или, может быть, еще одно приложение, которое я создам. До тех пор!

© 2023 Хадиджа Ризки Муфида. Все права защищены.