Розробка програмного забезпечення для аналізу сучасного стану соціальних медіа

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 18.04.2015
Размер файла 2,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

addChild(universityBar);

return;

}

var nGroup: Number = dataList.length;

var angleList: Array = new Array(nGroup);

var i:int;

 // Заполняем значениями

var m:int;

for (i=0; i<nAll; i++)

{

if (String (xmlFull.user[i].university)==»») {m = 0;}

else {m = xmlFull.user[i].university;}

for (j=0; j<dataList.length; j++)

{

if (dataList[j].id==m) {dataList[j].n ++;};

}

};

 // Сортируем по числу

dataList.sortOn («n», Array.NUMERIC | Array.DESCENDING);

for (j=0; j<dataList.length; j++) {trace («2: «+ dataList[j].name);}

 // Формируем сжатый массив

if (nGroup>10)

{

dataList[9].name = «Остальные»;

for (i=10; i<nGroup; i++)

{

dataList[9].n = dataList[9].n + dataList[i].n;

}

nGroup=10;

}

for (j=0; j<dataList.length; j++) {trace («3: «+ dataList[j].name);}

 // Выводим таблицу

var s: String;

var tBlock: Sprite;

for (var k:int = 0; k < nGroup; k++)

{

tBlock = new Sprite();

tBlock.x = x0+20; tBlock.y = y0 + 240 + 14*k;

tBlock.graphics.beginFill (colorList[k], 1);

tBlock.graphics.drawRect (0,0,9,9);

tBlock.graphics.endFill();

addChild(tBlock);

tText = new TextField();

tText.x = 20; tText.y = -5;

tText.width = 170;

tBlock.addChild(tText);

s = dataList[k].name;

if (s.length>18) {s = s.substr (0,18) +»…»;}

tText.appendText(s);

 //trace («Номер «+k+» Ширина» + tText.textWidth);

s = «;

if (tText.textWidth<28) {s = '\t\t\t\t\t';}

else if (tText.textWidth<48) {s = '\t\t\t\t';}

else if (tText.textWidth<61) {s = '\t\t\t';}

else if (tText.textWidth<85) {s = '\t\t';}

else if (tText.textWidth<99) {s = '\t';}

tText.appendText (s+ Math.round (100*Number (dataList[k].n)/nAll) + «% (» + dataList[k].n +»)\n»);

if (nAll>0) {

if (k==0) {angleList[k] = 360*Number (dataList[k].n)/nAll;}

else {angleList[k] = angleList [k-1] + 360*Number (dataList[k].n)/nAll;};

}

else if (k<nGroup) {angleList[k]=0;}

else {angleList[k]=360};

};

 // Рисуем диаграмму

universityBar = new Bar (angleList, colorList);

universityBar.x = 100 + x0;

universityBar.y = 140 + y0;

addChild(universityBar);

}

public function onBtSexClick (e: MouseEvent):void

{

 // Показать статистики блок статистики

trace («Показать статистики. Statistica.onBtCityClick»);

setViewBlock(1);

appData.putButton(11);

}

public function onBtCityClick (e: MouseEvent):void

{

 // Показать статистики блок статистики

trace («Показать статистики. Statistica.onBtCityClick»);

setViewBlock(2);

appData.putButton(12);

}

conInt = 0;

 // подсчет погрешности

public function ci(obj) {

if (obj.ssbox.value == «») {

ss=0

}

else {

ss = eval (obj.ssbox.value)

}

if (obj.popbox.value == «») {

pop=0

}

else {

pop = eval (obj.popbox.value)

}

if (obj.popbox.value == «») {

pop=0}

else {

pop = eval (obj.popbox.value)}

if (obj.perbox.value == «») {

perc=0}

else {

perc = eval (obj.perbox.value)}

if (ss == 0 || perc < 1 || perc >99) {

alert («You must enter a Sample Size and a Percentage between 1 and 99»)

}

else {

if (pop == 0) {

pf = 1}

else {

pf = (pop - ss) / (pop - 1)}

conInt = Math.sqrt (zValC * (perc / 100) * (1 - perc / 100) / ss * pf) * 100

 // round and display

pf=parseInt(conInt);

conInt=Math.round((conInt-pf)*100);

obj.cibox.value=pf+conInt/100

 //obj.cibox.value=pf

}

}

public function onBtNameClick (e: MouseEvent):void

{

 // Показать статистики блок статистики

trace («Показать статистики. Statistica.onBtNameClick»);

setViewBlock(3);

appData.putButton(13);

}

}

}

