Evgeny Berezin

Месяц с Flutter: начало

Обратите внимание, что перевод выполняется с адаптацией для удобного и легкого чтения (т.е. не слово в слово). Термины и слова могут быть опущены и/или заменены.
Оригинал: https://bendyworks.com/blog/a-month-of-flutter.

Недавно Ури Шакед (Uri Shaked) написал вдохновляющую статью о своем опыте публикации постов в блоге каждый день. И я решил объединить эту идею с моей целью стать лучше в разработке на Flutter. В течение всего декабря я буду писать каждый день о том, как делаю приложение на этой платформе.

Мои цели

  • стать лучше в разработке на Flutter;
  • практиковаться в написании кратких публикаций в блоге;
  • практиковаться в написании требований к проекту.

Что я буду делать

Для этого челленджа я буду создавать Birb – социальную сеть, чтобы делиться снимками птиц. Инстаграм для птиц, если удобнее.

Я не знаю, что успею реализовать, так как еще не начал делать приложение. Однако, вот мои планы на создание MVP (прим. переводчика: MVP – minimum viable product, что на русском – минимальный жизнеспособный продукт, т.е. упрощенная версия, которая содержит только важные функции. Прототип.):

  • главная страница со всеми изображениями (или хронологическая лента);
  • авторизация пользователей;
  • загрузка и публикация изображений;
  • профили пользователей;
  • индивидуальные страницы для фотографий;
  • комментарии на страницах фотографий.

Если я завершу все цели в MVP, то добавлю некоторые другие возможности:

  • push-уведомления;
  • #хэштеги для фотографий;
  • A/B тестирование;
  • выбор темы;
  • система друзей / подписки;
  • лента новых фото от друзей;
  • лайки на картинки.

Ожидание

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

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

Если ты новичок и хочешь понять, как профессионально развиваться - можешь следить за процессом и получить представление о том, как можно запускать проекты. Я буду писать истории и реализовывать функционал, а мой коллега Перл (Pearl) будет делать ревью прогресса и кода (искать ошибки и указывать на них или исправлять).

Технологии

Некоторые из технологий, которые я планирую использовать в Birb:

  • Flutter;
  • Firebase Firestore для базы данных;
  • Firebase Auth для авторизации пользователей;
  • Firebase Cloud Storage для хранения изображений;
  • Firebase Cloud Functions для некоторых операций и вычислений;
  • Медиа API устройства.

Хочешь стать частью этого проекта?

Вот некоторые варианты:

  • открывай issue с предложениями о решении проблем, предлагай новые подходы или идеи для приложения (прим. переводчика: если ты знаешь английский язык и умеешь излагать свои мысли, конечно);
  • следи за блогом и попробуй сделать свое собственное приложение;
  • подпишись на @abraham и @pblatteier, чтобы получать уведомления о новых публикациях (прим. переводчика: на момент выхода переводов это уже не актуально, но подписаться и получать новые уведомления о чем-то другом все еще можно);
  • поделись этим постом в социальных сетях (прим. переводчика: можешь и английской версией поделиться);
  • поставь «звездочку» репозиторию на GitHub.

Увидимся завтра, когда я буду создавать новый проект на Flutter.

Публикации в "Месяц с Flutter"

Следующая: