Birgalikda real vaqt muharriri - Collaborative real-time editor

A real vaqtda ishlaydigan muharrir ning bir turi hamkorlikdagi dasturiy ta'minot yoki veb-dastur bu imkon beradi real vaqtda birgalikda tahrirlash, bir vaqtning o'zida tahrirlash, yoki jonli tahrirlash xuddi shu narsa raqamli hujjat, kompyuter fayli yoki bulutda saqlanadi ma'lumotlar - kabi onlayn elektron jadval, so'zlarni qayta ishlash hujjat, ma'lumotlar bazasi yoki taqdimot - bir vaqtning o'zida turli xil kompyuterlarda turli xil foydalanuvchilar tomonidan yoki mobil qurilmalar, ularning tahrirlarini avtomatik va deyarli bir zumda birlashtirish bilan.

Haqiqiy vaqtda birgalikda tahrirlash onlayn tarzda amalga oshirilishi mumkin veb-ilovalar kabi Internetda Microsoft Office (avval Office Online ) - onlayn qo'llab-quvvatlaydigan (veb-ga asoslangan ) bir vaqtning o'zida tahrirlash (qaysi Microsoft "deb nomlanadiBirgalikdagi mualliflik ") ning So'z hujjatlar, Excel elektron jadvallar, Power Point va boshqalar Microsoft Office saqlangan hujjatlar Office.com, OneDrive yoki SharePoint bulutli saqlash - yoki Google Docs va boshqalar G Suite mahsuldorlik (ofis to'plami) ilovalar - ning onlayn hamkorlikdagi tahriri uchun so'zlarni qayta ishlash va boshqa hujjatlar saqlanadi Google Drive. Haqiqiy vaqtda birgalikda tahrirlash hibrid usulda ham bo'lishi mumkin, masalan, Excel uchun Power Sheet BI bilan,[1] versiya tarixiga bir zumda kirish bilan avtomatik ravishda sinxronlashtirilishi mumkin bo'lgan ish stoli dasturiy ta'minotida, shuningdek veb-ga asoslangan va mobil ilovalarda oflayn, veb-ga asoslangan va onlayn-tahrirda. 2020-yilda ushbu dasturlarni xavfsiz veb-ilovalarga, ayniqsa biznesda foydalanish holatlariga qo'shishga bo'lgan qiziqish qayta tiklandi, chunki Microsoft va Vaadin real vaqtda sinxron ma'lumot almashish murakkabliklarini boshqaradigan ixtisoslashtirilgan real vaqtda hamkorlik backends bilan etakchilik qilmoqda. ishlab chiquvchilar API orqali foydalanishlari mumkin.[2][3]

Asenkrondan farqli o'laroq (real bo'lmagan vaqt, kechiktirilgan yoki oflayn) hamkorlikda tahrirlash bilan sodir bo'lgan kabi qayta ko'rib chiqishni boshqarish kabi tizimlar Git yoki Subversion, real vaqtda tahrirlash barcha onlayn foydalanuvchilarning hujjatlarini o'z qurilmalarida tahrirlashi bilan ularni avtomatik, davriy, ko'pincha deyarli bir zumda sinxronlashtirishni amalga oshiradi. Bu oldini olish yoki kamaytirish uchun mo'ljallangan nizolarni tahrirlash. Asenkron qo'shma tahrirda har bir foydalanuvchi odatda qo'lda yuborishi (nashr etishi, bosishi yoki majburlashi), yangilashi (yangilashi, tortib olishi, yuklab olishi yoki sinxronlashi) va (agar tahrirlashda to'qnashuvlar yuzaga kelsa) birlashtirishi kerak.