public class Bar extends MovieClip {

private var radius: Number = 70;

private var colorList: Array;

public function Bar (m: Array, cList: Array, empty: Boolean=false) {

trace («Cоздаем диаграмму Bar. Bar()»);

colorList = cList;

this.graphics.lineStyle();

if (empty)

{

trace («Рисуем пустую диаграмму»);

this.graphics.beginFill (colorList[9], 1);

this.graphics.drawCircle (0,0, radius);

return;

}

 //this.graphics.lineTo (radius, 0);

 //var startAngle: Number=0;

 //var endAngle: Number=10;

 //var m: Array=new Array (20,150,210, 355,360);

var tAngle: Number;

 // Заливаем сектора

for (var k: Number=0; k<m.length; k++) {

if (k==0) {tAngle = 0;} else {tAngle = m [k-1];};

this.graphics.beginFill (colorList [k% colorList.length], 1);

drawSector (tAngle, m[k]);

this.graphics.endFill();

}

 // Отрисовываем контуры

var lab: TextField;

var x, y: Number;

for (var i: Number=0; i<m.length; i++) {

if (i==0) {tAngle =0;} else {tAngle=m [i-1];};

if (((m[i] - tAngle)/3.6)<1.5) {

this.graphics.lineStyle();

}

if (((m[i] - tAngle)/3.6)<3) {

this.graphics.lineStyle (1,0xFFFFFF);

}

else if (((m[i] - tAngle)/3.6)<7) {

this.graphics.lineStyle (2,0xFFFFFF);

}

else if ((m[i] - tAngle)==360) {this.graphics.lineStyle();}

else {this.graphics.lineStyle (3,0xFFFFFF);};

drawSector (tAngle, m[i]);

lab = new TextField();

x = (radius+15)*Math.sin((- (tAngle+m[i])/2+180)*Math.PI/180) - 10;

y = (radius+10)*Math.cos((- (tAngle+m[i])/2+180)*Math.PI/180) - 7;

 //if ((((tAngle+m[i])/2)>45) && (((tAngle+m[i])/2)<135)) {;};

 //if (((tAngle+m[i])/2)>225 && ((tAngle+m[i])/2)<315) {x = x - 20;};

lab.x = x;

lab.y = y;

if (((m[i] - tAngle)/3.6)>=2.5) {

lab.appendText (String (Math.round((m[i] - tAngle)/3.6)) + «%»);

};

addChild(lab);

}

 //this.graphics.lineStyle (1,0x00FFFF);

}

private function drawSector (startAngle: Number, endAngle: Number) {

var xc, yc: Number;

this.graphics.lineTo (radius*Math.sin((-startAngle+180)*Math.PI/180), radius*Math.cos((-startAngle+180)*Math.PI/180));

for (var i: Number = startAngle; i<=endAngle; i++) {

xc = radius*Math.sin((-i+180)*Math.PI/180);

yc = radius*Math.cos((-i+180)*Math.PI/180);

this.graphics.lineTo (xc, yc);

}

this.graphics.lineTo (0,0);

}

}

public class FriendsFilter {

public var sex: Number = -1;

public var ageDown: Number = 0;

public var ageUp: Number = 0;

public var city: Number = -1;

public var university: Number = -1;

public var group: Number = -1;

public function FriendsFilter() {

trace («Создаем фильтр FriendsFilter()»);

}

public function toString():String

{

trace («Пишем строку. FriendsFilter.getString()»);

var s: String = «»;

s = s + «sex» + sex;

s = s + «ageDown» + ageDown;

s = s + «ageUp» + ageUp;

s = s + «city» + city;

s = s + «university» + university;

s = s + «group» + group;

return s;

}

}

}

public class Data extends EventDispatcher

{

public var serverURL: String = «http://koroid.fvds.ru/»// Путь к серверу

private var xmlFriendsLoader:URLLoader = new URLLoader();

private var xmlMapLoader:URLLoader = new URLLoader();

private var xmlNamesLoader:URLLoader = new URLLoader();

private var xmlloader:URLLoader = new URLLoader()

private var xmlObjectLoader:URLLoader = new URLLoader();

private var xmlOffersLoader:URLLoader = new URLLoader();

public var viewer_id: Number;

private var auth_key: String;

private var secret: String;

private var sid: String;

private var api_id: String;

private var api_url: String;

public var player_name: String;

public var xmlFriendsData:XML; // Полученные данные об изменениях в друзьях

private var curr_id: Number = 0; // Текущий пользователь для сканирования, если 0 то сканирование не производиться

private var curr_loadind_friend: Number;

Array(); // Список уникальных имен в данных

public var nNameList: Number = 0; // Счетчик попыток загрузки сопоставлений имен

public var xmlMapData:XML = <root/>;

private var myTimer: Timer;

private var xmlObjectsData:XML;

private var xmlObjectsPlaceData:XML;

private var xmlOffers:XML;

