ORM рдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рд░рд┐рд▓реЗрд╢рдирд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯрд░

рдЖрдЬ рд╣рдо рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдореЗрдВ рд╕реЗрд░реНрдЧреЗрдИ рддрд░рд╛рд╕реЛрд╡ рдХреА рдкреБрд╕реНрддрдХ "рдорд╕реНрддрд┐рд╖реНрдХ рдХреА рдбреАрдлреНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди " рдХрд╛ рдПрдХ рдЕрдВрд╢ рд▓рд╛рддреЗ рд╣реИрдВ ред рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдЗрдирд╕рд╛рдЗрдб тАЭ , рдЬрд┐рд╕реЗ рд╣рдорд╛рд░реЗ рдкрдмреНрд▓рд┐рд╢рд┐рдВрдЧ рд╣рд╛рдЙрд╕ рджреНрд╡рд╛рд░рд╛ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЫрд┐рдкрд╛рдирд╛ рдпрд╛ рдПрдХ рд╕рд╛рдБрдк рдХреЗ рд╕рд╛рде рдПрдХ рд╣рд╛рдереА рдХреЛ рдХреИрд╕реЗ рдкрд╛рд░ рдХрд░рдирд╛ рд╣реИ


рдЖрдзреБрдирд┐рдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдХреЗ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рд╕реНрддрдВрднреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ - рдУрдУрдкреА рдХреА рджреБрдирд┐рдпрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛, рдПрдХ рджреВрд╕рд░реЗ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ - рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рджреБрдирд┐рдпрд╛ред рдореИрдВрдиреЗ рдЬрд╛рдирдмреВрдЭрдХрд░ рд╡рд┐рд╢реЗрд╖рдг "рд╕рдВрдмрдВрдзрдкрд░рдХ" рдбрд╛рд▓рд╛ рдЬреИрд╕рд╛ рдХрд┐ рд╕рднреА рдореБрдЦреНрдп рдбреАрдмреАрдПрдордПрд╕ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ 1970 рдХреЗ рджрд╢рдХ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдЧреИрд░рдХрд╛рдиреВрдиреА рдерд╛ред

рдлрд┐рд░ рднреА, рдпрд╣ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреАрдмреАрдПрдордПрд╕ рдерд╛ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдХреЛ 1980 рдХреЗ рджрд╢рдХ рдореЗрдВ рднреМрддрд┐рдХ рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг рдХреЗ рд╕рдВрдЧрдарди рдХреЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЗ рдЬреНрдЮрд╛рди рд╕реЗ рдореБрдХреНрдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛, рдЙрдиреНрд╣реЗрдВ рддрд╛рд░реНрдХрд┐рдХ рд╕реНрддрд░ рдХреА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдФрд░ рд╕реВрдЪрдирд╛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХреАрдХреГрдд рдПрд╕рдХреНрдпреВрдПрд▓ рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ред рдпрд╣ рднреА рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рджреЛ-рдЖрдпрд╛рдореА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рдореЙрдбрд▓ рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдзреЛрдВ рдкрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдлрд┐рдЯ рд╣реЛрддреЗ рд╣реИрдВред рдЗрди рджреЛрдиреЛрдВ рдХрд╛рд░рдХреЛрдВ рдиреЗ рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреАрдмреАрдПрдордПрд╕ рдХреА рд╕рдлрд▓рддрд╛ рдХреЛ рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛, рдФрд░ рдкреБрд░рд╕реНрдХрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ, рд╕рдореБрджрд╛рдп рдиреЗ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ рдореВрд▓ рдореЗрдВ рдПрдХ рдХрдареЛрд░ рдЧрдгрд┐рддреАрдп рд╕рд┐рджреНрдзрд╛рдВрдд рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ред


рд╕рдВрдмрдВрдзрдкрд░рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рдореБрджрд╛рдп рдХреА рдЬрд░реВрд░рддреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, OOP рдХреЛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд╛рдлреА рд╕рд╣рдЬрддрд╛ рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рддрд╣рдд рдХреЛрдИ рдХрдареЛрд░ рд╕рд┐рджреНрдзрд╛рдВрдд рдирд╣реАрдВ рдерд╛ред рдкреАрдПрд▓рдУ рдХреЗ рддрд╣рдд рдХрд┐рдП рдЧрдП рдкреНрд░рдпрд╛рд╕ рд░реЗрдЯреНрд░реЛрдлреИрдХреНрдЯрд┐рдХ рд░реВрдк рд╕реЗ рд╡рд┐рдлрд▓ рд░рд╣реЗред рдШреЛрд╖рд┐рдд рдпреВрдПрдордПрд▓ рдорд╛рдирдХ рдХреЗ рд▓реЗрдЦрдХреЛрдВ рдиреЗ рдЕрдзрд┐рдХрддрдо рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛, рдЬреЛ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрднреА рднреА рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдХреЛрдб рдХреЛ рджрд░реНрд╢рд╛рдиреЗ рд╡рд╛рд▓реА рддрд╕реНрд╡реАрд░реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдПрдХ рдмреБрд░рд╛ рдорд╛рдирдХ рдХрд┐рд╕реА рд╕реЗ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реИред

рджреЛрдиреЛрдВ рд╕рдВрдмрдВрдзрдкрд░рдХ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЙрдбрд▓ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╕рд┐рд╕реНрдЯрдо рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рддрд╛рд░реНрдХрд┐рдХ рд╕реНрддрд░ рдХреЗ рд╣реИрдВред рд╡реЗ рдСрд░реНрдереЛрдЧреЛрдирд▓ рд╣реИрдВ рдФрд░ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рд╣реА рдЗрдХрд╛рдИ рдХреЗ рджреЛ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рд╕рдВрдмрдВрдзрдкрд░рдХ-рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдпрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдУрдУрдкреА рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░ рд░рд╣рддреЗ рд╣реБрдП рдЙрд╕реА рдкреНрд░рдгрд╛рд▓реА рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдПрдХ рд╕реНрдерд┐рддрд┐ рд╡рд┐рдХрд╕рд┐рдд рд╣реБрдИ рд╣реИ рдЬрд╣рд╛рдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдУрдУрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд▓рд┐рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдбреЗрдЯрд╛ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдХреНрд░реЙрд╕ "рд╣рд╛рдереА рдХреЗ рд╕рд╛рде рд╣рд╛рдереА" рдХреА рдЙрдкрдпреБрдХреНрддрддрд╛ рдХреЗ рд╕рд╡рд╛рд▓ рдкрд░ рд╕реНрдкрд░реНрд╢ рдХрд┐рдП рдмрд┐рдирд╛, рд╣рдо рд╕реНрдерд┐рддрд┐ рдХреЛ рджрд┐рдП рдЧрдП рд░реВрдк рдореЗрдВ рд▓реЗрдВрдЧреЗред рдЬрд┐рд╕рд╕реЗ рдпрд╣ рд╕рдВрдмрдВрдзрдкрд░рдХ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП (рдкреНрд░реЛрдЬреЗрдХреНрдЯ) рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдореИрдк рдХрд░рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИред

рдкреАрдПрд▓рдУ рдХреЗ рддрд╣рдд рдПрдХ рдФрдкрдЪрд╛рд░рд┐рдХ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ рдХреА рдХрдореА рдХреЗ рдорджреНрджреЗрдирдЬрд░, рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдорд▓реЗ рдореЗрдВ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдВрднрд╡ рд╣реИред рдПрдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдПрдХ рдШрдЯрдХ рдЬреЛ рдореИрдкрд┐рдВрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдЙрд╕реЗ ORM (рдСрдмреНрдЬреЗрдХреНрдЯ-рд░рд┐рд▓реЗрд╢рдирд▓ рдореИрдкрд┐рдВрдЧ) рдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ-рд░рд┐рд▓реЗрд╢рдирд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯрд░ - ORP рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдкреВрд░реНрдг-рдУрдЖрд░рдПрдо рдПрдХ рдмрд╣реБрдд рд╣реА рдЧреИрд░-рддреБрдЪреНрдЫ рдШрдЯрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдмрд╛рдХреА рд╕рд┐рд╕реНрдЯрдо рдХреА рдЬрдЯрд┐рд▓рддрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдЕрдкрдиреЗ рдирд┐рдЬреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдЙрджреНрдпреЛрдЧ рдореЗрдВ рдкрд┐рдЫрд▓реЗ 10 рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдХрдИ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдврд╛рдВрдЪреЗ рджрд┐рдЦрд╛рдИ рджрд┐рдП рд╣реИрдВ, рдЬреЛ рдкреНрд░рдХреНрд╖реЗрдкрдг рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рднреА рдХрд░рддреЗ рд╣реИрдВред

