Android Цена Денег Студенческий проект СПбГУ математико-механический факультет, 2010
Участники : Ксения Котлярова Никита Бумаков Ольга Никонова Светлана Землянская Ян Лобкарев Руководители : Дмитрий Кичинский Николай Артамонов
Android Платформа для мобильных телефонов, разрабатываемая Open Handset Alliance, инициированным Google. Со времени релиза платформы Android было выпущено несколько обновлений ( от 1.5 до 2.1). Доля устройств на базе Android на российском рынке возросла с нуля до 8,9% Предоставляет SDK, для разработки приложений на Java.
Цель проекта : Доработка виджета для отображения ситуации на Российском валютном рынке, рынке цветных металлов и нефти под платформу Android Повышение гибкости архитектуры Добавление новых функций к приложению
Изменения в приложении : Проработана модульная архитектура приложения Улучшение внешнего вида виджета Добавлена возможность просмотра курсов без установки виджета Графики вынесены в отдельную библиотеку Добавлено получение кросс - курсов, курсов акций
Диаграмма классов : модель StockItem RateType RateTypeStore Rate String code String name int nominalValue String nominalName String id StockItem source StockItem target RateType type Double value Date date List category1List List category2List Category String name
Изменение модели Минимальная уникальная единица – RateType Поле id из класса StockItem перенесено в класс RateType Добавлено понятие Category Каждый провайдер хранит список предоставляемых им Category Каждый провайдер хранит список предоставляемых им RateType по Category Введено понятий внутреннего и внешнего id для поддержания уникальности вне класса провайдера
Класс Provider Возвращает список предоставляемых категорий Возвращает все RateType из какой - то конкретной категории Получение курсов по внутреннему id RateType
ProviderManager Управляет работой всех провайдеров Регистрирует все используемые провайдеры (addProvider) Назначает каждому RateType внешний id, возвращает RateType по внешнему id При запросе на получение курса по внешнему id RateType, преобразует внешний id во внутренний и отправляет запрос соответствующему провайдеру
Динамическая модель Widget ItemConfigurationActivity UpdateService HistoryCharts IProvider YandexProvider ProviderManager созданиенастройки создание обновлениесоздание данные CourceActivity ChartsActivity CbrfProvider
Графики Графики вынесены в отдельную библиотеку Библиотеку можно разделить на : модель, визуализатор и View графика Модель состоит из трех классов : DatePoint, XYSeries, XYMultipleSeriesDataset Визуализатор : классы хранящие параметры визуализации т. к. цвет графиков, форма точек, отрисовывание сетки и т. д View – класс, отвечающий за построение графика
Демонстрация :