 // Для сканирования друзей

public var showFriends: Boolean = false// Режим показа статистики друзей

private var scanFriendsLoader:URLLoader;

private var sendScanLoader:URLLoader = new URLLoader(); // Для сканирования друзей

private var logLoader:URLLoader = new URLLoader(); // Для отсылки ошибок на сервер

private var logRrequest:URLRequest = new URLRequest (serverURL + «log_friends_error.php»);

private var listFriendsForScan:XML; // Список id для сканирования по списку

private var xmlFullFriendFriendsData:XML = <root/>// Данные по друзьям друга

private var xmlShortFriendFriendsData:XML;

public var currPlayerName: String;

public var testMode: Number=0; // Тестовый или нет режим работы

public static const NOT_LOAD: String = «notLoad»;

public static const NEW_FULL_DATA: String = «newFullData»;

public static const NEW_DATA: String = «newData»;

public static const COSTRUCTION_DATA: String = «construstData»;

public static const ON_LOAD_OBJECTS: String = «onLoadObjects»;

public static const COSTRUCTION_COMPLITE: String = «construstionComplite»;

 // Создаем объект

public function Data (id: Number, t_auth_key: String, t_secret: String, t_sid: String, t_api_id: String, t_api_url: String, t_player_name: String, t_testMode: String)

{

trace ('Создание панели данных о польз. Data ('+ String(id) +')');

viewer_id = id;

auth_key = t_auth_key;

secret = t_secret;

sid = t_sid;

api_id = t_api_id;

api_url = t_api_url;

player_name = t_player_name;

if (t_testMode== «Test») {testMode = 1}

}

 // Сводные данные о пользователе, для логов

public function StringData():String

{

var s: String = «»;

try

{

s = s + «<i>» + String (viewer_id) +:</i>»;

s = s + «<n>» + String(haveFullFriendsData)=»</n>»;

s = s + «<S>» + String(xmlFullFriendsData)+</s>»;

}

catch (e: Error)

{

return «Ошибка при сборе данных. Data. StringData.»;

}

return s;

}

 // Загрузка с сервера

public function sendFriends (auth_key: String):void

{

trace ('Загружаем данные. Data.sendFriends().');

if (haveFullFriendsData &&! haveChangeFriendsData)

{

var requestloader:URLRequest = new URLRequest (serverURL + «list_friends.php»);

requestloader.method = URLRequestMethod.POST;

var stat_vars:URLVariables = new URLVariables();

stat_vars ['id_player'] = viewer_id;

stat_vars['s'] = xmlShortFriendsData;

stat_vars ['auth_key'] = auth_key;

stat_vars['res'] = 1;

if (testMode==1) {stat_vars['type'] = 1;}

requestloader.data = stat_vars;

xmlFriendsLoader.load(requestloader);

xmlFriendsLoader.addEventListener (Event.COMPLETE, onCompleteFriends);

xmlFriendsLoader.addEventListener (IOErrorEvent.IO_ERROR, onErrorConnectToServer);

dispatchEvent (new Event (Data.BEGIN_LOAD_CHANGES_DATA));

}

}

internal function logThis (s: String, type:int=1, place: String =»»):void

// Записываем данные в лог на сервере

trace ('Записываем данные в лог на сервере. Data.logThis(). ');

 //trace ('Записываем данные в лог на сервере. Data.logThis(). '+s);

var stat_vars:URLVariables = new URLVariables();

logRrequest.method = URLRequestMethod.POST;

stat_vars ['id_player'] = viewer_id;

stat_vars['place'] = place;

stat_vars['type'] = type;

stat_vars['s'] = s;

logRrequest.data = stat_vars;

logLoader.load(logRrequest);

}

}

Додаток Б

Запитання анкети

Варіанти відповіді так/ні/іноді на запитання 1-17.

1. Чи використовуєте Ви соціальні мережі

2. Чи спілкуєтесь Ви в чатах / блогах / форумах?

3. Ви слухаєте музику в Інтернеті/Інтернет-радіо?

4. Чи граєте Ви в онлайн ігри?

5. Чи читаєте ви форуми та блоги?

6. Чи заробляєте Ви гроші виробництвом контенту?

