Atšķirība starp vispārināšanu un specializāciju DBVS
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.
- Salīdzināšanas tabula
- Definīcija
- Galvenās atšķirības
- Secinājums
Salīdzināšanas tabula
Salīdzināšanas pamats | Vispārināšana | Specializācija |
---|---|---|
Pamata | Tas notiek augšupējā veidā. | Tas notiek no augšas uz leju. |
Funkcija | Vispā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ītijas | Augstā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. |
Pieteikums | Vispārinājumi entītijas vienību grupā. | Specializācija tiek piemērota vienai vienībai. |
Rezultāts | Vispā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.
- 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.
- 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.
- 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.
- 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.
- Vispārināšana vienmēr tiek piemērota vienību grupai, turpretī specializācija vienmēr tiek piemērota vienai vienībai.
- 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.