ΠΠ° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ CppCon 2019 ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΡΡΠΈ Π΄Π½ΠΈ, ΠΠΊΡΠΏΠ΅ΡΡΡ Microsoft Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΎΠ± ΠΎΡΠΊΡΡΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π΄Π»Ρ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ C ++ (ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ ΠΊΠ°ΠΊ STL), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ MSVC ΠΈ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Visual Studio.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΡΠ΅ΠΊΡΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ°Ρ C ++ 14 ΠΈ C ++ 17, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ Π² Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ° C ++ 20 ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΠΎ ΡΠ»ΠΎΠ²Π°ΠΌ ΠΏΡΠΈΡΠΈΠ½Ρ, ΠΏΠΎΡΠ΅ΠΌΡ Π»ΡΠ΄ΠΈ Microsoft ΡΠ΅ΡΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΡΠ°Π³, Π² Π·Π°ΡΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΡΡΠ½ΠΈΡΠ΅:
ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΡΠΈΠ½, ΠΏΠΎΡΠ΅ΠΌΡ ΠΌΡ Π΄Π΅Π»Π°Π΅ΠΌ ΡΡΠΎ, ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ – ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² STL Π½Π° GitHub, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΡΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° Π½Π°ΡΠ΅ΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ, ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π°ΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π½Π°ΠΌ ΡΠ»ΡΡΡΠ°ΡΡ Π½Π°ΡΠΈ Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΈΡ .
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΡ C ++ ΡΡΠΊΠΎΡΡΠ΅ΡΡΡ, ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π³ΠΎΠ΄ Π³ΠΎΠ»ΠΎΡΡΡΡ Π·Π° Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΌΡ ΡΡΠΈΡΠ°Π΅ΠΌ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠΈΠ½ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. (ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Ρ ΡΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠ° ΠΈ ΡΠΎΡΠΌΠ°ΡΠ° C ++ 20 ΡΠ²Π»ΡΡΡΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠ°ΠΌΠΈ). ΠΡ ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΎΡΠΈΠΌ ΡΠ½ΠΎΠ²Π° Π²Π½Π΅ΡΡΠΈ ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ C ++, ΡΠ΄Π΅Π»Π°Π² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π°ΡΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ. (ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, C ++ 17 charconv)
Π‘ ΡΡΠΈΠΌ ΠΡΠ΄ΠΈ ΠΈΠ· Microsoft Π³ΠΎΠ²ΠΎΡΡΡ, ΡΡΠΎ ΠΏΠ»Π°Π½ΠΈΡΡΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΊΠ°ΠΊ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π² GitHub, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΎΡ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ ΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ (Π΄Π»Ρ ΡΡΠ°ΡΡΠΈΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ CLA Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΏΡΠ°Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ Π½Π° ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄).
ΠΠ°ΠΌΠ΅ΡΠ΅Π½ΠΎ, ΡΡΠΎ ΠΠ΅ΡΠ΅Π½ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ STL Π½Π° GitHub ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ Microsoft ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΠΉΡΠ΅ Ρ ΠΎΠ΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΡΠΉΡΠ΅ Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΠΉΡΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΡΡΠΏΠ°ΡΡΠΈΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π½Π° ΠΈΠ½Π½ΠΎΠ²Π°ΡΠΈΠΈ.
ΠΡΠΊΡΠΎΠΉ ΠΊΠΎΠ΄ ΡΠΎΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π½ΠΎΠ²ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ² Π² Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ .
Π Π»ΠΈΡΠ΅Π½Π·ΠΈΠΎΠ½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΠ½ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΎΡΠΊΡΡΡΡΠΉ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0 Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π»Ρ Π΄Π²ΠΎΠΈΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² ΡΠΎΡΡΠ°Π² ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ².
Π§ΡΠΎΠ±Ρ Π±ΡΡΡ ΡΡΠ½ΡΠΌ, STL MSVC Π½Π΅ ΡΠ»ΠΈΠ²Π°Π΅ΡΡΡ Ρ libc ++, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΎΡΡΠ°ΡΡΡΡ ΡΠ°Π·Π½ΡΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ.
Microsoft ΠΎΠ±ΡΡΡΠ½ΡΠ΅Ρ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΊΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Π²ΡΠ±ΡΠ°Π½ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ» ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΊΠΎΠ΄ΠΎΠΌ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ libc ++ ΠΏΡΠΎΠ΅ΠΊΡΠ° LLVM. STL ΠΈ libc ++ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ ΠΏΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ , Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΏΠΎΠΆΠ΅Π»Π°ΡΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ libc ++ ΠΌΠΎΠ³ΡΡ Π½Π΅ΡΡΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ STL (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, charconv), Π»ΠΈΠ±ΠΎ ΠΎΠ±Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΌΠΎΠ³ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ½Π½ΠΎΠ²Π°ΡΠΈΠΈ.
MSVC STL ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache v2.0 Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌΠΈ LLVM, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Clang / LLVM / libc ++.
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠ΅ Π² Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Apache, ΠΎΡΠΌΠ΅Π½ΡΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° ΠΏΡΠΈ Π΄ΠΎΡΡΠ°Π²ΠΊΠ΅ Π΄Π²ΠΎΠΈΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ STL, Π΄Π»Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΡΠ° ΡΠ°Π·ΡΠ΅ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π±ΡΠ»Π° Π²ΡΠ±ΡΠ°Π½Π° ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΡΡ ΠΆΠ΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ, ΡΡΠΎ ΠΈ libc ++. ΡΡΠΎ ΠΎΠ±Π»Π΅Π³ΡΠΈΡ ΠΎΠ±ΠΌΠ΅Π½ ΠΊΠΎΠ΄Π°ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ. Π§ΡΠΎΠ±Ρ Π±ΡΠ»ΠΎ ΡΡΠ½ΠΎ, MSVC STL Π½Π΅ ΡΠ»ΠΈΠ²Π°Π΅ΡΡΡ Ρ libc ++; ΠΠ½ΠΈ ΠΎΡΡΠ°ΡΡΡΡ ΡΠ°Π·Π½ΡΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ .
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΠ»ΡΡΠ΅Π²ΡΡ Π·Π°Π΄Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΏΡΠΎΡΡΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ (ΠΎΡΠ»Π°Π΄ΠΊΠ°, Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°, ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ) ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ABI Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Visual Studio 2015/2017.
Π‘ΡΠ΅Π΄ΠΈ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Microsoft Π½Π΅ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Π° Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ Π·Π°ΡΠ²Π»Π΅Π½ΠΈΠΈ, ΡΠ΄Π΅Π»Π°Π½Π½ΠΎΠΌ Microsoft, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π½ΠΈΠΌ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠ»ΠΊΠ΅.