Π‘ΠΏΠΎΡΠ΅Π΄Π±Π° ΠΈ ΠΈΠ·Π±ΠΎΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
ΠΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈΠΌΠ° ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΡΠ° Π΄Π° ΡΠ΅ ΠΌΠ΅Π½ΡΠ²Π° Π²ΠΎ ΡΠ΅ΠΊΠΎΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ°Π·Π²ΠΎΡ, ΠΈ Π²ΠΎ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΎΡ ΠΏΠΎΠ²Π΅ΡΠ΅ Π½Π΅ ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. Π‘Π΅ ΡΠ°Π·Π±ΠΈΡΠ°, Π±Π°Π·Π°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π±ΡΠΈΡΠ΅, Π° ΠΏΠΎΡΠΎΠ° ORM ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄Π΅ Π½ΠΎΠ²Π° Π²Π΅ΡΠ·ΠΈΡΠ° ΠΊΠΎΡΠ° ΡΠ΅ ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ, Π½ΠΎ ΠΎΠ²Π°Π° ΠΏΠΎΡΡΠ°ΠΏΠΊΠ° ΡΠ΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π³ΡΠ±Π΅ΡΠ΅ Π½Π° ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. Π’Π°ΠΊΠ°, ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° Π΅ Π΄Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π΄Π΅ΠΊΠ°, ΠΊΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π° Π½Π° ΡΠ΅ΠΌΠ°ΡΠ°, ΡΠΎΡ Π΅ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½ ΡΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π²ΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° Π±Π΅Π· Π³ΡΠ±Π΅ΡΠ΅ Π½Π° ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
ΠΠΎ ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ°, Π±ΠΈ ΡΠ°ΠΊΠ°Π»Π΅ Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°Π»Π°ΡΠΊΠΈ Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. Π‘Π΅ Π½Π°Π΄Π΅Π²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΎΠ²ΠΎΡ ΠΏΡΠ΅Π³Π»Π΅Π΄ ΡΠ΅ Π±ΠΈΠ΄Π΅ ΠΊΠΎΡΠΈΡΠ΅Π½ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈΡΠ΅ ΠΊΠΎΠΈ ΡΠ΅ ΡΠΎΠΎΡΠ΅Π½ΠΈ ΡΠΎ ΡΠ»ΠΈΡΠ΅Π½ ΠΈΠ·Π±ΠΎΡ.
ΠΠ°Π΄Π°ΡΠ°
ΠΠ°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ° ΡΠ°Π·Π²ΠΈΠ²Π° ΡΠ»Π΅Π΄Π½Π°ΡΠ° Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ - Docs Security Suite (DSS). ΠΠ΅Π»ΠΎΡ ΠΎΠ΄ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π²ΠΎ .Net Core, Π° Entity Framework Core ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΊΠ°ΠΊΠΎ DBMS. ΠΠΎΠ³Π° Π΄ΠΈΠ·Π°ΡΠ½ΠΈΡΠ°ΠΌΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°, Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ ΠΏΡΠΈΡΡΠ°ΠΏΠΎΡ Code First.
ΠΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΡ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° Π΅ ΠΊΡΠ΅ΠΈΡΠ°Π½ ΠΎΠ΄ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈ Π²ΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅ - ΡΠ΅ΠΊΠΎΡ Π΅ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠ΅Π½ Π·Π° ΡΠ²ΠΎΡΠΎΡ Π»ΠΎΠ³ΠΈΡΠ΅Π½ Π΄Π΅Π» ΠΎΠ΄ ΡΠΈΡΡΠ΅ΠΌΠΎΡ.
ΠΡΠ΅ΡΡ ΠΎΠ΄Π½Π°ΡΠ° Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡΠ° Π½Π° DSS Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ ΠΊΠ»Π°ΡΠΈΡΠ½ΠΈΠΎΡ Entity Framework Migrations (EF 6) ΠΊΠ°ΠΊΠΎ ΡΠΈΡΡΠ΅ΠΌ Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ°ΡΠ°. Π‘Π΅ΠΏΠ°ΠΊ, ΡΠ΅ Π°ΠΊΡΠΌΡΠ»ΠΈΡΠ°Π° Π½Π΅ΠΊΠΎΠΈ ΠΏΠΎΠΏΠ»Π°ΠΊΠΈ ΠΏΡΠΎΡΠΈΠ² Π½Π΅Π³ΠΎ, Π° Π³Π»Π°Π²Π½Π°ΡΠ° Π΅ Π΄Π΅ΠΊΠ° ΠΠ€ Π½Π΅ΠΌΠ° ΡΠ°Π·ΡΠΌΠ΅Π½ ΠΏΡΠΈΡΡΠ°ΠΏ Π·Π° ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈΡΠ΅ Π½Π° Π²Π΅ΡΠ·ΠΈΠΈ. ΠΠ²ΠΎΡ ΡΠ°ΠΊΡ ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ Π²ΠΎΠ·Π½Π΅ΠΌΠΈΡΡΠ²Π° ΠΊΠΎΠ³Π° Π³ΠΈ ΠΏΠΎΠΏΡΠ°Π²Π°ΠΌΠ΅ Π³ΡΠ΅ΡΠΊΠΈΡΠ΅ ΠΊΠ°ΠΊΠΎ Π΄Π΅Π» ΠΎΠ΄ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ°ΡΠ°, ΠΏΠ° Π·Π°ΡΠΎΠ° ΡΠ΅ΡΠΈΠ²ΠΌΠ΅ Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΠΈ ΠΎΠΏΡΠΈΠΈ.
ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° Π΄ΠΈΡΠΊΡΡΠΈΡΠ°ΡΠ°, Π±Π΅Π° ΡΠΎΡΠΌΠΈΡΠ°Π½ΠΈ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π±Π°ΡΠ°ΡΠ° Π·Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ°ΡΠ°:
- ΠΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ DBMS. ΠΠΎΡΡΠ΅Π±Π½ΠΈ ΡΠ΅ MS SQL Server, PostgreSQL, Oracle, Π½ΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΡΠ°Π»Π½ΠΎ Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π΄ΡΡΠ³ΠΈ
- Π Π°Π±ΠΎΡΠ° ΡΠΎ ORM. ΠΡΠ²ΠΈΡΠ½ΠΎ, Π±Π΅ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½ΠΎ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ EF Core, Π½ΠΎ Π²ΠΎ ΡΠ°Π·Π°ΡΠ° Π½Π° Π΄ΠΈΠ·Π°ΡΠ½ΠΈΡΠ°ΡΠ΅ Π±Π΅Π²ΠΌΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π΄ΡΡΠ³ΠΈ ORM
- ΠΠ²ΡΠΎΠΌΠ°ΡΡΠΊΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ. ΠΠ΅ΠΌΠ°ΡΡΠΈ Π³ΠΎ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΡΠ°Π·Π²ΠΎΡΠΎΡ Π½Π° Code First, Π±ΠΈ ΡΠ°ΠΊΠ°Π» Π΄Π° ΡΠ° ΠΈΠ·Π±Π΅Π³Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±Π°ΡΠ° Π·Π° βΡΠ°ΡΠ½ΠΎ ΠΏΠΈΡΡΠ²Π°ΡΠ΅β ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ
- ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ Π½Π° Π²Π΅ΡΠ·ΠΈΠΈ. ΠΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½Π° ΡΠ°Π·Π²ΠΎΡΠ½Π° ΡΡΠ΅Π΄ΠΈΠ½Π°, ΠΊΠΎΠ³Π° ΡΠ΅ ΡΠΏΠΎΡΡΠ²Π°, EF Core ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΡΠ°Π΄Π° ΠΎΠ΄ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ. ΠΠ²Π° ΡΡΠ°Π½ΡΠ²Π° Π·Π½Π°ΡΠ°Π΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΄Π΅Π»ΠΎΠ²ΠΈ ΠΎΠ΄ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΡΠ΅ ΠΊΡΠ΅ΠΈΡΠ°Π½ΠΈ ΠΎΠ΄ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈ, ΡΠ°ΠΊΠ° ΡΡΠΎ ΠΌΠΎΡΠ° Π΄Π° ΠΏΠΎΡΡΠΎΡΠΈΡΠ΅ ΠΌΠ½ΠΎΠ³Ρ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ΅ΠΊΠΎΡ
- ΠΠ°ΠΏΡΠ΅Π΄Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ°. Π’ΡΠΊΠ°, Π½ΠΈ ΡΠ΅ ΡΠΈΠ½ΠΈ, Π½Π΅ Π΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΡΠ²Π°ΡΠ΅
- ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ. ΠΡΠΈΡΠ΅ΡΠΈΡΠΌΠΎΡ Π΅ ΡΡΠ»ΠΎΠ²Π΅Π½, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π½Π΅ ΡΠ΅ ΠΌΠ½ΠΎΠ³Ρ ΡΠΊΠ°ΠΏΠΈ ΠΈΠ»ΠΈ ΡΠΊΠ°ΠΏΠΈ, Π½ΠΎ ΠΈΠ΄Π΅Π°Π»Π½ΠΈ ΠΏΠΎ ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΎΡΡ, Π±Π΅Π²ΠΌΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅
ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΠΌΠ°Π»ΠΎ ΠΈΡΡΡΠ°ΠΆΡΠ²Π°ΡΠ΅, ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΎΠΏΡΠΈΠΈ Π±Π΅Π° ΠΏΡΠΎΠ½Π°ΡΠ΄Π΅Π½ΠΈ ΠΈ Π±Π΅Π° ΠΏΠΎΠΆΠ΅Π»Π½ΠΈ Π·Π° ΡΠ°Π·Π³Π»Π΅Π΄ΡΠ²Π°ΡΠ΅:
- EF ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ
- DBup
- Π’ΡΠΊΠ°Π»Π΅Π·Π½Π° ΠΊΡΡΠ° Π
- ThinkingHome.ΠΠΈΠ³ΡΠ°ΡΠΎΡ
- Π’Π΅ΡΠ΅Π½ ΠΌΠΈΠ³ΡΠ°ΡΠΎΡ
Π ΡΠ΅Π³Π° ΠΌΠ°Π»ΠΊΡ ΠΏΠΎΠ²Π΅ΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ
Π‘Π΅ΠΊΠ°ΠΊΠΎ, ΠΎΠ²Π° Π±Π΅ΡΠ΅ ΠΏΡΠ²Π°ΡΠ° ΠΈ Π³Π»Π°Π²Π½Π° ΠΎΠΏΡΠΈΡΠ° Π·Π° ΠΈΠ·Π±ΠΎΡ. ΠΠΎΠΌΠ°ΡΠ΅Π½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΊΠΎΡ ΡΠ°Π±ΠΎΡΠΈ Π½Π°Π΄Π²ΠΎΡ ΠΎΠ΄ ΠΊΡΡΠΈΡΠ°ΡΠ° Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ΠΏΠΊΠ°ΡΠ΅ ΡΠΎ ΡΠ°ΠΌΠ±ΡΡΠ°. ΠΠΎΠ»Π΅ΠΌΠ° ΠΊΠΎΠ»ΠΈΡΠΈΠ½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°, ΠΎΡΠΈΡΠΈΡΠ°Π»Π½Π° ΠΈ Π½Π΅ ΡΠΎΠ»ΠΊΡ, Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎΡΡ ΠΈΡΠ½. Π‘Π΅ΠΏΠ°ΠΊ, ΠΏΠΎΠΏΠ»Π°ΠΊΠΈΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ Π·Π° ΠΊΠ»Π°ΡΠΈΡΠ½ΠΈΠΎΡ EF ΡΠ΅ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° Π΄ΠΎΡΡΠ° ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΠΈ Π·Π° EF Core.
Π’Π°ΠΊΠ°, ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈΡΠ΅ Π·Π° EF Core ΡΠ΅ ΠΈΡΡΠ°ΠΊΠ½Π°ΡΠΈ:
- ΠΠΎΠ΄Π΄ΡΡΠΊΠ° Π½Π° Microsoft, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈ Π½Π° ΡΡΡΠΊΠΈ, ΠΎΠ³ΡΠΎΠΌΠ½Π° Π·Π°Π΅Π΄Π½ΠΈΡΠ°
- ΠΠ²ΡΠΎΠΌΠ°ΡΡΠΊΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° CodeFirst
- ΠΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ EF 6, EF Core ΠΏΠΎΠ²Π΅ΡΠ΅ Π½Π΅ ΡΠΊΠ»Π°Π΄ΠΈΡΠ° ΡΠ»ΠΈΠΊΠ° ΠΎΠ΄ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠΎΠ³Π° ΡΠ°Π±ΠΎΡΠΈΡΠ΅ ΡΠΎ EF Core Π²ΠΎ Code First, ΠΏΠΎΠ²Π΅ΡΠ΅ Π½Π΅ Π΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎ Π΄Π° ΡΠ΅ ΡΠ°ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π° Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
- ΠΠΈΠ΄Π΅ΡΡΠΈ ΡΠ°Π½ΡΡΠ²Π°ΠΌΠ΅ ΠΎΠ΄ Code First, ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΠΈ Π΅Π΄Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° Π΄ΠΎ ΡΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΈ Π΄Π°Π²Π°ΡΠ΅Π»ΠΈ Π½Π° ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
- ΠΠΎ ΠΎΠ΄Π½ΠΎΡ Π½Π° ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΈΡΠ΅, PostgreSQL Π΅ ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½, Oracle Π΅ ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ ΠΈΡΠ½., ΠΈΡΠ½., ΠΏΠ° Π΄ΡΡΠΈ ΠΈ MS SQL Server ο
Π, ΠΈΡΡΠΎ ΡΠ°ΠΊΠ°, Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠΈΡΠ΅:
- Π Π΅ΡΠ°Π²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΡ ΠΎΡΡΠ°Π½Π° Π½Π° ΠΈΡΡΠΎ Π½ΠΈΠ²ΠΎ. ΠΠ΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΡΠ΅Π΄Π°Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈΡΠ΅ ΠΈ Π΄Π° ΡΠ΅ Π°ΠΆΡΡΠΈΡΠ°Π°Ρ ΡΠ½ΠΈΠΌΠΊΠΈΡΠ΅ ΠΎΠ΄ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
- ΠΠ°Π²ΠΈΡΠ½ΠΎΡΡ ΠΎΠ΄ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅ Π½Π° ΠΊΠΎΠΈ ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π°Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈΡΠ΅
DbUp
DbUp Π΅ .NET Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΊΠΎΡΠ° Π΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π° ΠΎΠ΄ NuGet ΠΈ ΠΏΠΎΠΌΠ°Π³Π° Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠΊΠ½Π°Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π½Π° SQL Server. ΠΠΈ ΡΠ»Π΅Π΄ΠΈ ΠΊΠΎΠΈ ΡΠΊΡΠΈΠΏΡΠΈ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΠ΅ Π²Π΅ΡΠ΅ ΠΈΠ·Π²ΡΡΠ΅Π½ΠΈ ΠΈ Π³ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΎΠ½ΠΈΠ΅ ΡΡΠΎ ΡΠ΅ Π½Π΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΈ Π·Π° Π°ΠΆΡΡΠΈΡΠ°ΡΠ΅ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΏΡΠΎΠΈΠ·Π»Π΅Π·Π΅ ΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡ Π·Π° ΠΌΠΎΡΠΎΡ Π·Π° Π±Π»ΠΎΠ³ΠΈΡΠ°ΡΠ΅ ΡΠΎ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ Π½Π° ASP.NET ΠΈ ΠΏΠΎΡΡΠΎΠΈ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ° Π½Π° MIT, Π° ΠΊΠΎΠ΄ΠΎΡ Π΅ Π½Π° GitHub. ΠΠΈΠ³ΡΠ°ΡΠΈΠΈΡΠ΅ ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈ ΡΠΎ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° T-SQL.
ΠΠΎΠΈ ΡΠ΅ ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈΡΠ΅:
- ΠΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ DBMS (MS SQL Server, PstgreSQL, MySQL)
- ΠΠΈΠ΄Π΅ΡΡΠΈ ΡΠΊΡΠΈΠΏΡΠΈΡΠ΅ ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π²ΠΎ T-SQL, ΡΠΈΠ΅ ΠΈΠ·Π³Π»Π΅Π΄Π°Π°Ρ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ
- ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈΡΠ΅ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ΅ ΡΠ΅ΡΠ°Π²Π°Π°Ρ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° SQL
Π Π»ΠΎΡΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈ:
- Π‘ΠΎ ΡΠ΅ΡΠ° ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ Π½Π° ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ΠΈ DBMS, Oracle Π½Π΅ Π΅ Π΅Π΄Π΅Π½ ΠΎΠ΄ Π½ΠΈΠ²
- ΠΠ΅ ΠΊΠΎΠΌΡΠ½ΠΈΡΠΈΡΠ° ΡΠΎ ORM
- Π Π°ΡΠ½ΠΎ ΠΏΠΈΡΡΠ²Π°ΡΠ΅ΡΠΎ T-SQL ΡΠΊΡΠΈΠΏΡΠΈ Π½Π΅ Π΅ ΠΎΠ½Π° ΠΊΠΎΠ½ ΡΡΠΎ ΡΠ΅ ΡΡΡΠ΅ΠΌΠ΅Π²ΠΌΠ΅
- ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° ΠΈ Π·Π°Π΅Π΄Π½ΠΈΡΠ°ΡΠ° ΡΠ΅ ΡΠΎΠ»ΠΊΡ, ΠΈΠ°ΠΊΠΎ Π²ΠΎ ΠΎΠ΄Π½ΠΎΡ Π½Π° ΠΏΠΈΡΡΠ²Π°ΡΠ΅ΡΠΎ SQL ΡΠΊΡΠΈΠΏΡΠΈ ΠΌΠΎΠΆΠ΅Π±ΠΈ Π½Π΅ ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΈ.
Π’ΡΠΊΠ°Π»Π΅Π·Π½Π° ΠΊΡΡΠ° Π
ΠΠ²Π°Π° Π°Π»Π°ΡΠΊΠ° Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ°, Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ°ΡΠ° Apache 2.0, ΠΊΠ°ΠΊΠΎ ΠΈ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½Π°ΡΠ°, ΡΠ°Π±ΠΎΡΠΈ Π½Π° ΠΌΠΎΡΠΎΡΠΎΡ Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° T-SQL. ΠΡΠΈΠ³Π»Π΅Π΄Π½ΠΎ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈΡΠ΅ ΡΡΠ°Π²ΠΈΡΠ° ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ Π½Π° ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ Π½Π° ΡΠ΅Ρ Π½ΠΈΡΠΊΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π²ΠΎ Π²ΡΡΠΊΠ° ΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ°ΡΠ° Π·Π° DBMS, Π½Π°ΠΌΠ΅ΡΡΠΎ Π΄Π° ΡΠΎΠ·Π΄Π°Π΄Π°Ρ ΡΠ΄ΠΎΠ±Π΅Π½ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΡΠ°Π·Π²ΠΎΡ.
ΠΠΎΠ·ΠΈΡΠΈΠ²Π½ΠΈ:
- ΠΠΈ ΠΏΠΎΠ΄Π΄ΡΠΆΡΠ²Π° ΠΏΠΎΡΡΠ΅Π±Π½ΠΈΡΠ΅ DBMS (Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ Oracle)
ΠΠΎΠ½Ρ:
- Oracle (ΠΊΠ°ΠΊΠΎ ΠΈ Access, ΡΡΠΎ Π΅ ΠΈΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΠΎ Π·Π° Π½Π°Ρ) Π½Π΅ Π΅ ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ Π½Π° .NET Core, ΡΠ°ΠΌΠΎ Π½Π° .NET Full Framework
- ΠΠ΅ ΡΠ°Π±ΠΎΡΠΈ ΡΠΎ ORM
- ΠΠΌΠ° ΡΡΡΠ΅ ΠΏΠΎΠΌΠ°Π»ΠΊΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° ΠΎΠ΄ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½Π°ΡΠ° Π°Π»Π°ΡΠΊΠ°
- ΠΠΎΠ²ΡΠΎΡΠ½ΠΎ - ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈΡΠ΅ ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ ΡΠΎ ΡΠΊΡΠΈΠΏΡΠΈ
ThinkingHome.ΠΠΈΠ³ΡΠ°ΡΠΎΡ
ΠΠ»Π°ΡΠΊΠ° Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ΅ΠΌΠ°ΡΠ° Π½Π° Π²Π΅ΡΠ·ΠΈΠΎΠ½ΠΈΡΠ°Π½Π° Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π΄ΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° .NET Core, Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ°ΡΠ° MIT.
ΠΠΎΠ·ΠΈΡΠΈΠ²Π½ΠΈ:
- ΠΠΈΠ·Π°ΡΠ½ΠΈΡΠ°Π½ Π·Π° .NET Core
- Π‘ΠΏΡΠΎΠ²Π΅Π΄Π΅ ΡΠ°Π·Π³ΡΠ°Π½Π΅ΡΠ° Π½ΠΈΠ·Π° Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ
- Π‘ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π° Π΅Π²ΠΈΠ΄Π΅Π½ΡΠΈΡΠ° Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ°
ΠΠΎΠ½Ρ:
- ΠΠΎΡΠ»Π΅Π΄Π½ΠΎ Π°ΠΆΡΡΠΈΡΠ°Π½ΠΎ ΠΏΡΠ΅Π΄ Π΅Π΄Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°. ΠΡΠΈΠ³Π»Π΅Π΄Π½ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Π½Π΅ Π΅ ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½
- ΠΠ΅ Π΅ ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ΠΎ ΠΎΠ΄ Oracle (Π²ΠΎ Π½Π°ΠΏΠΈΡΠΎΡ ΡΠ΅ Π½Π°Π²Π΅Π΄ΡΠ²Π° Π΄Π΅ΠΊΠ° ΠΎΠ²Π° ΡΠ΅ Π΄ΠΎΠ»ΠΆΠΈ Π½Π° Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊΠΎΡ Π½Π° ΡΡΠ°Π±ΠΈΠ»Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π·Π° .NET Core - Π½ΠΎ ΠΎΠ²Π° Π΅ ΠΏΡΠ΅Π΄ Π΅Π΄Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°)
- ΠΠ΅ΠΌΠ° Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ
ΠΠ΅Π½Π΅ΡΠ°Π»Π½ΠΎ, ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ ΠΈΠ·Π³Π»Π΅Π΄Π° Π²Π΅ΡΡΠ²Π°ΡΠΊΠΈ, ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π°ΠΊΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π°, Π½ΠΎ ΡΡΠ΅Π±Π°ΡΠ΅ Π΄Π° Π΄ΠΎΠ½Π΅ΡΠ΅ΠΌΠ΅ ΠΎΠ΄Π»ΡΠΊΠ° ΠΎΠ²Π΄Π΅ ΠΈ ΡΠ΅Π³Π°.
Π’Π΅ΡΠ΅Π½ ΠΌΠΈΠ³ΡΠ°ΡΠΎΡ
ΠΠ°ΡΠΏΠΎΠΏΡΠ»Π°ΡΠ½Π°ΡΠ° Π°Π»Π°ΡΠΊΠ° Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° ΡΠΎ Π³ΠΎΠ»Π΅ΠΌΠ° Π°ΡΠΌΠΈΡΠ° ΡΠ°Π½ΠΎΠ²ΠΈ. ΠΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ°ΡΠ° Apache 2.0. ΠΠ°ΠΊΠΎ ΡΡΠΎ Π΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΎ Π²ΠΎ ΠΎΠΏΠΈΡΠΎΡ, ΡΠΎΠ° Π΅ ΡΠ°ΠΌΠΊΠ° Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° Π·Π° .NET, ΡΠ»ΠΈΡΠ½Π° Π½Π° Ruby on Rails Migrations. ΠΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ ΡΠ΅ΠΌΠ°ΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈ Π²ΠΎ ΠΊΠ»Π°ΡΠΈΡΠ΅ C#.
Π’ΡΠΊΠ° ΠΈΠΌΠ° ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈ:
- ΠΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° ΠΏΠΎΡΡΠ΅Π±Π½ΠΈΡΠ΅ DBMS
- .NET Core ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ°
- ΠΠΎΠ»Π΅ΠΌΠ° ΡΠ°Π·Π²ΠΈΠ΅Π½Π° Π·Π°Π΅Π΄Π½ΠΈΡΠ°
- ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈΡΠ΅ ΡΠ΅ ΡΠ΅ΡΠ°Π²Π°Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ - ΡΠ΅ ΠΎΠ΄ΡΠ΅Π΄ΡΠ²Π° ΡΠ΅Π΄ΠΎΡΠ»Π΅Π΄ΠΎΡ Π½Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈΡΠ΅. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ, Π°ΠΊΠΎ ΡΠ΅ ΠΏΠΎΡΠ°Π²ΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΠΎΠΊΠΎΠ»Ρ Π΅Π΄Π΅Π½ Π΅Π½ΡΠΈΡΠ΅Ρ, ΠΏΡΠΈ ΡΠΏΠΎΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ, ΡΠΎΡ ΡΠ΅ ΡΠ΅ΡΠ°Π²Π° Π½Π° ΠΈΡΡ Π½Π°ΡΠΈΠ½ ΠΊΠ°ΠΊΠΎ ΠΈ Π²ΠΎ ΠΎΡΡΠ°ΡΠΎΠΊΠΎΡ ΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΡ
- ΠΠΎΡΡΠΎΡΠ°Ρ ΠΏΡΠΎΡΠΈΠ»ΠΈ ΠΊΠΎΠΈ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Π°Ρ ΠΏΠΎ ΡΡΠΏΠ΅ΡΠ½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ°. Π ΡΠΈΠ΅ ΠΌΠΎΠΆΠ°Ρ Π΄Π° Π½ΠΎΡΠ°Ρ ΡΠ΅ΡΠ²ΠΈΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ.ΠΠΎΡΠ»Π΅Π΄Π½ΠΎΡΠΎ Π°ΠΆΡΡΠΈΡΠ°ΡΠ΅ Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄ Π΅Π΄Π΅Π½ ΠΌΠ΅ΡΠ΅Ρ, ΠΎΠ΄Π½ΠΎΡΠ½ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Π΅ ΠΆΠΈΠ²
Π¨ΡΠΎ ΡΠ΅ ΠΎΠ΄Π½Π΅ΡΡΠ²Π° Π΄ΠΎ ΠΌΠΈΠ½ΡΡΠΈΡΠ΅, Π΅Π²Π΅ Π³ΠΈ:
- ΠΠ΅ΠΌΠ° Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ
- ΠΠ΅ΠΌΠ° Π²ΡΡΠΊΠ° ΡΠΎ EF ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅
- ΠΠ΅ΠΌΠ° ΡΠ½ΠΈΠΌΠΊΠΈ ΠΎΠ΄ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
ΠΠΎΡ Π±Π΅ΡΠ΅ Π½Π°ΡΠΈΠΎΡ ΠΈΠ·Π±ΠΎΡ?
ΠΠ΅ΡΡΠΎΠΊΠΈΡΠ΅ Π΄Π΅Π±Π°ΡΠΈ ΡΠ΅ Π²ΡΡΠ΅Π° ΠΎΠΊΠΎΠ»Ρ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ - Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠ°Π·ΡΠΌΠ½ΠΎ ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈΡΠ΅. ΠΡΡΠ³ΠΈΡΠ΅ ΡΠ°ΠΊΡΠΎΡΠΈ Π±Π΅Π° ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠΌΠ°Π»ΠΊΡ Π·Π°ΡΡΡΠ°ΡΡΠ²Π°ΡΠΊΠΈ. ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ°, Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΠ΄ Π΄ΠΈΡΠΊΡΡΠΈΡΠ°ΡΠ°, ΡΠΈΠΌΠΎΡ ΠΎΠ΄Π»ΡΡΠΈ Π΄Π° Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈ Fluent Migrator Π²ΠΎ Π½ΠΎΠ²ΠΈΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠ°ΡΠΎΠ° ΡΡΠΎ ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈΡΠ΅ Π²ΠΎ ΠΈΠ΄Π½ΠΈΠ½Π° ΡΠ΅ Π΄ΠΎΠ½Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΡΠΈΠ΄ΠΎΠ±ΠΈΠ²ΠΊΠΈ.
ΠΠ°ΠΎΠ΄ΠΈ
Π‘Π΅ ΡΠ°Π·Π±ΠΈΡΠ°, Π½Π΅ΠΌΠ° ΡΠΎΠ²ΡΡΠ΅Π½ΠΈ Π°Π»Π°ΡΠΊΠΈ. ΠΠ°ΡΠΎΠ° ΠΌΠΎΡΠ°Π²ΠΌΠ΅ Π΄Π° Π³ΠΈ Π΄Π°Π΄Π΅ΠΌΠ΅ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΈΡΠ΅ Π½Π° Π½Π°ΡΠΈΡΠ΅ βΠΆΠ΅Π»Π±ΠΈβ Π·Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌΠ΅ ΠΈΠ·Π±ΠΎΡ. ΠΠ΅ΡΡΡΠΎΠ°, Π·Π° Π΄ΡΡΠ³ΠΈ ΡΠΈΠΌΠΎΠ²ΠΈ ΠΈ Π΄ΡΡΠ³ΠΈ Π·Π°Π΄Π°ΡΠΈ, Π΄ΡΡΠ³ΠΈ ΡΠ°ΠΊΡΠΎΡΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΠΈΠ΄Π°Ρ ΠΎΠ΄Π»ΡΡΡΠ²Π°ΡΠΊΠΈ. Π‘Π΅ Π½Π°Π΄Π΅Π²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ° ΡΠ΅ Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΈΠ·Π±ΠΎΡ.
ΠΠ·Π²ΠΎΡ: www.habr.com