www.wikidata.uk-ua.nina.az
ORM angl Object relational mapping Ob yektno relyacijna proyekciya tehnologiya programuvannya yaka zv yazuye bazi danih z koncepciyami ob yektno oriyentovanih mov programuvannya stvoryuyuchi virtualnu ob yektnu bazu danih Zmist 1 Problema 2 Relyacijni SUBD 3 Rishennya 4 Realizaciyi 5 Div takozhProblema red V ob yektno oriyentovanomu programuvanni ob yekti v programi predstavlyayut ob yekti z realnogo svitu Yak priklad mozhna navesti adresnu knigu yaka mistit spisok lyudej razom z kilkoma telefonami i kilkoma adresami V terminah ob yektno oriyentovanogo programuvannya voni budut predstavleni ob yektami klasu Lyudina yaki mistitimut taki atributi im ya spisok abo masiv telefoniv i spisok adres Sut problemi polyagaye v peretvorenni takih ob yektiv u formu v yakij voni mozhut buti zberezheni u fajlah abo bazah danih i yaki legko mozhut buti vityagnuti v podalshomu zi zberezhennyam vlastivostej ob yektiv i vidnoshen mizh nimi Ci ob yekti nazivayut postijnimi angl persistent Isnuye kilka pidhodiv do rozv yazannya ciyeyi zadachi Relyacijni SUBD red Dokladnishe Relyacijna sistema keruvannya bazami danihVirishennya problemi zberigannya danih isnuye ce relyacijni sistemi upravlinnya bazami danih Vikoristannya relyacijnoyi bazi danih dlya zberigannya ob yektno oriyentovanih danih privodit do semantichnogo provalu primushuyuchi programistiv pisati programne zabezpechennya yake povinne vmiti yak obroblyati dani v ob yektno oriyentovanomu viglyadi tak i vmiti zberegti ci dani v relyacijnij formi Cya postijna neobhidnist v peretvorenni mizh dvoma riznimi formami danih ne tilki silno znizhuye produktivnist ale i stvoryuye trudnoshi dlya programistiv oskilki obidvi formi danih nakladayut obmezhennya odna na odnu Relyacijni bazi danih vikoristovuyut nabir tablic sho predstavlyayut prosti dani Dodatkova abo zv yazana informaciya zberigayetsya v inshih tablicyah Chasto dlya zberigannya odnogo ob yekta v relyacijnij bazi danih vikoristovuyut kilka tablic ce u svoyu chergu vimagaye zastosuvannya operaciyi JOIN dlya otrimannya vsiyeyi informaciyi sho stosuyetsya ob yekta dlya yiyi obrobki Napriklad v rozglyanutomu varianti iz zapisnoyu knigoyu dlya zberigannya danih shvidshe za vse vikoristovuvatimutsya yak minimum dvi tablici lyudi i adresi i mozhlivo navit tablicya z telefonnimi nomerami Oskilki sistemi upravlinnya relyacijnimi bazami danih zazvichaj ne realizuyut relyacijnogo predstavlennya fizichnogo rivnya zv yazkiv vikonannya kilkoh poslidovnih zapitiv sho stosuyutsya odniyeyi ob yektno oriyentovanoyi strukturi danih mozhe buti duzhe vitratnim Zokrema odin zapit viglyadu znajti takogo to koristuvacha i vsi jogo telefoni i vsi jogo adresi i povernuti yih u takomu formati shvidshe za vse bude vikonanij shvidshe za seriyu zapitiv viglyadu Znajti koristuvacha Znajti jogo adresi Znajti jogo telefoni Ce vidbuvayetsya zavdyaki roboti optimizatora i vitratam na sintaksichnij analiz zapitu Deyaki realizaciyi ORM avtomatichno sinhronizuyut zavantazheni v pam yat ob yekti z bazoyu danih Dlya togo shob ce bulo mozhlivim pislya stvorennya SQL zapitu sho peretvoryuye ob yekt v SQL otrimani dani kopiyuyutsya v polya ob yekta yak u vsih inshih realizaciyah ORM Pislya cogo ob yekt povinen stezhiti za zminami cih znachen i zapisuvati yih u bazu danih Sistemi upravlinnya relyacijnimi bazami danih pokazuyut horoshu produktivnist na globalnih zapitah yaki zachipayut veliku dilyanku bazi danih ale ob yektno oriyentovanij dostup efektivnishij pri roboti z malimi obsyagami danih bo ce dozvolyaye skorotiti semantichnij proval mizh ob yektnoyu i relyacijnoyu formami danih Pri odnochasnomu isnuvanni cih dvoh riznih svitiv zbilshuyetsya skladnist ob yektnogo kodu dlya roboti z relyacijnimi bazami danih i vin staye shilnishim do pomilok Rozrobniki programnogo zabezpechennya sho gruntuyetsya na bazah danih shukali legshij sposib dosyagnennya postijnosti yihnih ob yektiv Rishennya red Rozrobleno bezlich paketiv sho znimayut neobhidnist u peretvorenni ob yektiv dlya zberigannya v relyacijnih bazah danih Deyaki paketi virishuyut cyu problemu nadayuchi biblioteki klasiv zdatnih vikonuvati taki peretvorennya avtomatichno Mayuchi spisok tablic v bazi danih i ob yektiv v programi voni avtomatichno peretvoryat zapiti z odnogo viglyadu v inshij V rezultati zapitu ob yekta lyudina z prikladu z adresnoyu knigoyu neobhidnij SQL zapit bude sformovanij i vikonanij a rezultati magichnim chinom peretvoreni v ob yekti nomer telefonu vseredini programi Z poglyadu programista sistema povinna viglyadati yak postijne shovishe ob yektiv Vin mozhe prosto stvoryuvati ob yekti i pracyuvati z nimi yak zavzhdi a voni avtomatichno zberigatimutsya v relyacijnij bazi danih Na praktici vse ne tak prosto i ochevidno Vsi sistemi ORM zazvichaj proyavlyayut sebe v tomu abo inshomu viglyadi zmenshuyuchi v deyakomu rodi mozhlivist ignoruvannya bazi danih Bilsh togo shar tranzakcij mozhe buti povilnim i neefektivnim osoblivo v terminah zgenerovanogo SQL Vse ce mozhe privesti do togo sho programi pracyuvatimut povilnishe i vikoristovuvatimut bilshe pam yati nizh programi napisani vruchnu Ale ORM pozbavlyaye programista vid napisannya velikoyi kilkosti kodu chasto odnomanitnogo i shilnogo do pomilok tim samim znachno pidvishuyuchi shvidkist rozrobki Krim togo bilshist suchasnih realizacij ORM dozvolyaye programistovi pri neobhidnosti zhorstko zadati kod SQL zapitiv yakij vikoristovuvatimetsya pri tih chi inshih diyah zberezhennya v bazu danih zavantazhennya poshuk tosho z postijnim ob yektom Realizaciyi red Isnuyut yak komercijni tak i vilni realizaciyi ciyeyi tehnologiyi Sequelize JavaScript JPA Hibernate Java Syrius Doctrine PHP SQLAlchemy Python Entity Framework NET Framework Entity Framework Core NET Core Div takozh red Spisok ORM bibliotek Cya stattya ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno zhovten 2014 nbsp Ce nezavershena stattya pro informacijni tehnologiyi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Otrimano z https uk wikipedia org w index php title Ob 27yektno relyacijne vidobrazhennya amp oldid 32664321