30 месяцев в качестве разработчика iOS. Мои советы новичкам.
- 30 месяцев
- 7 приложений
- 2 больших приложения
- Внештатный сотрудник, работающий неполный рабочий день
- Штатный iOS-инженер
- Давний игрок
Вот мои советы по разработке iOS для новичков.
Возьми Свифт
Swift vs Obj-C, что лучше изучить в первую очередь? Мой ответ прямо в сторону Свифта. Учитесь, играйте и начните свой новый проект со Swift. Если у вас нет уважительной причины для Obj-C. Например, сохранение старого приложения.
Предупреждение. Не планируйте начинать свой проект на Obj-C и переходить на Swift позже. Миграция сложнее, чем вы думаете.
Знай экосистему
Что такое популярная библиотека JSON? Какую облачную базу данных мне следует использовать с моим приложением? Что происходит сейчас?
Вы должны знать инструмент / библиотеку / фреймворк / стек для своего приложения. Не будь программистом-одиночкой, а все напиши сам. Кто-то уже внес эти работы, чтобы облегчить вам жизнь. Выбирайте и используйте их для повышения производительности.
Для библиотек с открытым исходным кодом. Найдите `awesome-xxx`. Например,` awesome-swift `,` awesome-ios `.
Сделайте это, сделайте это правильно, сделайте это быстро
Я всегда верю этой концепции. Разработка программного обеспечения - это не разовая работа. Хорошее программное обеспечение создается путем множества итераций. Когда вы впервые делаете что-то, это может быть не так, как вы думаете. Но не волнуйтесь, найдите время и вернитесь к этому еще раз и сделайте это лучше. Просто помните, что вы делали. Опыт вам поможет. Дойти до последнего шага в следующий раз проще, чем вы думаете.
Изучите архитектуру
Взгляните на другие успешные приложения. Посмотрите, как они были сделаны. Не только со стороны приложения, но и со всей системой. Архитектурная перспектива улучшит ваше мастерство. Существует множество приложений для iOS с открытым исходным кодом. Telegram, Firefox, Wikipedia, Wordpress, VLC, Wire. Github / open-source-ios-apps - хороший ресурс.
Эксперимент
При разработке приложения. Вы можете придумать много идей. Иногда вы не уверены, подействуют они или нет. Итак, сначала сделайте доказательство концепции. Выразите свои идеи с помощью сторонних проектов. Если он работает, переместите его в свой основной проект.
Если они небольшого уровня кода. Не тратьте зря время на компиляцию и запуск всего проекта. Напишите и протестируйте на Playground. Посмотрите результаты, затем скопируйте и вставьте.
Не борись с рамками
Reactive и Redux - хорошие фреймворки для изучения. Их изучение обязательно поможет вам стать хорошим разработчиком. Но не используйте их в качестве основного фреймворка в большом приложении для iOS. Я пробовал, но у меня ничего не вышло. Я всегда сталкиваюсь с проблемой. И решить эту проблему - непростая задача. Итак, оставайтесь ближе к MVC / MVVM.
Используйте эти фреймворки как вспомогательные инструменты, и только тогда, когда они облегчают вашу жизнь. Например, я использую Reactive для обработки событий.
Функциональное программирование - это чертовски хорошо
Неизменяемость. Чистая функция. Функция высшего порядка. Многие концепции функционального программирования значительно улучшат ваше понимание. Даже если вы не собираетесь использовать его в разработке для iOS. Поверьте, просто научитесь этому.
Лучшая практика - это просто мечта
У всего есть свой компромисс. Вы не всегда можете следовать тем рекомендациям, которые могут существовать только в учебниках. Практичность и импровизация помогут вам выжить.
Будьте в курсе
Технологии растут в геометрической прогрессии. Оставайся на месте год, и ты станешь мудрой обезьяной. По возможности обновляйте базу данных каждую неделю. Я предпочитаю еженедельную подписку по электронной почте. Еженедельник iOS-разработчиков, iOS-вкусности, Робот Наташа, Кусочек какао. Таким образом, мне не нужно самому искать эти тщательно отобранные источники. Просто хорошо провести время, читая их на выходных.
… И смотрите WWDC .
Узнай что-нибудь еще
Swift / Obj-C / iOS. Что еще? Многие. Попробуйте запачкать руку чем-нибудь другим. Бэкэнд, Интернет, Игра. Устали от программирования? Дизайн и Бизнес могут быть. Вы никогда не ошибетесь в своем выборе.
Спасибо за чтение. Надеюсь, ты повеселишься. 😀