Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



2. мобільний додаток feeder

Скачати 170.93 Kb.

2. мобільний додаток feeder




Скачати 170.93 Kb.
Сторінка1/2
Дата конвертації18.05.2017
Розмір170.93 Kb.
  1   2

2. МОБІЛЬНИЙ ДОДАТОК FEEDER

2.1.

Мобільний додаток Мобільний додаток (англ. «Mobile app») - програмне забезпечення, призначене для роботи на смартфонах, планшетах та інших мобільних пристроях. Багато мобільних додатків встановлені на самому пристрої або можуть бути завантажені на нього з онлайнових магазинів додатків, таких як App Store, Google Play, Windows Phone Store та інших, безкоштовно або за плату.
Опис роботи програми

Feeder ­­– мобільний додаток, що є клієнтом для декількох соціальних мереж.

Соціа́льна мере́жа - соціальна структура, утворена індивідами або організаціями. Вона відображає розмаїті зв'язки між ними через різноманітні соціальні взаємовідносини, починаючи з випадкових знайомств і закінчуючи тісними родинними зв'язками.

Ціль проекту Feeder ­­– надати можливість власникам смартфонів, які користуються такими соціальними мережами як Facebook, Twitter, ВКонтакте в одному мобільному додатку мати доступ до всіх своїх акаунтів.

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

2.2. Структура програми

Програми виступає в ролі клієнта в моделі взаємодій «клієнт-сервер».

Архітектура клієнт-сервер є одним із архітектурних шаблонів програмного забезпечення та є домінуючою концепцією у створенні розподілених мережних за стосунків і передбачає взаємодію та обмін даними між ними.

Архітекту́рні шабло́ни програ́много забезпе́чення (англ. Software architectural patterns) - це шаблони програмного забезпечення, що являють собою звіт «добрих практик» (англ. good practices) вирішення архітектурних проблем розробки програмного забезпечення.

В даному разі є декілька серверів, які є незалежними один від одного. За допомогою прикладного програмного інтерфейсу (англ.

Прикладни́й програ́мний інтерфе́йс (інтерфейс програмування застосунків, інтерфейс прикладного програмування) (англ. Application Programming Interface, API) - набір визначень взаємодії різнотипного програмного забезпечення.
Application Programming Interface, API) додаток взаємодіє з серверами соціальних мереж і отримує необхідні дані.

Компоненти програми:



  • АРІ соціальних мереж

  • Модуль авторизації користувача у соціальних мережах, який зберігає стан підключених акаунтів

  • Модуль, що виконує запити до відповідних серверів і отримує відповіді у форматі JSON або XML

  • Модуль, який обробляє результати запитів і представляє їх у зручному вигляді

  • Модуль кешування зображень

  • Інтерфейс користувача

2.3. Авторизація користувача

Авторизація ­­– надання певній особі або групі осіб прав на виконання певних дій; а також процес перевірки (підтвердження) даних при спробі виконання цих дій.

Авторизацію не слід плутати з аутентифікацією: аутентифікація – це лише процедура перевірки достовірності даних, наприклад, перевірки відповідності введеного користувачем пароля до облікового запису паролю в базі даних, або перевірка цифрового підпису по ключу шифрування, або перевірка контрольної суми файлу на відповідність заявленої автором цього файлу.

Обліковий запис (сленг. акаунт, обліковка або обліківка) у комп'ютерній системі - сукупність наданої інформації про користувача, засобів та прав користувача відносно багатокористувацької системи.
Електро́нний цифрови́й пі́дпис (ЕЦП) (англ. digital signature) - вид електронного підпису, отриманого за результатом криптографічного перетворення набору електронних даних, який додається до цього набору або логічно з ним поєднується і дає змогу підтвердити його цілісність та ідентифікувати підписувача.

Алгоритм авторизації користувача:



  1. Початок

  2. Вибір мережі зі списку доступних

  3. Відкриття вікна браузера для аутентифікації користувача на сайті відповідної мережі

  4. Ввід логіна та пароля

  5. Якщо введені дані правильні, то п.6, інакше – п.9

  6. Дозвіл користувачем доступу до своїх даних

  7. Передача в додаток ключа access_token для доступу АРІ

  8. Завантаження стрічки новин

  9. Кінець

2.4. Завантаження стрічки новин

Для завантаження необхідних даних з серверів соціальних мереж потрібно використовувати їх АРІ.

Інтерфейс програмування додатків (іноді інтерфейс прикладного програмування) (англ. Application Programming Interface, API) – набір готових класів, процедур, функцій, структур і констант, що надаються додатком (бібліотекою, сервісом) для використання у зовнішніх програмних продуктах. Алгоритм завантаження стрічки новин (доступно, коли користувач авторизований хоча б в одній соціальній мережі).

Алгоритм завантаження стрічки новин (доступно при хоч одному авторизованому акаунті):



  1. Початок

  2. Визначення доступних мереж

  3. Для кожної мережі виконати запит на отримання певної кількості постів зі своєї стрічки новин

  4. Отримати відповідь у форматі JSON або XML та обробити її

  5. Видати на екран список

  6. Кінець

2.5. Пошук інформації в соціальних мережах

