Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 15670|Svar: 1

Kommentar om designen av systemarkitekturen – sammanfattning av utvecklingen

[Kopiera länk]
Publicerad på 2018-11-14 13:32:04 | | | |
förordHittills har jag gjort två eller tre projekt, inklusive utbildning, forum och CMS, och varje projekt använder kommentarsfunktionen, så jag vill ta bort kommentarssektionen separat och göra den till en komponentiserad modul. Det sparar inte bara utvecklingsarbete, utan ger dig också en bättre förståelse för modulens funktioner.
Eftersom jag för närvarande främst utvecklar med TP-ramverket kommer följande exempel att presenteras i syntaxen för TP-ramverket. Men i själva verket känner jag personligen att kärnmetoden är otillräcklig, och jag har inte använt associationsmodellens funktion. Detta är vad jag kommer att implementera i nästa uppdatering.
I huvudsak kommer jag främst att berätta om de olika former av kommentarssystem jag har exponerats för hittills, analysera deras respektive för- och nackdelar samt ge en uppfattning om design och datautvinning, i hopp om att vara till hjälp för dig. Om det är något olämpligt är alla också välkomna att rätta till det.

Kommentarssystem

Det finns tre huvudtyper av vanliga kommentarssystem: byggnad inom byggnad, strömningsläge och citeringsläge (alla med egna namn), och följande fokuserar på för- och nackdelar med dessa tre och hur man implementerar dem.

1. Bygg-i-en-byggnad-läge
Den så kallade byggnaden inom en byggnad-modell innebär att varje kommentar upptar första våningen, och alla svar på kommentaren visas i byggnaden, såsom kommentarssystemet i Baidu Tieba och Jianshu.




Fördel:Svara på kommentarer med ett fokuserat perspektiv som gör det lätt att förstå den konversation de startar.
Nackdelar:När det är för mycket innehåll måste det vara paginering, vilket är mer komplicerat.
Databladsdesign:


  • id (självtillagd primärnyckel)
  • target_id (ID för kommentarsämnet, som kan ändras till article_id, course_id etc. vid behov)
  • parent_id (huvudkommentar-id)
  • reply_uid (Registrera användar-ID:t för den kommenterade, 0 när du svarar på huvudkommentaren)
  • UID (Användar-ID som lämnade kommentaren)
  • innehåll (Kommentarsinnehåll)
  • Andra områden... (Tid, status, etc.)



Backend-affärslogik:



2. Flödesläge

Flödesläget, som namnet antyder, liknar informationsflödet, oavsett om det är en kommentar eller ett svar, varje meddelande har ett lager, såsom kommentarssystemet i laravel-China-gemenskapen.




Fördel:Logiken är enkel och lätt att implementera
Nackdelar:Innehållet i dialogen kan inte presenteras centralt, och det är inte lätt att förstå dialogens innehåll.
Databladsdesign:


  • id (självtillagd primärnyckel)
  • target_id (ID för kommentarsämnet, som kan ändras till article_id, course_id etc. vid behov)
  • reply_uid (Registrera användar-ID:t för den kommenterade, 0 när du svarar på huvudkommentaren)
  • UID (Användar-ID som lämnade kommentaren)
  • innehåll (Kommentarsinnehåll)
  • Andra områden... (Tid, status, etc.)



Backend-affärslogik



3. Källhänvisningsläge

Citeringsläget liknar streamingläget, förutom att innehållet i svaret publiceras tillsammans med det citerade innehållet.




Fördel:Att förstå vilken kommentar svaret är riktat till kan hjälpa dig att förstå vad samtalet handlar om. Det är relativt enkelt att implementera.
Nackdelar:Precis som Stream Mode representerar det inte hela samtalet. Genom att analysera för- och nackdelar kan man finna att referensmönstret är en kompromiss mellan byggnaden inom byggnaden och flödesläget.
Databladsdesign:


  • id (självtillagd primärnyckel)
  • target_id (ID för kommentarsämnet, som kan ändras till article_id, course_id etc. vid behov)
  • reply_id (kommentar-ID för den kommenterade personen, huvudkommentaren är 0)
  • UID (Användar-ID som lämnade kommentaren)
  • innehåll (Kommentarsinnehåll)
  • Andra områden... (Tid, status, etc.)



Backend-affärslogik:

För att få listan över recensioner kan du koppla kommentarstabellen för att få användarinformation och kommentarer som citerar kommentarerna. Gör sedan en enkel pagineringsprocess.


Ovan är en preliminär sammanfattning av de tre kommentarslägena, stildelen har ännu inte lösts, och efter att bloggprojektet är slutfört kommer även front-end-stildelen att läggas till. När det gäller ovanstående innehåll, om det finns några brister, hoppas jag att du kan ge vägledning.




Föregående:Wu Shizi Tong DSLR-fotografivideotutorial
Nästa:Windows händelseloggdetaljer - Inloggningstyp
Publicerad på 2021-08-16 16:07:24 |
Hej, jag såg ditt inlägg om kommentarsystemet, jag har haft stor nytta av det, och jag förbereder just nu att skapa ett kommentarssystem, datavolymen är cirka 1 miljard, det dagliga antalet besök är 100w+ Jag skulle vilja ställa vid designrelaterade frågor, om det är bekvämt kan du lägga till din WeChat?  Min WeChat är BennyTian, tack!!
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com