Asenkron qo'shma tahrirlashning kechiktirilganligi sababli, bir nechta foydalanuvchilar bir qatorni, so'zni, elementni, ma'lumotlar, qator yoki maydon ni natijasida nizolarni tahrirlash bu qo'llanmani talab qiladi birlashtirishni tahrirlash yoki qayta yozish, foydalanuvchidan qaysi tahrirlardan foydalanishni tanlashini talab qilishi yoki (tizimga va o'rnatishga qarab) avtomatik ravishda o'zlarining tahrirlarini yoki boshqa odamlarning tahrirlarini yozib qo'yishi kerak.

Asosiy mahsulotlar tarixi

Haqiqiy vaqtda ishlaydigan muharrirning birinchi namunasi namoyish etildi Duglas Engelbart 1968 yilda, yilda Barcha demolarning onasi. Kontseptsiyaning keng qo'llanilishi o'nlab yillar davomida paydo bo'ldi.

Uchun tezkor yangilanish chiqdi klassik Mac OS 1991 yilda Texnologiya to'g'risida.[4][yaxshiroq manba kerak ] Keyinchalik, versiyasi Microsoft Windows real vaqt rejimida ishlashga imkon beruvchi shuningdek chiqarildi[iqtibos kerak ] bu ikkalasida hamkorlik operatsion tizimlar.[iqtibos kerak ] Tezkor yangilanish bir nechta mijozlar bo'yicha real vaqtda yangilangan hujjatlarni muvofiqlashtirish uchun ishchi guruh serveriga asoslandi.

The Veb 2.0 hodisa brauzerga asoslangan hujjatlarni tahrirlash vositalariga bo'lgan qiziqishning portlashiga sabab bo'ldi. Xususan, mahsulot deb nomlangan Yozma portlovchi foydalanuvchilarning o'sishini ko'rdi va 2006 yil mart oyida Google tomonidan sotib olindi (nima deb nomlandi) Google Docs va keyinchalik nomi o'zgartirildi Google Drive ). U hujjatning to'liq qismini bir vaqtning o'zida tahrir qilishni ta'minladi, ammo boshqa foydalanuvchilarning o'zgarishi faqat mijoz dasturi serverdan so'rov o'tkazgandan so'ng (har yarim daqiqada yoki shunga o'xshash) aks etgan.[iqtibos kerak ] Internetga asoslangan yana bir dastlabki echim JotSpotLive bo'lib, unda bir vaqtning o'zida bir qatorda bir vaqtning o'zida tahrirlash deyarli real vaqtda mavjud edi.[5] Biroq, 2006 yil noyabr oyida Google JotSpot bosh kompaniyasini sotib olganidan so'ng, sayt yopildi. Google Sites 2007 yil fevral oyida JotSpot-ni qayta jihozlash sifatida ishga tushirildi,[6][7][8][9] lekin JotLive-ning real vaqt rejimida ko'p foydalanuvchiga qobiliyatlari yo'q. Synchroedit (boy matn) va MobWrite (oddiy matn) loyihalari ikkita, yaqinda ochiq manbali, real vaqt rejimida brauzerga asoslangan qo'shma tahrirdagi bo'shliqni to'ldirishga urinishlardir, ammo hanuzgacha haqiqiy real vaqtda ishlashga erisha olmaydilar, ayniqsa katta hajmdagi arxitektura.[iqtibos kerak ]

2009 yilda Google beta-sinovni boshladi Google Wave, Google natijada elektron pochta va tezkor xabar almashishni umid qilgan real vaqtda hamkorlik muhiti.[iqtibos kerak ] EtherPad Google tomonidan sotib olingan bo'lib, u EtherPad jamoasini Wave loyihasi doirasida ishlashga ajratdi. Biroq, Google 2010 yil avgust oyida o'z blogida e'lon qildi[10] foydalanuvchini qabul qilishning etarli emasligi sababli Wave-ni mustaqil loyiha sifatida rivojlantirishni to'xtatishga qaror qildi. Google tark qilingan EtherPad manba kodini chiqargandan so'ng ochiq manba 2009 yil dekabr oyida jamoa o'z rivojlanishini o'z zimmasiga oldi va to'liq qayta yozilgan deb nomlandi Etherpad lite, bu butunlay yozilgan JavaScript va ustiga qurilgan node.js. Asoslangan boshqa taniqli vositalar operatsion transformatsiya texnologiya CKEditor va SubEthaEdit.[11] 2020-yilda kontseptsiyaga qiziqish kuchaygan, chunki Microsoft yaqinda OT yoki CRDT-dan farqli ravishda Total Order Broadcast yangi texnologiyasiga asoslangan Fluid ramkasini chiqardi.[12] Suyuqlik hozirda ramka agnostikasi hisoblanadi. Microsoft ishlab chiqarishda foydalanishga hali tayyor emasligini ta'kidlamoqda.[13]

2020 yil oktyabr oyida Vaadin Ltd., Vaadin platformasining sotuvchisi, ularning Collaboration Engine V1.0-ni chiqardi,[14] ishlab chiquvchilarga bir nechta satr kodlari yordamida Java-ning orqa tomonlari bilan har qanday veb-ilovada real vaqtda hamkorlik va tahrirlash xususiyatlarini tezkor ravishda yaratishga imkon berish sharti bilan (ularning cheklangan, yuqori darajadagi API-lari orqali ma'lum foydalanish holatlari uchun).[15] Vaadin platformasining yaqinda davom etayotgan kengayishi va kelajakdagi Fusion ramkasi orqali kelajakda TypeScript-ga asoslangan foydalanuvchi interfeysini yaratishga imkon berishiga qaramay, ushbu xususiyat Java-ni qo'llab-quvvatlaydi.[16][17]

Texnik muammolar

Haqiqiy vaqtda birgalikda tahrirlash echimlarining murakkabligi aloqa kechikishidan kelib chiqadi. Nazariy jihatdan, agar aloqa bir zumda bo'lsa, unda real vaqtda hamkorlikdagi muharrirni yaratish bitta foydalanuvchi muharriri yaratishdan ko'ra qiyinroq bo'lmaydi, chunki hujjatni quyidagilarga o'xshash algoritm yordamida tahrirlash mumkin edi:

  1. Serverdan "hujjatni tahrirlash" belgisini so'rang
  2. Server hujjatni tahrirlash bizning navbatimiz deb aytguncha kutib turing
  3. Hujjatni qanday tahrir qilishni serverga ayting
  4. "Hujjatni tahrirlash" belgisini chiqaring

Biroq, aloqa tezligi tarmoqning kechikishi bilan cheklangan. Bu asosiy ikkilikni keltirib chiqaradi: foydalanuvchilar hujjatga bir zumda kiritilgan o'zlarining tahrirlariga muhtoj, ammo agar ular bir zumda kiritilsa, aloqa kechikishi sababli ularning tahrirlari hujjatning turli xil versiyalariga kiritilishi shart.

Ushbu muammoni misol misolida keltiradi. Bob va Elis so'zni o'z ichiga olgan hujjatdan boshlaylik deylik Meri. Bob so'zni o'zgartirish uchun "M" ni o'chiradi, keyin "H" ni qo'shadi Xari. Elis, Bobdan tahrirni qabul qilishdan oldin, 'r' ni o'chirib tashlaydi, keyin uni o'zgartirishi uchun 'a' ni o'chiradi. Mening. Bob ham, Elis ham hujjat versiyalarida qo'llanilgan tahrirlarni qabul qilishadi hech qachon mavjud bo'lmagan o'z mashinalarida.

Shunday qilib, real vaqtda birgalikdagi tahrirlashning qiyinligi shundaki, dastlab hujjatning mahalliy sifatida mavjud bo'lmagan versiyalarida yaratilgan va foydalanuvchining o'zining mahalliy tahrirlariga zid bo'lishi mumkin bo'lgan uzoq foydalanuvchilarning tahrirlarini qanday qo'llashni aniqlab olish.

Eng murakkab echimlar ushbu muammoni serverni talab qilmaydigan, blokirovkadan foydalanmagan holda hal qiladi (barcha foydalanuvchilar bir vaqtning o'zida hujjatning barcha qismlarini erkin tahrirlashlari mumkin) va har qanday sonli foydalanuvchilarni qo'llab-quvvatlaydilar (faqat manbalar bilan cheklangan) kompyuterlar). UNA va SubEthaEdit ushbu yondashuvni qo'llaydigan ikkita dasturga misollar.

Ushbu murakkab yondashuvlar eng yaxshi narsalarga imkon beradi foydalanuvchi tajribasi, asosiy hamkorlik muharriri a da yaratilishi mumkin mijoz-server modeli. Mijoz-server stsenariysida hujjat ochilganda muharrir misollaridan biriga hamkorlik serverining roli beriladi. Ushbu server tarmoqning kechikishini aniqlash va a vazifasini bajarib, boshqa tahrirlovchilarni sinxronlashtirishni ta'minlaydi vaqtni sinxronlashtirish server. Server qabul qiladi belgilangan vaqt boshqa foydalanuvchilar tomonidan hujjatga kiritilgan o'zgartirishlar to'g'risida xabarnomalar. Ushbu o'zgarishlar uning mahalliy nusxasiga qanday ta'sir qilishi kerakligini aniqlaydi va o'zgarishlarni hamkorlik havzasiga uzatadi. Ba'zi modellarda, serverda rasmiy javob qaytarilgunga qadar, hatto ushbu o'zgartirishlar mahalliy darajada amalga oshirilgan bo'lsa ham, o'zgarishlar mijozda aks ettirilmaydi.

Ushbu yondashuv sezilarli darajada kam kuchga ega bo'lsa-da, nisbatan arzon narxlardagi asosiy hamkorlikka imkon beradi. Bu qayta ishlash resurslari cheklangan holatlarda uni afzalroq qiladi. NetSketch ushbu modeldan foydalanadigan dasturning namunasidir.

Oldin, Microsoft va IBM mavjud arxitekturalariga hamkorlik imkoniyatlarini qo'shish uchun ishladilar.[18] Haqiqiy vaqtdagi hamkorlik sifatida sotiladigan bo'lsa-da, ushbu "ish maydoni" yondashuvlari hujjatlarni bloklashni talab qiladi (shuning uchun uni bir vaqtning o'zida faqat bitta kishi tahrirlashi mumkin) yoki qarama-qarshi o'zgarishlarni "yarashtirish" kerak, bu odatda foydalanuvchilar tomonidan qoniqarsiz deb topiladi.[iqtibos kerak ]

Shuningdek qarang

Adabiyotlar

  1. ^ "BEPUL kodsiz dastur, Analytics AI, Blockchain, Excel Excel Web 3.0 hamkorlik platformasi". PowerSheet.ai. Olingan 2020-06-08.
  2. ^ "Suyuqlik doirasi". fluidframework-docs.azureedge.net. Olingan 2020-11-02.
  3. ^ "Hamkorlik mexanizmi". Vaadin. Olingan 2020-11-02.
  4. ^ "Foydalanuvchi uchun qo'llanma". Arxivlandi asl nusxasi 2009-02-21.
  5. ^ Maykl Arrington (2005-09-27). "JotSpot Live - Perfect Wiki?". TechCrunch.
  6. ^ Maykl Arrington (2008-02-27). "Bu 16 oy davom etdi, ammo Google Jotspot-ni qayta ishga tushirdi". TechCrunch.
  7. ^ Devid Chartier (2008-02-28). "Birinchi qarash: Google JotSpot-ni Google Sites sifatida ishga tushiradi". Ars technica.
  8. ^ Dan Farber (2008-02-27). "JotSpot Google Sites sifatida qayta tiklandi". CNET yangiliklari.
  9. ^ Mark 'Rizzn' Xopkins (2008-02-27). "Google nihoyat JotSpot-ni Google Sites bilan ozod qiladi". Mashable.
  10. ^ Ina Frid va Josh Louenson (2010-08-04). "Google Google Wave-ga ulanadi". CNET.
  11. ^ SunChengzheng; SunDevid; NgAgustina; CaiWeiwei; ChoBrayden (2020-01-04). "Birgalikda tahrirlovchilarda izchillikni ta'minlash uchun umumiy transformatsiya doirasidagi OT va CRDT o'rtasidagi haqiqiy farqlar". Inson va kompyuterning o'zaro ta'siri bo'yicha ACM-ning materiallari. doi:10.1145/3375186.
  12. ^ "Tez-tez so'raladigan savollar". fluidframework-docs.azureedge.net. Olingan 2020-11-02.
  13. ^ "Suyuqlik doirasi". fluidframework-docs.azureedge.net. Olingan 2020-11-02.
  14. ^ "Meet Collaboration Engine: hamkorlikdagi veb-ilovalarni yaratishning eng oddiy usuli". Vaadin. Olingan 2020-11-02.
  15. ^ "Hamkorlik mexanizmi". Vaadin. Olingan 2020-11-02.
  16. ^ "Vaadin bilan real vaqtda hamkorlik qilish xususiyatlarining kelajagini ko'rib chiqish".. Vaadin. Olingan 2020-11-02.
  17. ^ "Vaadin Flow va Fusion bilan tanishish". Vaadin. Olingan 2020-11-02.
  18. ^ Microsoft Live Communications Arxivlandi 2008-03-05 Portugaliyaning veb-arxivida ushbu maqola ma'nosida real vaqt emas, real vaqt sifatida sotilgan.