SlideShare a Scribd company logo
1 of 15
Проектирование и реализация
    Перевод портала
 протокола динамического
 обмена данными для веб-
  myAudience на AJAX
   портала myAudienceДипломная работа
                                         студента группы С8503А
                                     Цыбенко Василия Сергеевича


                                                    Руководитель:
      начальник отдела перспективных технологий и видеоаналитики
                                           ООО «Ронда Лимитед»
                                   Гаврик Александр Анатольевич


                                      Соруководитель от кафедры:
                                 Старший преподаватель кафедры
     Информатики, математического и компьютерного моделирования
                Владивосток, 2012 г.
                                      Кленин Александр Сергеевич
Программные продукты
myAudience



myAudience-
Measure




 myAudience-
 Count
                        2
Метрика в myAudience-Measure

 •   Внимание

 •   Возрастная категория

 •   Пол

 •   Количество




                               3
myAudience Internet Portal

•   Управление лицензиями
•   Управление юнитами
•   Получение статистических данных
•   Настройка профиля пользователя




                                      4
myAudience Internet Portal.
Организация

   Пользователи:       Разделы:
    •   Demo-аккаунт   •   Information
    •   Обычные        •   Groups & Units
        пользователи   •   Metrics
    •   Интеграторы    •   Licenses
                       •   Profile

                                            5
Имеющаяся реализация

Недостатки:
•   Любая операция требует перезагрузки всей страницы
•   Недостаточное разделение представления от логики
•   Плохая организация программного кода

Следствия:
•   Неудобство для пользователя
•   Неэффектиная работа веб-приложения
•   Сложности при поддержке и расширении функционала
                                                        7
Поставленные задачи


Серверная сторона:
•   Разделить представление и логику
•   Спроектировать протокол взаимодействия с клиентом
•   Реализовать API

Клиентская сторона:
•   Спроектировать архитектуру
•   Реализовать интерактивное взаимодействие через
    AJAX
                                                        8
Требования к реализации


Серверная часть:
•   Надежность и безопасность
•   Гибкость при расширении протокола


Клиентская часть:
•   Сохранения дизайна и интерфейса
•   Простота поддержки программного кода
•   Кроссбраузерность
                                           9
Серверная часть. Реализация


 Концепции:          Инструменты:
  •   Шаблонизатор   •   PHP 5.3
  •   JSON API       •   MySQL 5.5
                     •   Apache 2.2
                     •   Twig




                                      10
Сервер. Принцип обработки запросов




                                     11
Сервер. Архитектура




                      12
Клиент. Реализация

                 Client
                                  Инструменты:

               Controller         •   JavaScript
                                  •   HTML 4.01
        View
                          Model
                                  •   Sass
   Application                    •   jQuery
                                  •   Spine.js

                            DB    •   Underscore.js


                                                      13
Клиент. Архитектура




                      14
Клиент. Схема наследования контроллеров




                                      15
Заключение


 Технические аспекты:
 •   1815 строк кода (~ 80 Kb) на PHP
 •   3733 строк кода (~128 Kb) на JavaScript
 •   Система контроля версий SVN
 •   API содержит реализацию 40 команд


 Продакшн: portal.myaudience.com


                                               16

More Related Content

Viewers also liked

Jpa Australia Relocation Guide
Jpa Australia Relocation GuideJpa Australia Relocation Guide
Jpa Australia Relocation Guidezlovelock
 
Power point for anthropology2
Power point for anthropology2Power point for anthropology2
Power point for anthropology2hollietiger
 
Power point for anthropology102
Power point for anthropology102Power point for anthropology102
Power point for anthropology102hollietiger
 
FMA2_Cepeda
FMA2_CepedaFMA2_Cepeda
FMA2_Cepedapolibok
 
Pemasangan sistem rangkaian komputer
Pemasangan sistem rangkaian komputerPemasangan sistem rangkaian komputer
Pemasangan sistem rangkaian komputernurnabila28
 
си хэлний ойлголт
си хэлний ойлголтси хэлний ойлголт
си хэлний ойлголтbadral_0430
 
Southern blot power point
Southern blot power pointSouthern blot power point
Southern blot power pointcarebeareyre
 
