Dev Story Family Expenses. История об учете расходов

ТЕКСТ: ИВАН ДЗЯМУЛИЧ. Добрый день, уважаемые читатели. Хотелось бы рассказать историю создания своего приложения Family Expenses.

Началась она как всегда с идеи. Мне, как и многим другим людям, частенько приходила в голову мысль подсчитать свои затраты. Для меня это было особенно трудно, потому что, занимаясь предпринимательской деятельностью, нет четкой зарплаты, и суммы доходов могут варьироваться. Поэтому я «пытался» все затраты записывать и через недельку другую мне это надоедало. Я задумался над причиной этого, и понял, что это происходило по двум причинам. Когда я вел бумажный учет, минус был в том, что не видно было статистики, и все было не наглядно. А когда начал вести на компьютере – меня раздражала слишком громоздкая процедура введения данных. Так я и решил сделать приложение для айфона лишенное этих недостатков.

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

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

Ещё одной особенностью Family Expenses есть то, что во всем интерфейсе практически не используются слова (только в настройках в некоторых всплывающих окошках есть описания).

Но если вдруг что-то не понятно, можно прикоснуться, например к иконке, подержать так палец чуть-чуть и появится подсказка, что именно значит этот элемент.

Специально для этого приложения наш художник нарисовал 42 иконки.

Я проанализировал все возможные варианты затрат и разбил их на 6 категорий: Дом, Еда, Отдых, Транспорт, Одежда и Разное, которые в свою очередь разбил на 6 субкатегорий. То есть, чтобы ввести затрату нужно запустить приложение, тапнуть на иконке категории и выбрать субкатегорию.

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

Читайте также  Android обогнал RIM и Apple

В итоге для введения одной затраты необходимо сделать 3 тапа и ввести сумму.

Конечно это скоростной метод, и в нем кое что не учтено. А если трата была не сегодня? А если надо комментарий? Для этого в интерфейсе калькулятора при введении суммы были добавлены 2 кнопочки – Комментарий и Календарь. Таким образом можно задать дату, когда была сделана покупка и добавить описание траты.

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

С самого начала разработки планировалось что в приложении будет простой и быстрый механизм резервного копирования данных. Но когда мы с делали этот механизм, стало понятным, что это практически готовый способ сделать синхронизацию двух устройств. Осталось только создать «транспорт» – способ взаимодействия двух устройств. И тут мне пригодился мой старый опыт работы с 1C:Предприятие. Несколько лет назад я для своей компании заказывал продукт, в котором была распределённая база данных с синхронизацией данных на разных компьютерах через центральный сервер. За годы эксплуатации система показала себя с лучшей стороны.

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

При первой синхронизации необходимо спарить два устройства. Для этого на одном устройстве надо нажать кнопочку «Получить код» – система выдаст восьмизначный код. А на другом устройстве нажать «Ввести код» и ввести этот код. Теперь устройства спарены и могут работать в автономном режиме.

Когда, например, на первом устройстве вы ввели несколько затрат и нажали на кнопочку синхронизации – данные отправляются на сервер, и сразу же на спаренный телефон отправляется Push сообщение с просьбой синхронизироваться и с числом новых затрат. Это число отображается на иконке приложения в виде бейджа (в красном кружочке).

Таким образом появился простой и быстрый механизм синхронизации. Данные отправляются в сильно сжатом виде. Например, данные за 1 год, по 3-5 затрат в день занимают только 30 кб. трафика. Поэтому синхронизация очень быстрая.

Ещё одна очень интересная функция приложения – это экспорт данных в HTML. Она сделана в виде веб сервера, который запускается на айфоне. Зайти на него можно с настольного компьютера или ноутбука введя в адресной строке IP адрес и порт, который показывается при старте сервера. Особенность этого сервиса в том, что непосредственно с браузера можно сортировать, искать и фильтровать данные по разным критериям и переносить в другие финансовые программы такие как: Excel, Microsoft Money или Quicken.

Читайте также  Уникальная лестница в Apple Store

Особое внимание стоит обратить на систему визуализации статистики в приложении. Есть два варианта:

  • круговая диаграмма – для отображения доли категории или субкатегории затрат в общем объеме затрат за период.
  • столбиковая диаграмма – для иллюстрации динамики затрат с разбивкой по дням или месяцам.

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

Спасибо вам, дорогие читатели, что дочитали до конца 🙂 Теперь видео.

Цена: $1.99 [iTunes link]

Данная история опубликована в рамках рубрики Developer Story, где разработчики делятся секретами своей внутренней кухни.
Источник: iphones.ru

TRAVEL