рдкреБрд╕реНрддрдХ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ-рд░рд┐рд▓реЗрд╢рдирд▓ рдкреНрд░реЛрдЬреЗрдХреНрд╢рди рдЯреВрд▓ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рдИ рдЧрдИ рдереАред рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдиреЗрдЯ рдкрд░ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдореЗрд░рд╛ рдПрдХ рдЫреЛрдЯрд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ, 2005 рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдкреБрд░рд╛рдирд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдореБрдЦреНрдп рд░реВрдк рд╕реЗ NHibernate рдврд╛рдВрдЪреЗ рдХреА рдЪрд┐рдВрддрд╛ рдХрд░реЗрдВрдЧреЗред

RDBMS рдкрд░ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдореЗрдВ рдПрдХ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рд╣реИ, рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕рдлрд▓рддрд╛ рдЗрд╕рдХреА рд╕рдордЭ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рдореИрдВрдиреЗ рдмрд╛рд░-рдмрд╛рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реЛрдВ рдХреА рд░рд╛рдп рд╕реБрдиреА рд╣реИ рдХрд┐ рдПрдХ рдбреЛрдореЗрди рд▓реЗрдпрд░ рдХреЗ рд▓рд┐рдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди SQL рд▓рдХреНрд╖реНрдп рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдХреЛрдбрд╛рдВрддрд░рдХ рдореЗрдВ рдПрдХ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рднрд╛рд╖рд╛ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рд╣реИред рдпрд╣ рд░рд╛рдп рди рдХреЗрд╡рд▓ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдЧрд▓рдд рд╣реИ, рдмрд▓реНрдХрд┐ рдЯреАрдо рдХреЛ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдФрд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрдард┐рди-рд╕реЗ-рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдкреНрд░рдгрд╛рд▓реА рдмрдирд╛рдиреЗ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреА рд╣реИред

рд╕реАрдзреЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдХрд╣реЗрдВ, рдЬреИрд╕реЗ рд╣реА рдЖрдк рдПрд╕рдХреНрдпреВрдПрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреА рдЧрдИ рдУрдУрдкреА рднрд╛рд╖рд╛ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдХреЛрдбрд╛рдВрддрд░рдХ рд╣реИ, рддреЛ рдЖрдк рддреБрд░рдВрдд рдПрдХ рдмрд╣реБрдд рдмреБрд░реА рдХрд╣рд╛рдиреА рдореЗрдВ рдлрдВрд╕ рдЬрд╛рддреЗ рд╣реИрдВред