Recursos colaborativos en la web
Recursos colaborativos en la webRecursos colaborativos en la web
Recursos colaborativos en la webJohn Wagner
 
Máy hút sữa
Máy hút sữaMáy hút sữa
Máy hút sữaVinhomes
 

Viewers also liked (12)

Jpa Australia Relocation Guide
Jpa Australia Relocation GuideJpa Australia Relocation Guide
Jpa Australia Relocation Guide
 
Power point for anthropology2
Power point for anthropology2Power point for anthropology2
Power point for anthropology2
 
Hyperosmia
HyperosmiaHyperosmia
Hyperosmia
 
Open Data Canvas 0.1
Open Data Canvas 0.1Open Data Canvas 0.1
Open Data Canvas 0.1
 
Power point for anthropology102
Power point for anthropology102Power point for anthropology102
Power point for anthropology102
 
FMA2_Cepeda
FMA2_CepedaFMA2_Cepeda
FMA2_Cepeda
 
Pemasangan sistem rangkaian komputer
Pemasangan sistem rangkaian komputerPemasangan sistem rangkaian komputer
Pemasangan sistem rangkaian komputer
 
си хэлний ойлголт
си хэлний ойлголтси хэлний ойлголт
си хэлний ойлголт
 
Southern blot power point
Southern blot power pointSouthern blot power point
Southern blot power point
 
Recursos colaborativos en la web
Recursos colaborativos en la webRecursos colaborativos en la web
Recursos colaborativos en la web
 
Pari2
Pari2Pari2
Pari2
 
Máy hút sữa
Máy hút sữaMáy hút sữa
Máy hút sữa
 

Similar to Presentation_ppt

Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindingsSelenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindingsCOMAQA.BY
 
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...UNETA
 
Высокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows AzureВысокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows AzureAlexander Feschenko
 
Андрей Завадский "Бессерверная архитектура"
 Андрей Завадский "Бессерверная архитектура" Андрей Завадский "Бессерверная архитектура"
Андрей Завадский "Бессерверная архитектура"Fwdays
 
Технические особенности Docsvision 5
Технические особенности Docsvision 5Технические особенности Docsvision 5
Технические особенности Docsvision 5Docsvision
 
DataBase Intellegence Presentation
DataBase Intellegence Presentation DataBase Intellegence Presentation
DataBase Intellegence Presentation Alexandr Zhuravlev
 
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public APIВиктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public APIMoscowJS
 
Промышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. ИнструментыПромышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. ИнструментыMikhail Payson
 
Backendless BaaS. Dinosaurus for Jeeconf 2013
Backendless BaaS. Dinosaurus for Jeeconf 2013Backendless BaaS. Dinosaurus for Jeeconf 2013
Backendless BaaS. Dinosaurus for Jeeconf 2013backendless
 
Микросервисный фронтенд
Микросервисный фронтендМикросервисный фронтенд
Микросервисный фронтендViacheslav Slinko
 
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)Ontico
 
Разработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для CachéРазработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для CachéInterSystems CEE
 
Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...
Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...
Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...Cisco Russia
 
Компетенции Адеква
Компетенции АдекваКомпетенции Адеква
Компетенции АдекваADEKVA
 
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.Vadim Martynov
 
Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...
Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...
Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...GeeksLab Odessa
 
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...Ontico
 
Учебные курсы по System Center 2014
Учебные курсы по System Center 2014Учебные курсы по System Center 2014
Учебные курсы по System Center 2014InstituteIBA
 

Similar to Presentation_ppt (20)

Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindingsSelenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
Selenide –  лаконичные тесты на Selenium 2 WebDriver + Java bindings
 
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
 
Высокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows AzureВысокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows Azure
 
Андрей Завадский "Бессерверная архитектура"
 Андрей Завадский "Бессерверная архитектура" Андрей Завадский "Бессерверная архитектура"
Андрей Завадский "Бессерверная архитектура"
 
Технические особенности Docsvision 5
Технические особенности Docsvision 5Технические особенности Docsvision 5
Технические особенности Docsvision 5
 
DataBase Intellegence Presentation
DataBase Intellegence Presentation DataBase Intellegence Presentation
DataBase Intellegence Presentation
 
Виктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public APIВиктор Розаев - Как не сломать обратную совместимость в Public API
Виктор Розаев - Как не сломать обратную совместимость в Public API
 
Промышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. ИнструментыПромышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. Инструменты
 
Backendless BaaS. Dinosaurus for Jeeconf 2013
Backendless BaaS. Dinosaurus for Jeeconf 2013Backendless BaaS. Dinosaurus for Jeeconf 2013
Backendless BaaS. Dinosaurus for Jeeconf 2013
 
Микросервисный фронтенд
Микросервисный фронтендМикросервисный фронтенд
Микросервисный фронтенд
 
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
Микросервисный фронтенд / Вячеслав Слинько (ЦИАН)
 
Разработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для CachéРазработка мобильного и веб интерфейса для Caché
Разработка мобильного и веб интерфейса для Caché
 
Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...
Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...
Кросс-доменная автоматизация (DC-WAN- Campus) - как собрать единую систему, и...
 
Компетенции Адеква
Компетенции АдекваКомпетенции Адеква
Компетенции Адеква
 
Diplom 1
Diplom 1Diplom 1
Diplom 1
 
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
Лучшие практики корпоративной разработки. Лекция 0: обзор курса.
 
Java Presentation.pptx
Java Presentation.pptxJava Presentation.pptx
Java Presentation.pptx
 
Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...
Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...
Java/Scala Lab: Владимир Илюшенко - Jelastic PaaS v2.5 Capabilities and Benef...
 
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
API плюс толстый клиент – новая парадигма веб-разработки? / Андрей Лебедев (Г...
 
Учебные курсы по System Center 2014
Учебные курсы по System Center 2014Учебные курсы по System Center 2014
Учебные курсы по System Center 2014
 

Presentation_ppt

  • 1. Проектирование и реализация Перевод портала протокола динамического обмена данными для веб- myAudience на AJAX портала myAudienceДипломная работа студента группы С8503А Цыбенко Василия Сергеевича Руководитель: начальник отдела перспективных технологий и видеоаналитики ООО «Ронда Лимитед» Гаврик Александр Анатольевич Соруководитель от кафедры: Старший преподаватель кафедры Информатики, математического и компьютерного моделирования Владивосток, 2012 г. Кленин Александр Сергеевич
  • 3. Метрика в myAudience-Measure • Внимание • Возрастная категория • Пол • Количество 3
  • 4. myAudience Internet Portal • Управление лицензиями • Управление юнитами • Получение статистических данных • Настройка профиля пользователя 4
  • 5. myAudience Internet Portal. Организация Пользователи: Разделы: • Demo-аккаунт • Information • Обычные • Groups & Units пользователи • Metrics • Интеграторы • Licenses • Profile 5
  • 6. Имеющаяся реализация Недостатки: • Любая операция требует перезагрузки всей страницы • Недостаточное разделение представления от логики • Плохая организация программного кода Следствия: • Неудобство для пользователя • Неэффектиная работа веб-приложения • Сложности при поддержке и расширении функционала 7
  • 7. Поставленные задачи Серверная сторона: • Разделить представление и логику • Спроектировать протокол взаимодействия с клиентом • Реализовать API Клиентская сторона: • Спроектировать архитектуру • Реализовать интерактивное взаимодействие через AJAX 8
  • 8. Требования к реализации Серверная часть: • Надежность и безопасность • Гибкость при расширении протокола Клиентская часть: • Сохранения дизайна и интерфейса • Простота поддержки программного кода • Кроссбраузерность 9
  • 9. Серверная часть. Реализация Концепции: Инструменты: • Шаблонизатор • PHP 5.3 • JSON API • MySQL 5.5 • Apache 2.2 • Twig 10
  • 12. Клиент. Реализация Client Инструменты: Controller • JavaScript • HTML 4.01 View Model • Sass Application • jQuery • Spine.js DB • Underscore.js 13
  • 15. Заключение Технические аспекты: • 1815 строк кода (~ 80 Kb) на PHP • 3733 строк кода (~128 Kb) на JavaScript • Система контроля версий SVN • API содержит реализацию 40 команд Продакшн: portal.myaudience.com 16