Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Windows 8
  • Cum să închei o relație fără a-ți pierde prietenii comuni. Algoritm pentru determinarea secțiunii „Posibili prieteni

Cum să închei o relație fără a-ți pierde prietenii comuni. Algoritm pentru determinarea secțiunii „Posibili prieteni

Bună, habrauser.
Odată am avut nevoie să găsesc o persoană, știind înfățișarea lui și știind despre apartenența sa la un anumit club. Am deținut și adresele (VKontakte) ale paginilor altor doi membri ai clubului. Aproape sigur că persoana pe care o căutau era un prieten al fiecăruia dintre ei. Această problemă poate fi rezolvată în diferite moduri. În articol voi scrie despre cum am implementat o soluție folosind API-ul vk.com.
1. Sarcină
Creați un serviciu care va găsi toți prietenii comuni ai doi utilizatori individuali fără a necesita verificare și un cont de rețea socială pentru utilizatorii de servicii. Obțineți informații despre prietenii comuni:
  • fotografia
Implementați o sarcină bazată pe API-ul VKontakte. Scrieți o clasă de hotel pentru aceasta.
2.Decizie
2.1.Definiți metodele API necesare
Mergem la lista de metode API. Și căutând, găsim ceea ce ne trebuie.

Există o metodă de a obține prietenii utilizatorului prieteni.get.
prieteni.get - returnează o listă de ID-uri de utilizator ale prietenilor utilizatorului sau informații extinse despre prietenii utilizatorului (când utilizați parametrul câmpuri).

Și, important, ca parte a rezolvării sarcinii, aceasta este o metodă publică care nu necesită un access_token.

Există un singur parametru necesar:

Folosind această metodă, puteți obține informații despre toți prietenii fiecăruia dintre cele două seturi ale noastre, dar această abordare nu va fi optimă. Utilizatorul A poate avea 2000 de persoane ca prieteni, doar 3 persoane se vor intersecta cu prietenii utilizatorului B. În acest caz, informațiile despre 1997 de utilizatori vor fi inutile pentru noi, iar resursele cheltuite pentru obținerea lor vor fi irosite.
Vom solicita doar identificatori de utilizator și, după ce am primit numerele de care avem nevoie (care aparțin setului A și B), putem deja selecta informații din acestea.

Există o metodă de a obține informații despre utilizator utilizatorii.get.
utilizatorii.get -Returnează informații extinse despre utilizator.

De asemenea, această metodă nu are nevoie de un access_token, care este ideal pentru sarcina noastră.


În user_ids vom trece o serie de ID-uri de utilizator care apar în ambele seturi.
Dorim să obținem doar un avatar cu dimensiunea de 100*100, pentru aceasta vom trece valoarea photo_100 în parametrul fields.

2.2 Să trecem la latura practică
Am scris o clasă php simplă:

Clasa VkFriends (funcția publică clean_var($var) ( $var = strip_tags($var); $var = preg_replace("~\D+~", "", $var); $var = trim($var); return $ var; ) funcția publică get_friends($u_id) ( $prieteni = file_get_contents("https://api.vk.com/method/friends.get?user_id=".$u_id); $prieteni = json_decode($prieteni); if(!isset($prieteni->eroare))( return $prieteni; )else( returnează ""; ) ) funcția publică prieteni_prieteni($prieteni) ( $reciprocă = intersect_matrice($prieteni->răspuns, $prieteni->răspuns) ); if(!empty($mutual))( return $mutual; )else( return ""; ) ) funcția publică get_users_info($users) ( $u_ids = implode(",",$users); $u_info = file_get_contents ("https://api.vk.com/method/users.get?user_ids=".$u_ids."&fields=photo_100"); $u_info = json_decode($u_info); return $u_info; ) funcția publică view_user_info( $u_info) ( $uid = $u_info->uid; $first_name = $u_info->prenume; $last_name = $u_info->last_name; = $u_info->photo_100; print("

"); ) funcția publică view_users_info($users_info) ( for($i=0;$i răspuns);$i++)( $this->view_user_info($users_info->response[$i]); ) ) )

Acum să ne uităm la clasa noastră în acțiune:

$vkf = noi VkFriends; $u_id = $vkf->clean_var($_POST["u1"]);//curățați variabilele din POST $u_id = $vkf->clean_var($_POST["u2"]); if(($u_id!="")&&($u_id!=""))( echo "

"; $prieteni = $vkf->get_friends($u_id);//obținerea listei de prieteni de la utilizatorul cu u_id $friends = $vkf->get_friends($u_id); if(($prieteni!="")&&($ prieteni!=""))( $mutual = $vkf->prieteni_reciproci($prieteni);//creează o nouă matrice din matrice intersectate if($mutual!="")( $users_info = $vkf->get_users_info($mutual) );//obținerea de informații despre utilizatorii care sunt reciproci $vkf->view_users_info($users_info);//vezi informații despre utilizatorii selectați )else( print("
Bună, habrauser.
Odată am avut nevoie să găsesc o persoană, știind înfățișarea lui și știind despre apartenența sa la un anumit club. Am deținut și adresele (VKontakte) ale paginilor altor doi membri ai clubului. Aproape sigur că persoana pe care o căutau era un prieten al fiecăruia dintre ei. Această problemă poate fi rezolvată în diferite moduri. În articol voi scrie despre cum am implementat o soluție folosind API-ul vk.com.
1. Sarcină
Creați un serviciu care va găsi toți prietenii comuni ai doi utilizatori individuali fără a necesita verificare și un cont de rețea socială pentru utilizatorii de servicii. Obțineți informații despre prietenii comuni:
  • fotografia
Implementați o sarcină bazată pe API-ul VKontakte. Scrieți o clasă de hotel pentru aceasta.
2.Decizie
2.1.Definiți metodele API necesare
Mergem la lista de metode API. Și căutând, găsim ceea ce ne trebuie.

Există o metodă de a obține prietenii utilizatorului prieteni.get.
prieteni.get - returnează o listă de ID-uri de utilizator ale prietenilor utilizatorului sau informații extinse despre prietenii utilizatorului (când utilizați parametrul câmpuri).

Și, important, ca parte a rezolvării sarcinii, aceasta este o metodă publică care nu necesită un access_token.

Există un singur parametru necesar:

Folosind această metodă, puteți obține informații despre toți prietenii fiecăruia dintre cele două seturi ale noastre, dar această abordare nu va fi optimă. Utilizatorul A poate avea 2000 de persoane ca prieteni, doar 3 persoane se vor intersecta cu prietenii utilizatorului B. În acest caz, informațiile despre 1997 de utilizatori vor fi inutile pentru noi, iar resursele cheltuite pentru obținerea lor vor fi irosite.
Vom solicita doar identificatori de utilizator și, după ce am primit numerele de care avem nevoie (care aparțin setului A și B), putem deja selecta informații din acestea.

Există o metodă de a obține informații despre utilizator utilizatorii.get.
utilizatorii.get -Returnează informații extinse despre utilizator.

De asemenea, această metodă nu are nevoie de un access_token, care este ideal pentru sarcina noastră.


În user_ids vom trece o serie de ID-uri de utilizator care apar în ambele seturi.
Dorim să obținem doar un avatar cu dimensiunea de 100*100, pentru aceasta vom trece valoarea photo_100 în parametrul fields.

2.2 Să trecem la latura practică
Am scris o clasă php simplă:

Clasa VkFriends (funcția publică clean_var($var) ( $var = strip_tags($var); $var = preg_replace("~\D+~", "", $var); $var = trim($var); return $ var; ) funcția publică get_friends($u_id) ( $prieteni = file_get_contents("https://api.vk.com/method/friends.get?user_id=".$u_id); $prieteni = json_decode($prieteni); if(!isset($prieteni->eroare))( return $prieteni; )else( returnează ""; ) ) funcția publică prieteni_prieteni($prieteni) ( $reciprocă = intersect_matrice($prieteni->răspuns, $prieteni->răspuns) ); if(!empty($mutual))( return $mutual; )else( return ""; ) ) funcția publică get_users_info($users) ( $u_ids = implode(",",$users); $u_info = file_get_contents ("https://api.vk.com/method/users.get?user_ids=".$u_ids."&fields=photo_100"); $u_info = json_decode($u_info); return $u_info; ) funcția publică view_user_info( $u_info) ( $uid = $u_info->uid; $first_name = $u_info->prenume; $last_name = $u_info->last_name; = $u_info->photo_100; print("

"); ) funcția publică view_users_info($users_info) ( for($i=0;$i răspuns);$i++)( $this->view_user_info($users_info->response[$i]); ) ) )

Acum să ne uităm la clasa noastră în acțiune:

$vkf = noi VkFriends; $u_id = $vkf->clean_var($_POST["u1"]);//curățați variabilele din POST $u_id = $vkf->clean_var($_POST["u2"]); if(($u_id!="")&&($u_id!=""))( echo "

"; $prieteni = $vkf->get_friends($u_id);//obținerea listei de prieteni de la utilizatorul cu u_id $friends = $vkf->get_friends($u_id); if(($prieteni!="")&&($ prieteni!=""))( $mutual = $vkf->prieteni_reciproci($prieteni);//creează o nouă matrice din matrice intersectate if($mutual!="")( $users_info = $vkf->get_users_info($mutual) );//obținerea de informații despre utilizatorii care sunt reciproci $vkf->view_users_info($users_info);//vezi informații despre utilizatorii selectați )else( print("

Rețeaua de socializare „VKontakte” este unul dintre cele mai populare proiecte de internet din Rusia și din țările post-sovietice. În fiecare zi, an de an, resursa este folosită de milioane de utilizatori care merg pe vk.com nu numai pentru a discuta între ei, ci și pentru a afla știrile, pentru a asculta înregistrările audio preferate, pentru a viziona un film sau serial, pentru a învăța ceva interesant și chiar schițați unde să mergeți pentru a vă actualiza garderoba.

În acest moment, toată lumea poate adăuga până la 10 mii de alți „locuitori” ai rețelei de socializare ca prieteni, iar, conform statisticilor, utilizatorul mediu al resursei are aproximativ 200-300 de prieteni ca prieteni. Cu toate acestea, căutând prin lista prietenilor tăi VKontakte, poți afla singuri în mod neașteptat că aceștia se află într-o ordine diferită și că uneori pot schimba locurile. De ce se întâmplă acest lucru și cum se formează întreaga listă?

Așa cum a fost înainte

Înainte de a răspunde la întrebarea de mai sus, aș dori să-mi amintesc cum s-a format lista prietenilor VKontakte cu câțiva ani în urmă. În urmă cu câțiva ani, persoanele afișate în listele de prieteni ale unui utilizator erau sortate după evaluare. Totul este clar aici: cu cât ratingul paginii utilizatorului era mai mare, cu atât era mai mare afișat în lista de prieteni. O evaluare poate fi obținută completând informații pe propria pagină sau prin achiziționarea de voturi suplimentare. Ulterior, s-a decis renunțarea la rating, ceea ce a supărat foarte mult utilizatorii care au cumpărat un număr mare de voturi și/sau le-au oferit altor „locuitori” ai rețelei de socializare.

Cum se formează acum lista de prieteni

Acum se formează lista de prieteni din cea mai populară rețea de socializare in caz contrar: primele poziții din listă sunt acei utilizatori cu care comunicați cel mai des. Cu toate acestea, această sortare a listei de prieteni VK poate nedumeri unii utilizatori. De exemplu, unii se întreabă de ce o persoană cu care comunicarea este extrem de rară se află atât de sus pe listă. Răspunsul este simplu - la alcătuirea listei se iau în considerare nu numai mesajele, ci și like-urile, vizualizările paginii, răspunsurile, comentariile la postări. Se pare că nu numai utilizatorul cu care nu comunici atât de mult poate deveni primul în lista ta de prieteni.

Cu toate acestea, există o mică excepție de la această regulă: utilizatorii pe care i-ați adăugat recent pe lista dvs. de prieteni sunt de obicei situați pe locul 5 sau 6 în listă, astfel încât, conform dezvoltatorilor rețelei de socializare, să nu pierdeți din vedere lor.

Ordinea prietenilor care sunt pe site

Acum merită menționat cum sunt sortați utilizatorii din lista de prieteni online. Aici, în mare, exact același principiu: locația prietenilor converge cu cea din secvența generală, deși sunt afișați doar acei utilizatori care sunt online. Dacă utilizați opțiunile „Colegi”, „Cei mai buni prieteni” și altele asemenea, atunci distribuția listelor de prieteni în ei va fi, de asemenea, similară.

Cum este lista prietenilor altor utilizatori

Dacă situația cu locația propriilor prieteni este deja mai mult sau mai puțin clară, atunci cum rămâne cu prietenii altor utilizatori pe care îi vedem de pe pagina noastră? Totul este puțin diferit aici: distribuția prietenilor aici se bazează pe numărul de cunoștințe reciproce cu persoana a cărei pagină o vizualizați. In cazul in care nu aveti prieteni comuni, lista de prieteni se formeaza in functie de data inregistrarii utilizatorilor pe site.

Se poate schimba comanda?

După ce totul a devenit deja clar despre sortarea prietenilor VKontakte, putem discuta dacă această ordine poate fi schimbată. Din păcate, dezvoltatorii rețelei de socializare nu au prevăzut această funcție, așa că nu puteți schimba singur ordinea prietenilor.

Dacă vrei ca cineva apropiat să fie mereu în fruntea listei de prieteni, încearcă să comunici mai mult cu el. În caz contrar, păstrați comunicarea la minimum. Totuși, nu uita că nicio rețea de socializare nu poate înlocui comunicarea reală cu prietenii și persoanele apropiate!

Rețeaua socială VKontakte unește oamenii, iar diverși algoritmi sunt introduși în mod constant în ea, astfel încât utilizatorilor să-și găsească mai convenabil prietenii, rudele și doar cunoștințele pe care le-au putut vedea de mai multe ori, dar nu au avut timp sau nu au avut. doresc să-și adauge prieteni unul altuia când s-au întâlnit. O modalitate de a vă completa rapid lista de prieteni cu persoane pe care le cunoașteți este să utilizați instrumentul „Posibili Prieteni” VKontakte. În cadrul articolului, vom lua în considerare principiul de funcționare al acestui algoritm, precum și modul de utilizare al acestuia.

Cum să vezi posibili prieteni pe VKontakte

Pentru a vedea utilizatorii pe care rețeaua socială VKontakte îi consideră potențiali prieteni, trebuie doar să accesați secțiunea „Prieteni” de pe pagina dvs. În colțul din dreapta jos al paginii care se deschide, sub listele pentru filtrarea prietenilor actuali, va fi amplasat blocul „Posibili prieteni”.

De fiecare dată când vizitați pagina, aceasta se formează într-un mod nou. Acest bloc afișează 5 persoane pe care poate le cunoști. Dacă vrei să vezi mai mulți prieteni posibili, dă clic pe butonul „Afișează tot” din acest bloc.

După aceea, se va deschide o pagină care afișează toți utilizatorii care sunt definiți ca posibili prieteni pentru pagina ta. În funcție de cât de activ vă folosiți contul VKontakte, precum și de o serie de alți factori, cantitatea de date despre utilizator poate varia. Derulați în jos pe pagină și noi prietenii sugerați vor fi încărcați automat.

Vă rugăm să rețineți: deși există tot felul de filtre în partea de sus și din dreapta acestei pagini, acestea nu vă permit în niciun caz să filtrați lista de posibili prieteni. Adică, dacă utilizați căutarea de mai sus și, de exemplu, încercați să găsiți toți posibilii prieteni cu numele „Sergey”, rețeaua de socializare va începe pur și simplu să caute utilizatori cu numele „Sergey” în baza sa de date, fără a se concentra pe lista de posibili prieteni selectați pentru dvs.

Cum sunt posibili prietenii VKontakte determinați?

Compania VKontakte nu dezvăluie algoritmii prin care se formează o listă de posibili prieteni pentru fiecare utilizator specific. Cu toate acestea, observațiile arată că în mod clar lista de posibili prieteni depinde de:

Este important de menționat că utilizatorul nu are posibilitatea de a vedea pentru cine este listat ca un presupus prieten. Adică, aceste informații nu sunt reciproce pentru utilizatori. Dacă vezi că un utilizator VKontakte este afișat ca un posibil prieten pentru tine, de exemplu, deoarece îi vizitezi adesea pagina, asta nu înseamnă că vei fi afișat ca prieten cu el. Desigur, cu excepția situației în care, atunci când vizitezi o pagină, arăți activitate pe ea sub formă de like-uri, repostări, comentarii și așa mai departe.

Tu și fostul tău ți-ai făcut mulți prieteni noi în timpul relației tale? Din păcate, acum sunteți despărțiți. Cum să închei o relație cu un fost/ex fără a-ți pierde prietenii comuni?

Pași

    Nu discuta despre despărțirea ta cu ei.Într-o astfel de situație, există întotdeauna două puncte de vedere. Păstrați-l pentru discuții cu familia și prietenii pe care i-ați cunoscut înainte de a intra într-o relație.

    Nu spune niciodată nimic rău despre fostul tău. Doar pentru că nu vorbești despre o despărțire nu înseamnă că poți spune lucruri urâte despre acea persoană care nu au legătură cu o despărțire. Când spui lucruri neplăcute unor oameni care îți sunt prieteni comuni, îi pui într-o poziție extrem de incomodă, pentru că vor să-ți rămână fideli atât ție, cât și fostului tău.

    Dezvăluie informațiile cu atenție. Pentru că este al tău sunt comune Prieteni, amintiți-vă că orice le spuneți poate ajunge la fostul dvs. Acest lucru vă poate strica toate încercările de a vă despărți într-un mod amiabil.

    Păstrăm legătura. Acest moment este foarte dificil, deoarece prietenii comuni te leagă strâns de vechea relație - atât la inimă, cât și la minte. Totuși, dacă vrei să păstrezi prietenia, trebuie să înțelegi că prietenii tăi comuni pot pur și simplu să nu știe cum să se comporte cu tine în această situație, așa că trebuie să le arăți (prin telefon sau e-mail) că vrei să ții legătura în continuare. . După cum am menționat deja, trebuie să ai grijă să nu dezvălui prietenilor informații care nu ar trebui să ajungă la fostul tău; cu toate acestea, împărtășește-le cu ei sentimentele și experiențele tale despre ceea ce se întâmplă, astfel încât să se simtă în continuare ca făcând parte din viața ta. Ai putea spune, de exemplu, „Considerând toate lucrurile, mă simt destul de bine. Desigur, nu este ușor să o iau de la capăt, dar sper că ce e mai rău s-a terminat și sunt gata să merg mai departe”.

    Dacă te întâlnești deja cu o persoană nouă, ține-o departe de prietenii comuni.Întâlnirea poate provoca resentimente și poate fi însoțită de prejudecăți negative, pur și simplu pentru că aceasta nou dragoste. Prietenii vor simți că își vor trăda prietenul (fostul tău) dacă le place noul tău partener care i-a luat locul. Până la un anumit punct, păstrează secrete noile tale simpatii. Așteptați până când „praful se limpezește” și simțiți pământ solid sub picioarele voastre - abia după aceea puteți încerca să prezentați prietenilor comuni o nouă simpatie.

    Apropo de întâlnirile tale comune, nu ar trebui să te aștepți ca doar tu să fii invitat dintr-un cuplu. Unii dintre prietenii tăi nu vor dori să se confrunte cu alegerea dificilă a pe cine să invite - tu sau fostul/fostul tău. Cel mai probabil, vă vor invita pe amândoi cu ideea că sunteți adulți și vă veți ocupa singuri de situație. În companiile mari acest lucru este destul de potrivit, dar într-un cerc apropiat de prieteni apropiați va fi nelo-o-o-o-o. Evită aceste situații întrebând direct dacă fostul tău va fi la petrecere. Aproape sigur vei primi un răspuns sincer. Nu face crize de furie făcându-l pe prietenul care te invită să se simtă vinovat. Doar exprimați-vă regretele dacă credeți că această întâlnire va fi incomodă pentru amândoi: „Ah, ei bine... probabil că nu voi merge, va fi o companie prea apropiată. Dar nu vă faceți griji, putem să ne mai întâlnim. timp, când sunt mai mulți oameni și ne putem distra.” Zâmbește, fii amabil și mulțumește-i persoanei că s-a gândit la tine.

    Nu-ți pierde demnitatea și acționează nobil.Într-o încercare greșită de a te asigura că sunt de „partea ta”, prietenii tăi pot arunca câteva pumni către fostul tău. Nu ar trebui să vă bucurați de ridicolul față de fostul dvs. și cu siguranță nu ar trebui să vă alăturați unor astfel de glume. Amintiți-vă, acești prieteni îți fac, cel mai probabil, același lucru atunci când vorbesc cu fostul tău.

    • În schimb, spuneți calm și impresionant ceva de genul: „Știți băieți, am fost supărat în timpul despărțirii, dar acum regret și sunt trist. În tot acest timp, el/ea și cu mine am avut o mulțime de lucruri bune. În ciuda faptului că acum am trebuie sa merg mai departe, nu regret timpul petrecut impreuna.Daca nu ar fi fost ____ (numele fostului/fostului), nu te-as fi cunoscut/intalnit niciodata. După aceea, taci. Prietenii tăi vor da din cap ca răspuns și vor aprecia standardele tale morale înalte.
  1. Lasă timpul să se ocupe de restul. Despărțirea este ca un braț rupt. Are o durere groaznică și nu poți face mare lucru după ce ai pus ghipsul, cu excepția unui singur lucru: acordă-i timp. Tot ce-ți rămâne este să înduri durerea și să faci față schimbărilor care au avut loc în viața ta. După un timp, dacă nu-ți critici fostul și nu participi la glumele cu el, prietenii tăi vor înțelege că ai supraviețuit și vor merge mai departe.

  • În timp, prietenia ta se va consolida în condiții noi. Prietenii vor începe să te perceapă nu ca parte a unui cuplu, ci ca individ. Abia atunci îi poți iniția în noua ta relație romantică.
  • Și prietenii tăi au nevoie de timp. Te-au cunoscut ca parte dintr-un cuplu pe care l-au iubit, iar acum și ei trebuie să se adapteze la noile circumstanțe. Ei pot face remarci incomode sau chiar supărate pentru că nu știu pe cine să învinovățească pentru ceea ce s-a întâmplat și ce să facă. Fii blând cu ei și ține cont că pur și simplu nu înțeleg cum să se comporte în această situație.
  • Când participați la petreceri sau ieșiți cu prietenii comuni, nu ezitați să-i întrebați dacă fostul dvs. este invitat. Explică-le prietenilor tăi că ai nevoie de timp și spațiu personal pentru a fi pregătit pentru un contact mai intim cu fostul tău decât va fi el la petreceri cu adevărat aglomerate.

Avertizări

  • Se poate dovedi că unii dintre „prietenii” tăi nu sunt deloc. Ferește-te de spionii care te urmăresc în secret, adunând informații pentru fostul tău. Acest avertisment este valabil mai ales dacă treci printr-un divorț. Și în această situație, vei fi mai mult ca niciodată bucuros că nu ți-ai descoperit noile simpatii.
  • Nu te grăbi să faci față unei despărțiri prea mult bun sau prea mult din timp. Amintește-ți că prietenii tăi comuni au sentimente calde și pentru fostul tău. Dacă li se pare că l-ai aruncat cu ușurință din viața ta, de parcă ar fi fost ceva inutil (chiar dacă este), prietenii vor crede că te comporți rece și fără inimă. Rezistă tentației de a-ți arăta noul iubit frumos (noua iubită drăguță) și în schimb concentrați-vă pe sentimentele prietenilor.
  • Orice remarcă înțepătoare sau agresivă despre fostul tău reduce în mod critic șansele de a menține prietenia cu prietenii tăi comuni.

Top articole similare