рдПрд╕рдХреНрдпреВрдПрд▓ рдЬрд╛рд╡рд╛ рдпрд╛ рд╕реА # рдХреЗ рд╡рд┐рдкрд░реАрдд рдЪреМрдереА рдкреАрдврд╝реА рдХреА рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдШреЛрд╖рд┐рдд рд╡рд┐рд╢реЗрд╖реАрдХреГрдд рднрд╛рд╖рд╛ рд╣реИ, рдЬреЛ рдЕрднреА рднреА рддреАрд╕рд░реА рдкреАрдврд╝реА рдХреА рдЕрдирд┐рд╡рд╛рд░реНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╣реИред рддреАрди рджрд░реНрдЬрди рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ, рдЬреЛ рдХреБрдВрдЬреА рдЪрдпрди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддрд╛ рд╣реИ, рдЙрд╕реА рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реА # рдореЗрдВ рдЕрдзрд┐рдХ рд▓рд╛рдЗрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░, рдХрдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдпрд╣ рд╕реНрдерд┐рддрд┐ рдУрдЖрд░рдПрдо рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдПрд╕рдХреНрдпреВрдПрд▓ рдЬреИрд╕реА рднрд╛рд╖рд╛ рдмрдирд╛рдиреЗ рдФрд░ рдЗрд╕реЗ рд╕реАрдХреНрд╡рд▓ (рдПрдЪрдХреНрдпреВрдПрд▓ - рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдХреНрд╡реЗрд░реА рд▓реИрдВрдЧреНрд╡реЗрдЬ - рдПрд╕рдХреНрдпреВрдПрд▓ рдЬреИрд╕реА рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рд╣рд╛рдЗрдмрд░рдиреЗрдЯ / NHibernate рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рд╕рд╛рде рд╕реАрдзреЗ рдПрд╕рдХреНрдпреВрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдЕрдиреНрдпрдерд╛, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╕реАрдзреЗ рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд░реНрдмрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрд╕реА рддрд░рд╣, 80 рдХреЗ рджрд╢рдХ рдХреЗ рдЕрдВрдд рдореЗрдВ рдХреНрд▓рд┐рдкрд░ рдХреЗ рд╢реБрд░реБрдЖрддреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдПрдореНрдмреЗрдбреЗрдб SQL рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЯреЗрдмрд▓ рдбреЗрдЯрд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╡рд╣рд╛рдВ рдЗрд╕реЗ "рдиреЗрд╡рд┐рдЧреЗрд╢рди рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг" рдХрд╣рд╛ рдЬрд╛рддрд╛ рдерд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╢рдмреНрдж рдпрд╣рд╛рдВ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред

рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ RDBMSs рдХреЗ рд▓рд┐рдП рдХреНрд▓рд┐рдкрд░ рдЬреИрд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдФрд░ рдлрд╝рд╛рдЗрд▓-рд╕рд░реНрд╡рд░ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рд╕реЗ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╕рдВрдХреНрд░рдордг рдХреЗ рдпреБрдЧ рдореЗрдВ, рдХрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рдЙрдирдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрд╛ред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдиреЗ рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╛рдо рдХрд┐рдпрд╛, рдмрд╣реБ-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЕрдХреНрд╕рд░ рдЕрд╡рд░реБрджреНрдз рдХрд╛рд░реНрдпред рдЖрд░рдбреАрдмреАрдПрдордПрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рд░реНрд╡рд░ рдкрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реЗрдЯ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкрд╛рд╕ рдШреЛрд╖рдгрд╛рддреНрдордХ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред

рдлрд┐рд░ рднреА, рдЕрдкрдиреЗ рдирд┐рдкрдЯрд╛рди рдореЗрдВ рдУрдЖрд░рдПрдо рд╣реЛрдиреЗ рд╕реЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЕрдХреНрд╕рд░ рдЖрд░рдбреАрдмреАрдПрдордПрд╕ рдХреЗ рдмрд╛рд╣рд░ рдбреЗрдЯрд╛ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЗрд╡рд┐рдЧреЗрд╢рдирд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ рд╡рд╛рдкрд╕ рдЖрддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдЗрд╕ рдЕрдВрддрд░ рдХреЗ рд╕рд╛рде рдХрд┐ рдпрд╣ рд╕рд░рдгреА, рдЙрдореНрдореАрдж рд╣реИ, рдкреВрд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред

рдХреНрдпреЛрдВ? рд╡реЗ RDBMSs рдХреЗ рдЬреНрдЮрд╛рди рдХреЗ рдЕрднрд╛рд╡ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрддрд░реЛрдВ рдХреЗ рд╕рд╛рде рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡рд┐рдкрд░реАрдд рд╕рдЪ рд╣реИ: рдЕрдореВрд░реНрдд рд╕реНрддрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╕реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реНрдЯреЛрд░реЗрдЬ рд▓реЗрдпрд░ рдХрд╛ рд╡рд┐рд╡рд░рдг рдЫрд┐рдкрд╛рддреЗ рдирд╣реАрдВ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдбреАрдмреАрдПрдордПрд╕ рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЙрдирдХреА рдЕрдХреНрд╖рдорддрд╛ рд╣реИред рдХреБрдЫ рд╕рдордп рддрдХред

рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдкреНрд░рдХрд╛рд░ рдУрдЖрд░рдПрдо рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рд╕рд╛рд░ рдХреА рдореЛрдЯреА рдкрд░рдд рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдСрд░реНрдереЛрдЧреЛрдирд▓ рджреБрдирд┐рдпрд╛ рдФрд░ рдПрд╕рдХреНрдпреВрдПрд▓ рднрд╛рд╖рд╛ рдХреЗ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдЬреНрдЮрд╛рди рдХреЗ рдмрд┐рдирд╛ рдЖрд░рдбреАрдмреАрдПрдордПрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдПрдХ рдЖрд╡реЗрджрди рдХрд╛рд░реНрдп рдХрд░рдирд╛ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реИред

рд▓реЗрдХрд┐рди рдХреЛрд╢рд┐рд╢реЗрдВ рдЬрд╛рд░реА рд╣реИрдВред рдХреБрдЫ рдЕрднреА рднреА рдЕрдкрдиреА рдЖрдВрддрд░рд┐рдХ рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЬреЗрдХреНрдЯрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЕрдХреНрд╕рд░ рдмрд╣реБрдд рд╣рд▓реНрдХрд╛ред рджреВрд╕рд░реЛрдВ рдХреЛ рд╕рд░рд▓реАрдХрд░рдг рдФрд░ noSQL рдореЗрдВ рдмрд╛рд╣рд░ рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдФрд░ рд╕рд▓рд╛рд╣рдХрд╛рд░ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ "рдмреБрдирд┐рдпрд╛рджреА рдбреЗрдЯрд╛" рджрдХреНрд╖рддрд╛рдУрдВ рд╣реИрдВ, рдЬреЛ рдЙрди рд▓реЛрдЧреЛрдВ рдкрд░ рдкреИрд╕рд╛ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдирд╣реАрдВ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рд▓рд╛рдн рд╣реЛрдЧрд╛ред

рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ ORM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ


рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рд╕реНрддреБрддрд┐рдпреЛрдВ рдореЗрдВ, рдкреНрд░рд╕реНрддреБрддрд┐ рдкрд░рддреЛрдВ, рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдФрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╕рд░ рд╕реБрдВрджрд░ рдпреЛрдЬрдирд╛рдПрдВ рддреИрдпрд╛рд░ рдХреА рдЬрд╛рддреА рд╣реИрдВред рдиреМрд╕рд┐рдЦрд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХрд╛ рдиреАрд▓рд╛ рд╕рдкрдирд╛ рд╕рднреА рдкрд░рддреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рд╡рд╛рддрд╛рд╡рд░рдг рдФрд░ рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ рдФрд░ рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреАрдмреАрдПрдордПрд╕ рдХреЗ рдЬреНрдЮрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓ рдЬрд╛рдирд╛, рдЙрдирдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА "рдмреМрджреНрдзрд┐рдХ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо" рдХреЛ рдХрдо рдХрд░рдирд╛ рд╣реИред рд╢рдмреНрдж SQL рдХреБрдЫ рдкреНрд░рд╛рдЪреАрди рд╕реЗ рдЬреБрдбрд╝реЗ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдШреЛрдВ рдХреЛ рдЙрджреНрдШрд╛рдЯрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЯреНрд░рд┐рдЧрд░ рдпрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдЕрдЪреНрдЫреЗ рд▓реЛрдЧ рдХреНрд╖рд┐рддрд┐рдЬ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рд╣рд╛рде рдХреЗ рдиреАрдЪреЗ рдбреЛрдореЗрди-рдЙрдиреНрдореБрдЦ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЧреБрд░реБрдУрдВ рдХреА рдкреБрд╕реНрддрдХреЛрдВ рдХреЗ рд╕рд╛рде, рдирдП рд▓реЛрдЧреЛрдВ рдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрддрд╛рддреЗ рд╣реБрдП: тАЬрджреЛрд╕реНрддреЛрдВ, рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреАрдмреАрдПрдордПрд╕ 30 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдХреЗ рдПрдХ рд▓рдВрдмреА рдЕрд╡рдзрд┐ рдХреЗ рдЕрд╡рд╢реЗрд╖ рд╣реИрдВред рдЕрдм рд╕рдм рдХреБрдЫ OOP рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдФрд░ рдПрдХ рдЕрджреНрднреБрдд рдмрд╛рдд рд╣реИ - рдУрдЖрд░рдПрдоред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ рдФрд░ рдЕрддреАрдд рдХреА рдХрдард┐рди рд╡рд┐рд░рд╛рд╕рдд рдХреЛ рднреВрд▓ рдЬрд╛рдПрдВ! тАЭ

