Atšķirība starp vispārināšanu un specializāciju DBVS

Autors: Laura McKinney
Radīšanas Datums: 1 Aprīlis 2021
Atjaunināšanas Datums: 16 Maijs 2024
Anonim
DBMS - Specialization and Generalization
Video: DBMS - Specialization and Generalization

Saturs


Gan vispārināšana, gan specializācija abi termini ir sastopami biežāk Objektorientētā tehnoloģija, un tos izmanto arī Datu bāze ar tām pašām funkcijām. Vispārināšana rodas, kad mēs ignorējam atšķirības un atzīstam līdzības starp zemākām entītijām vai bērnu klasēm vai attiecībām (tabulas DBVS), lai izveidotu augstāku entītiju. Tomēr, kad mēs pārgājām uz specializācija, tas izlija augstāku entītiju, veidojot zemākas entītijas, tad mēs atklājam atšķirības starp šīm zemākajām entītijām.

Vispārināšana un specializācija ir tieši pretējas. Tālāk mēs apspriedīsim atšķirības starp vispārināšanu un specializāciju, izmantojot salīdzināšanas diagrammu.

  1. Salīdzināšanas tabula
  2. Definīcija
  3. Galvenās atšķirības
  4. Secinājums

Salīdzināšanas tabula

Salīdzināšanas pamatsVispārināšanaSpecializācija
PamataTas notiek augšupējā veidā.Tas notiek no augšas uz leju.
FunkcijaVispārināšana izdala vairāku entītiju kopīgās iezīmes, veidojot jaunu entītiju.Specializācija sadala entītiju, veidojot vairākas jaunas entītijas, kuras pārmanto kādu no sadalīšanas entītijas īpašībām.
EntītijasAugstāka līmeņa entītijai jābūt zemāka līmeņa entītijām.Augstāka līmeņa entītijai var nebūt zemāka līmeņa entītiju.
Izmērs Vispārināšana samazina shēmas lielumu.Specializācija palielina shēmas lielumu.
PieteikumsVispārinājumi entītijas vienību grupā. Specializācija tiek piemērota vienai vienībai.
RezultātsVispārināšanas rezultātā no vairākām entītijām veidojas vienota vienība.Specializācijas rezultāts ir vairāku entītiju veidošana no vienas entītijas.


Vispārinājuma definīcija

Vispārināšana, šis termins bieži tiek izmantots, izstrādājot jebkuru relāciju shēmu. Ja projektēšana notiek a no apakšas uz augšu veidā, tad tas tiek attēlots kā vispārinājums. Ja entītijām, kuras izdomātas izveidot shēmu, ir dažas līdzīgas funkcijas, tad tās tiek apvienotas, veidojot augstāka līmeņa entītiju.

Kopumā mēs sakām, ka, ja dažām zemāka līmeņa vienībām ir kādas kopīgas pazīmes, tad tās tiek apvienotas, lai veidotu jaunu augstākā līmeņa entītiju, kas turpmāk apvienosies ar dažām entītijām, veidojot jaunu augstākā līmeņa entītiju. Vispārīgi runājot, nekad nevar būt augsta līmeņa entītijas bez neviena zemāka līmeņa entītijas.

Vispārināšana vienmēr tiek piemērota vienību grupai, un, ja tā tiek pārskatīta, šķiet samazināt shēmas lielums.

Apspriedīsim vispārināšanas piemēru. Ja es lūdzu jūs nosaukt dažas mēbeles, to parasti saka studiju tabula, pusdienu galds, datora galds, atzveltnes krēsls, saliekamais krēsls, biroja krēsls, divguļamā gulta, vienvietīga gulta un saraksts ir tik un tā.


Tagad mēs vispārināsim šīs mēbeles, šeit, mācību galds, pusdienu galds, datora galds, visi ir sava veida galdi, tāpēc es vispārināšu šīs entītijas jaunā augstākā līmeņa vienībā Tabula. Vienību atzveltnes krēsls, saliekamais krēsls, biroja krēsls ir tāds pats krēsla tips, tāpēc tie veido jaunu augstāka līmeņa vienību Krēsls. Vienība Divvietīga gulta, Vienvietīga gulta apvienota, lai veidotu augstākā līmeņa vienību Gulta. Tagad mums ir trīs augstākā līmeņa entītijas galds, krēsls un gulta, kurus tālāk var apvienot, lai veidotu jaunu augstāka līmeņa vienību Mēbeles.

Mēbeļu vienība ir visu to subjektu vispārināta vienība, par kuriem mēs runājām iepriekš.

Specializācijas definīcija

Specializācija ir projektēšanas procedūra, kas notiek a no augšas uz leju. Specializācija ir tieši pretēja vispārināšanai. Specializācijā mēs sadalām entītiju, lai veidotu vairākas zemāka līmeņa entītijas. Šīs jaunizveidotās zemākā līmeņa entītijas pārmanto dažas augstākā līmeņa entītiju pazīmes.

Var gadīties, ka augstāka līmeņa entītija var nesadalīties tālāk, un līdz ar to tai var nebūt zemāka līmeņa entītijas. Specializācija vienmēr tiek piemērota vienai entītijai, un, ja tā tiek pārskatīta, tā palielina shēmas lielumu.

Letus apspriež specializāciju, izmantojot piemēru. Ļaujiet mums uzņemties entītiju Dzīvnieks un piemērot tam specializāciju. Dzīvnieku entītiju var tālāk izšļakstīt abinieku, rāpuļi, putni, zīdītāji saraksts ir garš, bet ar to pietiek, lai izskaidrotu specializāciju.

Tagad entītiju abinieku var sadalīt tālāk krokodils, aligators, varde.Īpašības reptilis sadala čūska, ķirzaka. Entītiju putnu var sadalīt līdz zvirbulis, balodis, papagailis. Zīdītājus var izšļakstīt līdz tīģeris, lauva, zilonis.

Tādējādi specializācija palielina entītiju skaitu, palielinot shēmas lielumu.

  1. Galvenā atšķirība starp vispārināšanu un specializāciju ir tāda, ka vispārināšana ir augšupēja pieeja. Tomēr specializācija ir lejupejoša pieeja.
  2. Vispārināšana apvieno visas entītijas, kurām ir dažas kopīgas īpašības, lai izveidotu jaunu entītiju. No otras puses, specializācija izlija entītiju, veidojot vairākas jaunas entītijas, kas manto dažas sašķeltas entītijas īpašības.
  3. Vispārinot, augstākā entītijā jābūt dažām zemākām entītijām, turpretī specializācijā augstākai entītijai var nebūt neviena zemāka entītija.
  4. Vispārināšana palīdz samazināt shēmas lielumu, turpretī specializācija ir tieši pretī, jo tas palielina entītiju skaitu, tādējādi palielinot shēmas lielumu.
  5. Vispārināšana vienmēr tiek piemērota vienību grupai, turpretī specializācija vienmēr tiek piemērota vienai vienībai.
  6. Vispārināšanas rezultātā veidojas vienota vienība, turpretī specializācijas rezultātā veidojas vairākas jaunas entītijas.

Secinājums:

Gan vispārināšana, gan specializācija ir projektēšanas procedūras, un abas ir vienlīdz svarīgas, izstrādājot shēmu. Kurš jāizmanto, ir atkarīgs no lietotāja prasībām.