7. Ви дивитесь фото та відео в Інтернеті?

8. Ви шукаєте потрібну Інформацію в Інтернеті

9. Ви займаєтесь маркетинговими дослідженнями в Інтернеті?

10. Чи читаєте Ви в мережі Інтернет політичні та економічні новини?

11. Чи шукаєте Ви в Інтернеті товари?

12. Дивитесь ціни на різні товари та послуги в Інтернеті?

13. Читаєте в Інтернеті новини культури і шоу-бізнеса?

14. Чи шукаєте в Інтернеті інформацію для відпочинку чи туризму?

15. Чи купуєте Ви в Інтернеті товари?

16. Чи шукали Інформацію про роботу в мережі Інтернет?

17. Чи користуєтесь Інтернетом для роботи?

18. Чи користуєтесь Інтернетом для навчання?

19. Де Ви зазвичай користуєтесь Інтернетом?

a. Вдома

b. На роботі / навчанні

c. У публічному місці

d. У родичів і друзів

e. Через мобільний Інтернет

20. Вкажіть Ваш рід занять

a. Підприємець

b. Курівник

c. Спеціаліст

d. Службовець

e. Робочий

f. Навчаюся

g. Домогосподарка

h. Пенсіонер

i. Безробітний

Размещено на Allbest.ru


Подобные документы

  • Аналіз особливостей мови програмування Java та середовища Android Studio. Розробка програмного забезпечення для якісного та ефективного вивчення іноземних слів. Побудова базових алгоритмів і структури даних. Вибір мови програмування, реалізація програми.

    курсовая работа [335,3 K], добавлен 11.01.2015

  • Аналіз навігаційних технологій у сучасних AVL системах. Структура системи і вимоги до апаратного забезпечення, розробка алгоритмів функціонування окремих програмних модулів. Вибір мови програмування і СУБД. Тестовий варіант програмного забезпечення.

    дипломная работа [1,8 M], добавлен 17.12.2015

  • Дослідження та аналіз об’єкту програмування. Основні архітектурні риси JavaScript. Переваги CSS розмітки. Структура HTML-документа. Вимоги до апаратного та програмного забезпечення. Опис програми та її алгоритмів. Оцінка вартості програмного продукту.

    дипломная работа [1,0 M], добавлен 01.09.2016

  • Розробка та схема алгоритму проектованої гри. Особливості мови програмування та середовища "Microsoft Visual Studio C++ 2008 Express Edition". Лістинг програми та загальний опис її роботи, аналіз отриманих результатів та оцінка практичної ефективності.

    курсовая работа [762,8 K], добавлен 03.05.2015

  • Модель аналізу-синтезу компіляції. Формальний опис вхідної мови програмування. Вибір технології програмування, проектування таблиць транслятора та вибір структур даних. Опис програми реалізації лексичного аналізатора. Розробка дерев граматичного розбору.

    курсовая работа [75,8 K], добавлен 26.12.2009

  • Розробка бази даних для меблевої фірми. Обстеження і аналіз предметної області та побудова концептуальної, логічної та фізичної моделі цієї бази даних. Використання мови програмування Visual Basic при написанні програмного коду, що обслуговує базу даних.

    курсовая работа [1,4 M], добавлен 24.10.2010

  • Аналіз сучасного стану технологій програмування. Засоби реалізації об'єктів в мові C++, структура даних і функцій. Розробка програмного продукту - гри "трикутники", з використовуванням моделей, класів і функцій об’єктно-орієнтованого програмування.

    курсовая работа [117,8 K], добавлен 14.03.2013

  • Проектування архітектури гри "Тетріс". Аналіз вимог до неї. Вивчення особливостей реалізації, кодування та тестування програми. Алгоритм побудови робочого поля. Вибір мови програмування. Розробка і налагодження тексту програми. Інструкції з експлуатації.

    курсовая работа [460,9 K], добавлен 04.03.2014

  • Реєстр ОС Windows 7 та оцінка його ролі, структура та елементи. Структура та функціональні особливості Windows-додатку. Розробка програмного додатку зчитування даних з реєстру: вибір середовища програмування та алгоритм, а також інструкція користувача.

    курсовая работа [228,3 K], добавлен 29.05.2015

  • Етапи розробки проекту. Вимоги до апаратного і програмного забезпечення, до користувача. Специфікація та структура даних, які мають бути розміщеними в системі. Вигляд інтерфейсу системи програмного забезпечення. Розробка бази даних косметичного салону.

    дипломная работа [1,8 M], добавлен 21.02.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.