рд▓реЛрдЧ рдкреНрд░рд╕реНрддрд╛рд╡ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рд┐рд╕реНрдЯрдо рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ORM рдврд╛рдВрдЪреЗ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рд╕реНрддрд░ рдкрд░, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╕рд┐рджреНрдзрд╛рдВрдд рдФрд░ рдорд╛рдирдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рддрд┐ рдЦрд░рд╛рдм рд╣реИред рдпрд╣ рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдирд╛ рдареАрдХ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдПрдХ рдкреНрд░рд╕реНрддреБрддрд┐ рдпрд╣ рджрд┐рдЦрд╛рддреА рд╣реИ рдХрд┐ 10 рдорд┐рдирдЯ рдореЗрдВ рдЖрдк рдПрдХ рдЖрд╡реЗрджрди рдХрд╛ рдЖрдзрд╛рд░ рдХреИрд╕реЗ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ рд╕рдВрдкрд░реНрдХ рдиреЛрдЯрдмреБрдХ рдЖрдХрд░реНрд╖рдХ рд╣реИред рд╣рд▓!

рд╣рдо рдбреЛрдореЗрди рдореЙрдбрд▓ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рд╡рд░реНрдЧ, рдЧреБрдг, рд╕рдВрдмрдВрдз рдЬреЛрдбрд╝реЗрдВред рд╣рдо рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдХрд┐рд╕реА рдореМрдЬреВрджрд╛ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо CRUD рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╕рдм рдХреБрдЫ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред рдХрдо рд╕реЗ рдХрдо рдпрд╣ рдбреЗрдЯрд╛рд╕реЗрдЯ рдХреЗ рд╣реЗрд░рдлреЗрд░ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рддреБрд▓рдиреАрдп рд▓рдЧрддрд╛ рд╣реИред рдЬреЛ рд▓реЛрдЧ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдХреЛ рдбреАрдмреАрдЧреНрд░рд┐рдб рдбрд┐рд╕реНрдкреНрд▓реЗ рдПрдбреНрд╕ рдХреЗ рдмрд╛рд╣рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рд╕рд╛рд░рдгреАрдмрджреНрдз рдбреЗрдЯрд╛ рдЬреАрд╡рди рд░реВрдкреЛрдВ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдкрд░ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рд╣реИред

рдПрдХ рдмрд╛рд░ рдЬрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рд╕реАрдЖрд░рдпреВрдбреА рддрд░реНрдХ рд▓рд╛рдЧреВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рддреЛ рдореБрдЦреНрдп рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИред рд╕реАрдХреНрд╡рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдм рдореБрд╢реНрдХрд┐рд▓ рд╣реИред DBMSs рдХреЗ рдмреАрдЪ рдкреНрд░рджрд░реНрд╢рди рд░рдгрдиреАрддрд┐рдпреЛрдВ рдФрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЫреВрдиреЗ рдХреЗ рдмрд┐рдирд╛, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХрдиреЗрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдкреНрд░рддреНрдпреЗрдХ SQL рдХреНрд╡реЗрд░реА, рдПрдХ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдмрдврд╝реА рд╣реИ, рдЗрд╕ рдЕрд╡рд╕рд░ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рдЧрдП рд╡рд░реНрдЧ рдкрд░ рддрд╛рд▓рд┐рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдХреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХреНрд╖реЗрдкрдг рдХреЗ рд╕рд╛рде рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА ORM рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЧреИрд░-рдорд╛рдирдХ, рдбрд┐рдмрдЧрд┐рдВрдЧ рдФрд░ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдЯреВрд▓ рдХреЗ рдмрд┐рдирд╛ред рдпрджрд┐ рд╡рд╣, рднрд╛рд╖рд╛, рдЖрдорддреМрд░ рдкрд░ рдЗрд╕ рдУрдЖрд░рдПрдо рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИред рдЬреЛ рд▓реЛрдЧ рдЙрдкрдпреБрдХреНрдд рдПрдХреАрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП .NET рд╡рд╛рддрд╛рд╡рд░рдг LINQ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ рд╕рдВрдХрд▓рди рд╕реНрддрд░ рдкрд░ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рднрд╛рд╖рд╛ рдХреА рдЕрднрд┐рд╡реНрдпрдВрдЬрдирд╛ рдХреА рддреБрд▓рдирд╛ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдХрд░реЗрдВ, рдЬрд┐рд╕реЗ рдореИрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ред

