Microsoft open sourced เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C++ เบฅเบงเบกเบขเบนเปˆเบเบฑเบš Visual Studio

เปƒเบ™เบเบญเบ‡เบ›เบฐเบŠเบธเบก CppCon 2019 เบ—เบตเปˆเบˆเบฑเบ”เบ‚เบถเป‰เบ™เปƒเบ™เบกเบทเป‰เบ™เบตเป‰, Microsoft เบ›เบฐโ€‹เบเบฒเบ” เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบ›เบตเบ”เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบซเปเบชเบฐเบซเบกเบธเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C++ (STL, C++ Standard Library), เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบท MSVC เปเบฅเบฐเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ Visual Studio. เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ—เบตเปˆเบญเบฐเบ—เบดเบšเบฒเบเป„เบงเป‰เปƒเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C ++ 14 เปเบฅเบฐ C ++17 เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™, เปเบฅเบฐเบเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C ++ 20 เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”, เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบฎเปˆเบฒเบ‡เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™. เบฅเบฐเบซเบฑเบ” เป€เบ›เบตเบ” เบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” Apache 2.0 เบ—เบตเปˆเบกเบตเบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™เบชเปเบฒเบฅเบฑเบšเป„เบŸเบฅเปŒเบ„เบนเปˆเบ—เบตเปˆเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบเบฒเบ™เบฅเบงเบกเป€เบญเบปเบฒเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” runtime เปƒเบ™เป„เบŸเบฅเปŒเบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™.

เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ™เบตเป‰เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”เปเบกเปˆเบ™เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป€เบ›เบฑเบ™เป‚เบ„เบ‡เบเบฒเบ™เป€เบ›เบตเบ”เบ—เบตเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒเปƒเบ™ GitHub, เบฎเบฑเบšเป€เบญเบปเบฒเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เบˆเบฒเบเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบกเบ—เบตเปˆเบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฑเบเบชเบฐเบ™เบฐเปƒเบซเบกเปˆ (เบเบฒเบ™เบกเบตเบชเปˆเบงเบ™เบฎเปˆเบงเบกเปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เป€เบŠเบฑเบ™เบชเบฑเบ™เบเบฒ CLA เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป‚เบญเบ™. เบชเบดเบ”เบ‚เบญเบ‡เบŠเบฑเบšเบชเบดเบ™เบเบฑเบšเบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ–เบทเบเป‚เบญเบ™). เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเบเบฒเบ™เป‚เบญเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ STL เบเบฑเบš GitHub เบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบฅเบนเบเบ„เป‰เบฒ Microsoft เบ•เบดเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบ„เบทเบšเบซเบ™เป‰เบฒเบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ, เบ—เบปเบ”เบฅเบญเบ‡เบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบซเบผเป‰เบฒเบชเบธเบ”เปเบฅเบฐเบŠเปˆเบงเบเบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบžเบตเปˆเบกเบ™เบฐเบงเบฑเบ”เบเปเบฒ.

เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบเบฑเบ‡เบˆเบฐเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบŠเบธเบกเบŠเบปเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบเบฝเบกเบžเป‰เบญเบกเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เบˆเบฒเบเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เปƒเบซเบกเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบญเบทเปˆเบ™เป†. เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ”เบฅเบฐเบซเบฑเบ”เบ–เบทเบเป€เบฅเบทเบญเบเป€เบžเบทเปˆเบญเปƒเบซเป‰เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เบฅเบฐเบซเบฑเบ”เบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” libc++ เบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™ LLVM. STL เปเบฅเบฐ libc ++ เบกเบตเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เปƒเบ™เบเบฒเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบžเบฒเบเปƒเบ™เบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™, เปเบ•เปˆเบ–เป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™, เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ libc++ เบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเบˆเบฒเบ STL (เบ•เบปเบงเบขเปˆเบฒเบ‡, charconv) เบซเบผเบทเบ—เบฑเบ‡เบชเบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบชเบฒเบกเบฒเบ”เบฎเปˆเบงเบกเบเบฑเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบšเบฒเบ‡เบ›เบฐเบ”เบดเบ”เบชเป‰เบฒเบ‡. เบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™เบ—เบตเปˆเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” Apache เป€เบญเบปเบฒเบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เป€เบžเบทเปˆเบญเบญเป‰เบฒเบ‡เป€เบ–เบดเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบชเบปเปˆเบ‡ binaries เบ—เบตเปˆเบฅเบงเบšเบฅเบงเบกเบเบฑเบš STL เปƒเบซเป‰เบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบชเบธเบ”เบ—เป‰เบฒเบ.

เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเบฐเป€เบžเบฒเบฐ, เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเบนเบ‡, เบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ (เป€เบ„เบทเปˆเบญเบ‡เบกเบทเปเบเป‰เบšเบฑเบ™เบซเบฒ, เบเบฒเบ™เบงเบดเบ™เบดเบ”เป„เบช, เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”) เปเบฅเบฐเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เปƒเบ™เบฅเบฐเบ”เบฑเบšเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เปเบฅเบฐ ABI เบเบฑเบšเบเบฒเบ™เบ›เปˆเบญเบ Visual Studio 2015/2017 เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ. เปƒเบ™เบšเบฑเบ™เบ”เบฒเบ‚เบปเบ‡เป€เบ‚เบ”เบ—เบตเปˆ Microsoft เบšเปเปˆเบชเบปเบ™เปƒเบˆเปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบกเปˆเบ™ porting เบเบฑเบšเป€เบงเบ—เบตเบญเบทเปˆเบ™เป†เปเบฅเบฐเป€เบžเบตเปˆเบกเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™