Sobes.tech
Junior

Čo je ORM?

sobes.tech AI

Odpoveď od AI

Objektovo-relačné mapovanie (ORM) je technika, ktorá umožňuje konverziu dát medzi nesúladnými systémami pomocou objektovo orientovaného jazyka. V podstate je to "most" medzi objektovo orientovaným kódom (napríklad C#) a relačnou databázou (napríklad SQL Server).

Poskytovatelia ORM pre C#:

  • Entity Framework (Core)
  • NHibernate
  • Dapper

Výhody používania ORM:

  • Zrýchlenie vývoja: Znižuje množstvo ručne písaného kódu pre interakciu s databázou (CRUD operácie).
  • Abstrakcia od SGBD: Kód je menej závislý od konkrétneho relačného systému správy databáz.
  • Objektovo orientované: Práca s dátami sa vykonáva cez objekty, čo je prirodzenejšie pre objektovo orientované jazyky.
  • Zníženie chýb: ORM môže pomôcť predísť bežným chybám pri práci s SQL (napríklad SQL Injection, nezhoda typov).

Nevýhody:

  • Krivka učenia: ORM má svoje špecifiká a vyžaduje štúdium.
  • Výkon: V niektorých zložitých scenároch môže byť priame SQL efektívnejšie ako dotazy generované ORM.
  • Prílišná abstrakcia: Niekedy abstrakcia od databázy môže sťažiť ladenie a optimalizáciu dotazov.