рдПрд╕рдХреНрдпреВрдПрд▓
SELECT * FROM task_queue WHERE id_task IN (2, 3, 15) AND id_task_origin = 10 


NHibernate HQL
 IList<TaskQueue> queues = session .CreateQuery("from TaskQueue where Task.Id in (2, 3, 15) and TaskOrigin.Id = 10") .List<TaskQueue>(); 


рдорд╛рдирджрдВрдб рдХреЗ рд╕рд╛рде HQL рдХреЗ рдмрд┐рдирд╛ NHibernate
 IList<TaskQueue> queues = session.CreateCriteria() .Add(Expression.In("Task.Id", someTasks.ToArray())) .Add(Expression.Eq("TaskOrigin.Id", 10)) .List<TaskQueue>(); 

LINQ (NHibernate)
 IList<TaskQueue> queues = session .Query<TaskQueue>() .Where(q => someTasks.Contains(q.Task.Id) && q.TaskOrigin.Id == 10).ToList(); 


рдпрд╣ рдЕрдЪрд╛рдирдХ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреА рд╕реНрд╡рдпрдВ рдХреА рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рд╕рдмрд╕реЗ рдЗрд╖реНрдЯрддрдо рдПрд╕рдХреНрдпреВрдПрд▓ рд╕реЗ рджреВрд░ рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИред рдЬрдм рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЫреЛрдЯрд╛ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╕рдмрд╕реЗ рд▓рдВрдмреЗ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕реИрдХрдбрд╝реЛрдВ рд╣рдЬрд╛рд░реЛрдВ рд░рд┐рдХреЙрд░реНрдб рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдкреНрд░рд╢реНрди рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рднреА рдПрдХ рд╕рдмреЙрдкреНрдЯреАрдорд▓ рд╕реАрдХреНрд╡реЗрд▓ рд╕реНрдкрд╖реНрдЯ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдереЛрдбрд╝рд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░реЗрдЧрд╛ред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдРрд╕реЗ рдЕрдиреБрд░реЛрдз "рдкрд┐рдЫрд▓реЗ рд╡рд░реНрд╖ рдХреЗ рджреМрд░рд╛рди рдЙрди рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреЛ рдЪреБрдирддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╡реЗрддрди рдкрд┐рдЫрд▓реЗ рд╡рд░реНрд╖ рдХреЗ рдФрд╕рдд рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рдерд╛" рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдореНрдмреЗрдбреЗрдб рд╕реНрддрд░ рдкрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рддрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрдХреНрд╕рд░ рдПрдХрдорд╛рддреНрд░ рд╕рдВрднрд╡ рддрд░реАрдХрд╛ рдЬрд╛рддреЗ рд╣реИрдВ: рд╣рдо рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдЪреБрдирддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдЪрдХреНрд░реЛрдВ рдореЗрдВ рдлрд╝рд┐рд▓реНрдЯрд░ рдФрд░ рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВред рдпрд╛ рдЪрдпрдирд┐рдд рд╕рд░рдгреА рдкрд░ рдЙрд╕реА LINQ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЗрд╕ рд╕рдВрдЧреНрд░рд╣ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ DBMS рдХреЗ рд▓рд┐рдП рдордзреНрдпрд╡рд░реНрддреА рд▓рдШреБ рдПрд╕рдХреНрдпреВрдПрд▓ рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣рдЬрд╛рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред

Source: https://habr.com/ru/post/In165327/


All Articles