- PVSM.RU - https://www.pvsm.ru -

Хочу поделиться историей разработки своего приложения. Идея приложения возникла 1,5 года назад, начало разработки было положено в феврале 2017 года и завершено всё в июне 2017 года.
Всё началось с того, что до 2014 года я с удовольствием читал журналы Forbes (либо бумажный вариант либо электронный). Затем в 2014 году у меня появился первый смартфон на Android, и я сразу же скачал официальное приложение на него. Оно вроде работало, но содержало кучу багов. Самый запоминающийся был: при попытке перехода к статье — открывалась совершенно другая статья.
Помучавшись, я понял, что пора брать всё в свои руки и в начале 2016 года решил, что сам сделаю приложение для их сайта, естественно с блэкджеком и дамами. Зарегистрировал домен для этой задумки. Домен успешно прожил один год, а я так и не приступил к разработке.
Проходит время и в какой-то момент (к концу 2016 года) официальное приложение перестает работать. Вылезают ошибки. Сразу же появилось много отзывов и комментариев по этому поводу в официальном приложении.
В начале 2017 года я решил, что пора действовать и приступил к разработке.
Сайт я использовал как прослойку между своим приложением и официальным сайтом. Это было нужно для того, чтобы избежать следующих проблем, которые возникли бы с официальным сайтом:
Эти три проблемы были решены вот так:
Плюс к этому добавляются еще приятности — имея сохраненный список статей, категорий и авторов, можно без проблем вытаскивать следующие данные:
И в качестве дополнения сделал на сайте страницу с курсами валют на текущую дату. Фронтенд был написан с использованием фреймворка Yii 2.
Вообще статьи Forbes удобны для скачивания и парсинга в том плане, что:
Это всё означает, что не нужно повторно (периодически) статью скачивать, чтобы получать актуальный текст и новые комментарии.
Список статей берется из официальной страницы RSS. При получении новой статьи важен только адрес (URL) статьи, который сохраняется в БД. Затем, используя этот адрес можно скачать все нужные данные и сохранить в БД: название, текст, автор, категория, дата и т.д.
Скрипты на скачивание и парсинг статей запускаются по заданию CRON.
У каждой статьи Forbes есть ссылки к «рекомендованным статьям». В связи с этим был получен приятный бонус, что на каждую скачанную статью я получил еще ссылки на 10 других статей (которых у меня в БД нет), и сохранял ссылки на эти статьи. Далее при сохранении и парсинге следующей статьи опять получены еще 10 других статей и т.д. В итоге на сегодняшний день в БД имеется более 14000 статей, и надо сказать, что это видимо определенный предел для Forbes, потому что новых статей из списка «рекомендованных» почти не бывает.
По времени разработка и запуск сайта заняли период с февраля по апрель 2017 года. В результате получился вот такой сайт.



Приложение решил делать на Ionic 2. В надежде, что опубликуюсь сразу на всех платформах. Приложение содержит в себе следующий функционал:
Надо сказать, что сырое работоспособное приложение (просмотр и чтение статей) было сделано за пару недель. Всё остальное время заняло допиливание, исправление косяков и добавление функционала (поиск, шаринг и др.). Из косяков было то, что при запуске приложения, SplashScreen висел неприлично долго. Еще пришлось делать видимой вертикальную полосу прокрутки, которой почему-то не было «из коробки».
По времени разработка приложения заняла период с мая по июнь 2017 года. В июне Андроид-версия приложения была опубликована. Результатом стало вот такое приложение.
Получен хороший опыт по разработке на Yii 2 и Ionic 2. Потому что до этого времени я ни разу не имел дело с данными фреймворками. А главное, что всё доведено до конкретной реализации и конечного результата. Также в планах есть различные доработки приложения.
Готов услышать любые предложения и замечания. Потестить можно здесь: Ссылка на приложение [2]
Автор: Pashkevich
Источник [3]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/android/258446
Ссылки в тексте:
[1] хостинге: https://www.reg.ru/?rlink=reflink-717
[2] Ссылка на приложение: https://play.google.com/store/apps/details?id=com.ionicframework.forpes405567
[3] Источник: https://habrahabr.ru/post/331362/
Нажмите здесь для печати.