Witam,
mam zadanie zrobić edytor tekstu, który umożliwi modyfikowanie tekstu przez x osób. Jak podejść do takiego zadania? Głównym problemem jest zrobienie tej całej współpracy. Jak przesyłać informacje, że dany fragment edytowała osoba y, czy zaznaczanie tekstu było widoczne u wszystkich edytujących osób?

- Rejestracja:ponad 8 lat
- Ostatnio:ponad 6 lat
- Postów:23

- Rejestracja:prawie 12 lat
- Ostatnio:2 dni
- Lokalizacja:Szczecin
To brzmi jak dość trudne zadanie. Nawet korzystając z gotowych kontrolek do rich tekstu, musiałbyś opracować jakiś protokół synchronizacji danych (p2p czy serwer-klient?) i go zaimplementować. Masz takie zadanie gdzieś? Bo jak nie to lepiej jakieś google docs użyć i niespecjalnie w C++ bym to pisał, chyba że masz duży zespół ludzi dostępny.

- Rejestracja:ponad 8 lat
- Ostatnio:ponad 6 lat
- Postów:23
kq napisał(a):
To brzmi jak dość trudne zadanie. Nawet korzystając z gotowych kontrolek do rich tekstu, musiałbyś opracować jakiś protokół synchronizacji danych (p2p czy serwer-klient?) i go zaimplementować. Masz takie zadanie gdzieś? Bo jak nie to lepiej jakieś google docs użyć i niespecjalnie w C++ bym to pisał, chyba że masz duży zespół ludzi dostępny.
A jak by taki protokół synchronizacji wyglądał by - bo trochę nie widzę tego? (duży zespół xD = 2 osoby)

- Rejestracja:około 11 lat
- Ostatnio:2 minuty
- Postów:8423
na youtube są jakieś talki o tym:
można poszukać i w innych miejscach: https://www.quora.com/How-do-I-proceed-to-build-a-real-time-collaborative-text-editor-from-scratch
w sumie ja bym pierwsze co zrobił, to przeszukał istniejące zasoby internetu, łącznie ze źródłami tego typu narzędzi (wszystko jedno w jakim języku programowania).


- Rejestracja:prawie 14 lat
- Ostatnio:prawie 3 lata
- Postów:4882
Ja bym zrobił tak
Klienci wysyłają eventy do serwera (każda akcja to jeden event, można pozbierać eventy. Event uruchamia odpowiednią funkcje na serwerze. W evencie jest zawarte kto zmienił i co zmienił.
Serwer zmienia plik / pamięć w locie i wyświetla (więc nic nie wysyłasz do klientów)
Na serwerze zrobiłbym jakis kontener asynchroniczny i zrobilbym tam FIFO


- Rejestracja:około 11 lat
- Ostatnio:prawie 4 lata
- Postów:132
A takich rzeczy nie robi się w pare h w pythonie?



Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.