Алгоритм пошуку інформації в соціальних мережах (доступно для неавторизованих користувачів):


  1. Початок

  2. Ввести шуканий текст або хештег в поле пошуку

  3. Для кожної мережі виконати запит на отримання певної кількості постів в яких зустрічається даний текст

  4. Отримати відповідь у форматі JSON або XML та обробити її

  5. Видати на екран списки

  6. Кінець

2.6.
Інформаці́йний по́шук (ІП) (англ. Information retrieval) - наука про пошук неструктурованої документальної інформації. Особливо це відноситься до пошуку інформації в документах, пошук самих документів, добуття метаданих з документів, пошуку тексту, зображень, відео та звуку у локальних реляційних базах даних, у гіпертекстових базах даних таких, як Інтернет та локальні інтранет.
Кешування зображень

LRU Cache (Least Recently Used Cache) — це алгоритм кешування, збереження отриманих даних. Суть алгоритму полягає в наступному: у кеша є фіксований розмір N і в ньому зберігаються дані тільки для N найпопулярніших запитів, тобто ті дані, які, найвірогідніше, будуть запитані знову. При цьому, як тільки число кешованих даних перевищує задане N, алгоритм витісняє з кешу дані, які найдовше не запрошувалися (рис. 2.3.). Крім LRU Cache існує безліч інших алгоритмів кешування – це і алгоритм Беладі, і MRU, i Pseud-LRU. Основна перевага алгоритму LRU Cache в тому, що він простий в реалізації і залишає в кеші останні запитувані дані, що в нашому випадку є найбільш підходящим.

У мові Java реалізація даного алгоритму не складе труднощів, адже для неї знадобляться всього дві структури даних:


  1. Хеш-таблиця, яка буде безпосередньо зберігати кешовані дані

  2. Черга з пріоритетами, підтримуюча додавання в чергу значення з пріоритетом і витяг (видалення) з неї

У нашому випадку дані, а саме картинки, зберігаються на флеш пам’яті мобільного пристрою, і додаються або видаляються в міру необхідності.
В програмуванні та комп'ютерних науках структу́ри да́них - це способи організації даних в комп'ютерах. Часто разом зі структурою даних пов'язується і специфічний перелік операцій, що можуть бути виконаними над даними, організованими в таку структуру.
Тепер зображення з недавно переглянутих користувачем сторінок зберігаються у нього в пам’яті пристрою і не вимагають завантаження з інтернету, що економить його час та гроші.

2.7. Концепція користувацького інтерфейсу програми

Головною екранною формою програми є MainList.

Інтерфе́йс користувача́ (англ. user interface, UI, дружній інтерфейс) - засіб зручної взаємодії користувача з інформаційною системою. Сукупність засобів для обробки та відображення інформації, максимально пристосованих для зручності користувача; у графічних системах інтерфейс користувача реалізовується багатовіконним режимом, змінами кольору, розміру, видимості (прозорість, напівпрозорість, невидимість) вікон, їхнім розташуванням, сортуванням елементів вікон, гнучкими налаштовуваннями як самих вікон, так і окремих їхніх елементів (файли, папки, ярлики, шрифти тощо), доступністю багатокористувацьких налаштувань.
Вона завантажується при запуску і з нею проходять основні операції (рис. 2.3.). На верхній панелі знаходиться поле пошуку та кнопка налаштувань.

В залежності від того, які соціальні мережі доступні при завантаженні стрічки власних новин чи при отриманні результатів пошуку, для кожної мережі створюється окремий список постів. Він розміщується в окремій вкладці з назвою відповідної мережі. Переключатися між списками можна натискаючи на саму вкладку або за допомогою жестів вправо-вліво.

У вікні налаштувань (рис. 2.4.) можна підключити свої акаунти соціальних мереж.

3. ПРОГРАМНІ ЗАСОБИ ДЛЯ ДОДАТКУ FEEDER

3.1.

Програ́мне забезпе́чення (програ́мні за́соби) (ПЗ; англ. software) - сукупність програм системи обробки інформації і програмних документів, необхідних для експлуатації цих програм.
Вибір технологій

Оскільки середовищем роботи кліентської програми для соціальних мереж було обрано операційну систему Android, розглянемо існуючі технології розробки мобільних додатків під дану платформу.

3.1.1. Native додатки

Розробка додатків для платформи Android ведеться переважно мовою Java. Для створення програм мовою Java необхідно спеціальне програмне забезпечення. Найостанніші версії цього ПО можна завантажити з офіційного сайту розробника, Oracle Corporation.

Операційна система Операці́йна систе́ма, скорочено ОС (англ. operating system, OS) - це базовий комплекс програм, що виконує управління апаратною складовою комп'ютера або віртуальної машини; забезпечує керування обчислювальним процесом і організовує взаємодію з користувачем.
Oracle (Oracle Corporation) - американська корпорація, найбільший у світі розробник програмного забезпечення для організацій, великий постачальник серверного обладнання. Oracle Corporation (nasdaq ORCL) - одна з найбільших американських компаній, розробників систем керування базами даних, знарядь для розробки баз даних, а також ERP-систем.
До цього програмному комплексу відносяться такі інструменти як: JRE (Java Runtime Environment) i JDK (Java Development Kit). Перший інструмент являє собою середовище виконання – мінімальну реалізацію

  1   2


Скачати 170.93 Kb.