เป€เบงเบ—เบต "1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ”" - เบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰ hood?

Hey Habr!
เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบฅเบทเปˆเบญเบ‡เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบžเบฒเบเปƒเบ™ เป€เบงเบ—เบต "1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ” 8" เปเบฅเบฐเป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเปƒเบ”เบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบกเบฑเบ™.

เป€เบงเบ—เบต "1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ”" - เบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰ hood?

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ„เบดเบ”เบงเปˆเบฒเบ™เบตเป‰เบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆ? เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เป€เบžเบฒเบฐเบงเปˆเบฒเปเบžเบฅเบฐเบ•เบฐเบŸเบญเบก 1C:Enterprise 8 เปเบกเปˆเบ™เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปƒเบซเบเปˆ (เบซเบผเบฒเบเบเบงเปˆเบฒ 10 เบฅเป‰เบฒเบ™เป€เบชเบฑเป‰เบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”) เปƒเบ™ C ++ (เบฅเบนเบเบ„เป‰เบฒ, เป€เบŠเบตเบŸเป€เบงเบต, เปเบฅเบฐเบญเบทเปˆเบ™เป†), JavaScript (เบฅเบนเบเบ„เป‰เบฒเป€เบงเบฑเบš), เปเบฅเบฐ, เบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰, เปเบฅเบฐ. Java. เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเป€เบšเบดเปˆเบ‡เบšเปเปˆเป€เบซเบฑเบ™เบขเบนเปˆเปƒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบฅเบฐเบซเบฑเบ”เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เบœเบปเบ™เบšเบฑเบ‡เบ„เบฑเบšเปƒเบŠเป‰เบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, "1C:Enterprise" เปเบกเปˆเบ™เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ—เบปเบ”เปเบ—เบ™เป„เบ”เป‰, "เบเปˆเบญเบ‡", เปเบฅเบฐเบกเบตเบšเบปเบ”เบ„เบงเบฒเบกเบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบเบซเบผเบฒเบเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปƒเบ™Habre. เบกเบฑเบ™เปœเป‰เบฒเบชเบปเบ™เปƒเบˆเบชเบฐเป€เปเบตเบ—เบตเปˆเบˆเบฐเบฎเบนเป‰เบงเปˆเบฒเบŠเบตเบงเบดเบ”เบขเบนเปˆเปƒเบ™เบ—เบตเบก เปเบฅเบฐเบšเปเบฅเบดเบชเบฑเบ”เบญเบทเปˆเบ™เป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”.

เบชเบฐเบ™เบฑเป‰เบ™เปƒเบซเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเปƒเบซเป‰เบžเบฒเบšเบฅเบงเบกเบ‚เบญเบ‡เบšเบฒเบ‡เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เป€เบงเบ—เบตเปเบฅเบฐเบเปเบฒเบ™เบปเบ”เบžเบนเบกเบชเบฑเบ™เบ–เบฒเบ™, เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ”เปเบฒเบ™เป‰เปเบฒเป€เบฅเบดเบเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”. เปเบ—เป‰เบˆเบดเบ‡เปเบฅเป‰เบง, เบชเปเบฒเบฅเบฑเบšเบซเบผเบฒเบเบเบปเบ™เป„เบ, เป€เบฅเบทเปˆเบญเบ‡เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ•เป‰เบญเบ‡เบเบฒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡, เบ›เบทเป‰เบกเบ—เบฑเบ‡เบซเบกเบปเบ”!
เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ, เบกเบฑเบ™เบ„เบธเป‰เบกเบ„เปˆเบฒเบ—เบตเปˆเบˆเบฐเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™ - 1C: เป€เบงเบ—เบตเบงเบดเบชเบฒเบซเบฐเบเบดเบ”เปเบกเปˆเบ™เบซเบเบฑเบ‡เปเบฅเบฐเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบกเบฑเบ™เบ›เบฐเบเบญเบšเบ”เป‰เบงเบ. เบ„เปเบฒเบ•เบญเบšเบ‚เบญเบ‡เบ„เปเบฒเบ–เบฒเบกเบ™เบตเป‰เปเบกเปˆเบ™เบšเปเปˆเบ‡เปˆเบฒเบเบ”เบฒเบ, เป€เบžเบฒเบฐเบงเปˆเบฒเบ„เปเบฒเบงเปˆเบฒ "เป€เบงเบ—เบต" (เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบซเบเปเป‰, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบญเบตเป‰เบ™เบกเบฑเบ™เปเบšเบšเบ™เบฑเป‰เบ™) เบซเบกเบฒเบเป€เบ–เบดเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบธเบฅเบฐเบเบดเบ”, เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเป€เบงเบฅเบฒเปเบฅเปˆเบ™, เปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบšเปเบฅเบดเบซเบฒเบ™. เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ•เปเปˆเป„เบ›เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบˆเปเบฒเปเบ™เบเป„เบ”เป‰เบ›เบฐเบกเบฒเบ™:

  • เบเบธเปˆเบกเป€เบŠเบตเบšเป€เบงเบต
  • เบฅเบนเบเบ„เป‰เบฒ "เบšเบฒเบ‡" เบชเบฒเบกเบฒเบ”เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบœเปˆเบฒเบ™ http เปเบฅเบฐเป‚เบ›เป‚เบ•เบ„เบญเบ™ binary เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡
  • เบฅเบนเบเบ„เป‰เบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบชเบญเบ‡เบŠเบฑเป‰เบ™เบ—เบตเปˆเบกเบตเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™เบฎเบฒเบ”เป„เบ”เบซเบผเบทเป‚เบŸเบ™เป€เบ”เบตเป€เบ„เบทเบญเบ‚เปˆเบฒเบ
  • เบฅเบนเบเบ„เป‰เบฒเป€เบงเบฑเบš
  • เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ„เบธเป‰เบกเบ„เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™
  • เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ (เป€เบญเบตเป‰เบ™เบงเปˆเบฒ Configurator)
  • เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเป€เบงเบฅเบฒเปเบฅเปˆเบ™เบชเปเบฒเบฅเบฑเบš iOS, Android เปเบฅเบฐ Windows Phone (เปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบกเบทเบ–เบท 1C)

เบžเบฒเบเบชเปˆเบงเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบเบปเบเป€เบงเบฑเป‰เบ™เบฅเบนเบเบ„เป‰เบฒเป€เบงเบฑเบš, เปเบกเปˆเบ™เบ‚เบฝเบ™เปƒเบ™ C ++. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบตเบเบฒเบ™เบ›เบฐเบเบฒเบ”เป€เบกเบทเปˆเบญเบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰ เบฎเบธเปˆเบ™เปƒเบซเบกเปˆ configurator, เบ‚เบฝเบ™เปƒเบ™ Java.

เปเบญเบฑเบšเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš

C ++03 เบ–เบทเบเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡. เบชเปเบฒเบฅเบฑเบš Windows, Microsoft Visual C++ 12 (เป‚เบ›เบฃเป„เบŸเบฅเปŒเบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบš Windows XP) เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบ›เบฑเบ™เบ•เบปเบงเบฅเบงเบšเบฅเบงเบก, เปเบฅเบฐเบชเปเบฒเบฅเบฑเบš Linux เปเบฅเบฐ Android - gcc 4.8, เบชเปเบฒเบฅเบฑเบš iOS - clang 5.0. เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบตเปˆเปƒเบŠเป‰เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เปเบฅเบฐเบ•เบปเบงเบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™ - STLPport . เบเบฒเบ™เปเบเป‰เป„เบ‚เบ™เบตเป‰เบŠเปˆเบงเบเบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบชเบฐเป€เบžเบฒเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” STL. เบ›เบฐเบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบเบณเบฅเบฑเบ‡เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเบเป‰เบฒเบเป„เบ›เบชเบนเปˆเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” STL เบ—เบตเปˆเบชเบปเปˆเบ‡เบเบฑเบš CLang, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบ STLPort เป„เบ”เป‰เบ–เบทเบเบขเบธเบ”เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™ เปเบฅเบฐ เบšเปเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเป‚เปเบ”เป€เบ›เบตเบ”เบเบฒเบ™เบ™เบณเปƒเบŠเป‰ C++11 เบ‚เบญเบ‡ gcc.
เบžเบทเป‰เบ™เบ–เบฒเบ™เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบกเปˆเบ™ 99% เบ—เบปเปˆเบงเป„เบ›, เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡ - 95%. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบกเบทเบ–เบทเปƒเบŠเป‰เบฅเบฐเบซเบฑเบ” C ++ เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš "เปƒเบซเบเปˆ", เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบญเบฑเบ”เบ•เบฒเบชเปˆเบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เบฅเบงเบกเบ•เบปเบงเปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ•เปˆเปเบฒ.
เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰ C++ เบชเปˆเบงเบ™เปƒเบซเบเปˆ, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เบญเป‰เบฒเบ‡เบงเปˆเบฒเปƒเบŠเป‰ 100% เบ‚เบญเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡เบžเบฒเบชเบฒเปเบฅเบฐเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ‚เบญเบ‡เบกเบฑเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰ Boost, เปเบฅเบฐเบซเบ™เบถเปˆเบ‡เปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบžเบฒเบชเบฒเปเบกเปˆเบ™เบเบฒเบ™เป‚เบเบ™เบ›เบฐเป€เบžเบ”เปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบง. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบˆเบดเบ‡เบˆเบฑเบ‡:

  • STL (เป‚เบ”เบโ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เบชเบฐโ€‹เบ•โ€‹เบฃเบดเบ‡โ€‹, containers เปเบฅเบฐโ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹)
  • เบกเปเบฅเบฐเบ”เบปเบเบ—เบตเปˆเบซเบผเบฒเบเบซเบผเบฒเบ, เบฅเบงเบกเบ—เบฑเบ‡. เบเบฒเบ™เบชเบทเบšเบ—เบญเบ”เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบผเบฒเบ
  • เบฎเบนเบšเปเบšเบš
  • เบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™
  • เบ•เบปเบงเบŠเบตเป‰เบญเบฑเบ”เบชเบฐเบฅเบดเบเบฐ (เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบšเบšเบเบณเบ™เบปเบ”เป€เบญเบ‡)

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

Components

เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ„เบงเบฒเบกเป‚เบกเบ”เบนเบ™, เบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบš, เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบง (*.dll เบชเปเบฒเบฅเบฑเบš Windows, *.so เบชเปเบฒเบฅเบฑเบš Linux). เบกเบตเบซเบผเบฒเบเบเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบฎเป‰เบญเบเบซเป‰เบฒเบชเบดเบšเบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™เบˆเปเบฒเบ™เบงเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”; เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบเปˆเบฝเบงเบเบฑเบšเบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™:

backend
เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ metadata เบ‚เบญเบ‡เป€เบงเบ—เบต

accnt
เบงเบฑเบ”เบ–เบธเบ—เบตเปˆเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบšเบฑเบ™เบ—เบถเบเบšเบฑเบ™เบŠเบต (เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบšเบฑเบ™เบŠเบต เปเบฅเบฐเบ—เบฐเบšเบฝเบ™เบšเบฑเบ™เบŠเบต)

bsl
เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบฒเบชเบฒเบเบฑเบ‡

nuke
เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบšเบšเบเบณเบ™เบปเบ”เป€เบญเบ‡เบ‚เบญเบ‡เบ•เบปเบงเบˆเบฑเบ”เบชเบฑเบ™เบ„เบงเบฒเบกเบˆเบณ

dbeng8
เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบŸเบฅเปŒ. เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป„เบŸเบฅเปŒเบ‡เปˆเบฒเบเบ”เบฒเบเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ ISAM, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบเบญเบšเบกเบตเป‚เบ›เป€เบŠเบ”เป€เบŠเบต SQL เปเบšเบšเบ‡เปˆเบฒเบเบ”เบฒเบ

wbbase
เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบโ€‹เบŠเบฑเป‰เบ™โ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹เปเบฅเบฐโ€‹เบซเบ™เป‰เบฒโ€‹เบ—เบตเปˆโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบเบฒเบ™โ€‹เป‚เบ•เป‰โ€‹เบ•เบญเบšโ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰ Windows - เบซเป‰เบญเบ‡โ€‹เบฎเบฝเบ™โ€‹เบ›เปˆเบญเบ‡โ€‹เบขเป‰เบฝเบกโ€‹, เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป€เบ–เบดเบ‡ GDIโ€‹, เปเบฅเบฐโ€‹เบญเบทเปˆเบ™เป†โ€‹.

เบเบฒเบ™เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบซเบผเบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบˆเบฒเบเบซเบผเบฒเบเบˆเบธเบ”เบ‚เบญเบ‡เบ—เบฑเบ”เบชเบฐเบ™เบฐ:

  • เบเบฒเบ™เปเบเบเบ•เบปเบงเบชเบปเปˆเบ‡เป€เบชเบตเบกเบเบฒเบ™เบญเบญเบเปเบšเบšเบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบเบฒเบ™เปเบเบเบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ
  • เบˆเบฒเบเบŠเบธเบ”เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบฐเบเบญเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เป„เบ”เป‰:
    • เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบฅเบนเบเบ„เป‰เบฒเบšเบฒเบ‡เป†เบˆเบฐเบกเบต wbase, เปเบ•เปˆเบˆเบฐเบšเปเปˆเบกเบต backend
    • เปเบ•เปˆเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ wbase, เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบกเบฑเบ™เบˆเบฐเบšเปเปˆเป€เบ›เบฑเบ™
    • เบ—เบฑเบ‡เบชเบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปเบ™เปˆเบ™เบญเบ™เบˆเบฐเบกเบต nuke เปเบฅเบฐ bsl

เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบฑเบ‡เปเบปเบ”เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเป€เบฅเบทเบญเบเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบ™เบตเป‰เบˆเบฐเบ–เบทเบเป‚เบซเบฅเบ”เป€เบกเบทเปˆเบญเป‚เบ„เบ‡เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบ™เบตเป‰, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™ SCOM, เป€เบŠเบดเปˆเบ‡เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.

SCOM

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ decomposition เปƒเบ™เบฅเบฐเบ”เบฑเบšเบ•เปˆเปเบฒ, เบฅเบฐเบšเบปเบš SCOM เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เปƒเบ™เบญเบธเบ”เบปเบกเบเบฒเบ™เบเบฑเบš ATL. เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš ATL, เบžเบงเบเป€เบฎเบปเบฒเบšเบญเบเบชเบฑเป‰เบ™เป†เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปเบฅเบฐเบฅเบฑเบเบชเบฐเบ™เบฐเบ•เบปเป‰เบ™เบ•เป.
เบชเปเบฒเบฅเบฑเบšเบŠเบฑเป‰เบ™เบฎเบฝเบ™ SCOM เบ—เบตเปˆเบญเบญเบเปเบšเบšเบžเบดเป€เบชเบ”:

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

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบญเบฐเบ—เบดเบšเบฒเบเบซเป‰เบญเบ‡เบฎเบฝเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบญเปˆเบฒเบ™ JSON (เบ•เบปเบงเบขเปˆเบฒเบ‡, JSONStreamReader) เปƒเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบš json.dll.
เบซเป‰เบญเบ‡เบฎเบฝเบ™เปเบฅเบฐเบ•เบปเบงเบขเปˆเบฒเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบˆเบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบญเบทเปˆเบ™เป†; เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡ SCOM:

SCOM_CLASS_ENTRY(JSONStreamReader)

เบกเบฐเบซเบฒเบžเบฒเบเบ™เบตเป‰เบˆเบฐเบญเบฐเบ—เบดเบšเบฒเบเบŠเบฑเป‰เบ™เบšเบฑเบ™เบ—เบถเบเบชเบฐเบ–เบดเบ”เบžเบดเป€เบชเบ”, เบ•เบปเบงเบชเป‰เบฒเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เบˆเบฐเบ–เบทเบเป€เบญเบตเป‰เบ™เบงเปˆเบฒเป€เบกเบทเปˆเบญเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ–เบทเบเป‚เบซเบฅเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ.
เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบญเบทเปˆเบ™:

IJSONStreamReaderPtr jsonReader = create_instance<IJSONStreamReader>(SCOM_CLSIDOF(JSONStreamReader));

เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, SCOM เบชเบฐเป€เบซเบ™เบตเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เบซเบผเบฒเบ. เบชเบนเบ™เบเบฒเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เปเบกเปˆเบ™เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ SCOM, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เบ–เบฑเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบ (i.e., เบกเบตเบšเบปเบ”เบšเบฒเบ”เบ‚เบญเบ‡เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบšเปเบฅเบดเบเบฒเบ™), เปเบฅเบฐเบเบฑเบ‡เบกเบตเบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบเบฑเบšเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ SCOM เบ–เบทเบเบœเบนเบเบกเบฑเบ”เบเบฑเบšเบเบฐเบ—เบนเป‰ OS. เบ‚เปเบ‚เบญเบšเปƒเบˆเบเบฑเบšเบ™เบตเป‰, เบžเบฒเบเปƒเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰:

SCOM_Process* process = core::current_process();
if (process)
         return get_service<IMyService>(process);

เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เป‚เบ”เบเบเบฒเบ™เบ›เปˆเบฝเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™ (SCOM) เบ—เบตเปˆเบ•เบดเบ”เบเบฑเบšเบเบฐเบ—เบนเป‰, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบˆเบฒเบเบกเบธเบกเป€เบšเบดเปˆเบ‡เบ‚เบญเบ‡เบžเบทเป‰เบ™เบ—เบตเปˆเบ‚เปเป‰เบกเบนเบ™, เปเบฅเปˆเบ™เบžเบฒเบเปƒเบ™เบเบฐเบ—เบนเป‰เบ”เบฝเบงเบเบฑเบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบฅเบนเบเบ„เป‰เบฒเบšเบฒเบ‡เป†เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบŸเบฅเปŒ - เบžเบฒเบเปƒเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ OS เบกเบตเบชเบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ SCOM, เบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบฅเบนเบเบ„เป‰เบฒ, เปเบฅเบฐเบ—เบตเบชเบญเบ‡เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบเบฒเบ™เบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ—เบฑเบ‡เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบŸเบฅเปŒเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เปเบฅเบฐเปƒเบ™ "เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡" เบฅเบนเบเบ„เป‰เบฒ - เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบชเบฐเบšเบฑเบš. เบฅเบฒเบ„เบฒเบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป€เบญเบเบฐเบžเบฒเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบกเปˆเบ™เป€เบเบตเบ™เบฅเบฒเบ„เบฒ, เปเบ•เปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เบ„เบธเป‰เบกเบ„เปˆเบฒ.

เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบฎเบนเบšเปเบšเบšเบญเบปเบ‡เบ›เบฐเบเบญเบš SCOM, เบ—เบฑเบ‡เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เปเบฅเบฐเบชเปˆเบงเบ™เบ•เบดเบ”เบ•เปเปˆเบ‚เบญเบ‡ 1C: Enterprise เปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”.

เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰

เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเปƒเบŠเป‰เบเบฒเบ™เบ„เบงเบšเบ„เบธเบก Windows เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™; เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเบเบปเบ‡เปƒเบ™ Windows API. เบชเปเบฒเบฅเบฑเบšเบชเบฐเบšเบฑเบš Linux, เบŠเบฑเป‰เบ™เป„เบ”เป‰เบ–เบทเบเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบฎเบฑเบ”เบงเบฝเบเบœเปˆเบฒเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” wxWidgets.
เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบšเปเปˆเบ‚เบถเป‰เบ™เบเบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบญเบทเปˆเบ™เป†เบ‚เบญเบ‡ 1C:Enterprise เปเบฅเบฐเบ–เบทเบเปƒเบŠเป‰เป‚เบ”เบเบžเบงเบเป€เบฎเบปเบฒเปƒเบ™เบชเบดเปˆเบ‡เบญเปเบฒเบ™เบงเบเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเบžเบฒเบเปƒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบญเบทเปˆเบ™เป†.

เปƒเบ™เป„เบฅเบเบฐเบ›เบตเบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡ 1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ”, เบฎเบนเบšเบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเป„เบ”เป‰เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡, เปเบ•เปˆเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบขเปˆเบฒเบ‡เบˆเบดเบ‡เบˆเบฑเบ‡เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™เป„เบ”เป‰เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบžเบฝเบ‡เปเบ•เปˆเบ„เบฑเป‰เบ‡เบ”เบฝเบง, เปƒเบ™เบ›เบต 2009, เบเบฑเบšเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบ‚เบญเบ‡เบฎเบธเปˆเบ™ 8.2 เปเบฅเบฐเบเบฒเบ™เบกเบฒเบฎเบญเบ”เบ‚เบญเบ‡ "เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡". เบ™เบญเบเป€เบซเบ™เบทเบญเบˆเบฒเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบฎเบนเบšเบฅเบฑเบเบชเบฐเบ™เบฐ, เบซเบผเบฑเบเบเบฒเบ™เบ‚เบญเบ‡เบฎเบนเบšเปเบšเบšเบฎเบนเบšเปเบšเบšเป„เบ”เป‰เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป‚เบ”เบเบžเบทเป‰เบ™เบ–เบฒเบ™ - เบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเป€เบชเบ”เบเบฒเบ™เบˆเบฑเบ”เบ•เปเบฒเปเบซเบ™เปˆเบ‡ pixel-by-pixel เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™เบ„เบงเบฒเบกเป‚เบ›เบ”เบ›เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เป„เบซเบผ - เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เปƒเบ™เบฎเบนเบšเปเบšเบšเปƒเบซเบกเปˆ, เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบšเปเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบเบปเบ‡เบเบฑเบšเบงเบฑเบ”เบ–เบธเป‚เบ”เป€เบกเบ™, เปเบ•เปˆเบกเบต DTOs เบžเบดเป€เบชเบ” (เบงเบฑเบ”เบ–เบธเป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™).
เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡ 1C: เบฅเบนเบเบ„เป‰เบฒเป€เบงเบฑเบšเบงเบดเบชเบฒเบซเบฐเบเบดเบ”เบ—เบตเปˆ replicates C++ logic เบ‚เบญเบ‡เบเบฒเบ™เบ„เบงเบšเบ„เบธเบก JavaScript. เบžเบงเบเป€เบฎเบปเบฒเบžเบฐเบเบฒเบเบฒเบกเบฎเบฑเบเบชเบฒเบ„เบงเบฒเบกเบชเบปเบกเบ”เบธเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡เบฅเบนเบเบ„เป‰เบฒเบšเบฒเบ‡เปเบฅเบฐเป€เบงเบฑเบš. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰, เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบ‚เบญเบ‡ JavaScript API เบ—เบตเปˆเบกเบตเบขเบนเปˆ (เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเป„เบŸเบฅเปŒเปเบกเปˆเบ™เบˆเปเบฒเบเบฑเบ”เบซเบผเบฒเบ), เบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป‚เบ”เบเปƒเบŠเป‰เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡เบ•เบปเบงเบ—เปˆเบญเบ‡เป€เบงเบฑเบšเบ—เบตเปˆเบ‚เบฝเบ™เปƒเบ™ C ++. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ Internet Explorer เปเบฅเบฐ Microsoft Edge (Windows), Google Chrome (Windows), Firefox (Windows เปเบฅเบฐ Linux) เปเบฅเบฐ Safari (MacOS).

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เป€เบ—เบเป‚เบ™เป‚เบฅเบเบตเปเบšเบšเบŸเบญเบกเบ—เบตเปˆเบ–เบทเบเบ„เบธเป‰เบกเบ„เบญเบ‡เปเบกเปˆเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบชเปเบฒเบฅเบฑเบšเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบกเบทเบ–เบทเปƒเบ™เป€เบงเบ—เบต 1C. เปƒเบ™เบญเบธเบ›เบฐเบเบญเบ™เบกเบทเบ–เบท, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบ—เบตเปˆเบกเบฒเบˆเบฒเบเบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเป€เบซเบ”เบœเบปเบ™เบ‚เบญเบ‡เบฎเบนเบšเปเบšเบšเปเบฅเบฐเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš, เบฅเบฐเบซเบฑเบ”เบ”เบฝเบงเบเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™ "เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ" 1C: เป€เบงเบ—เบตเบงเบดเบชเบฒเบซเบฐเบเบดเบ”.

เป€เบงเบ—เบต "1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ”" - เบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰ hood?
1C เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเปƒเบ™ Linux OS

เป€เบงเบ—เบต "1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ”" - เบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰ hood?
เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš 1C เปƒเบ™เบญเบธเบ›เบฐเบเบญเบ™เบกเบทเบ–เบท

1C เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเปƒเบ™เป€เบงเบ—เบตเบญเบทเปˆเบ™เป† เป€เบงเบ—เบต "1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ”" - เบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰ hood?
เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš 1C เปƒเบ™ Windows OS

เป€เบงเบ—เบต "1C: เบงเบดเบชเบฒเบซเบฐเบเบดเบ”" - เบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰ hood?
เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš 1C - web client

Open source

เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบชเปเบฒเบฅเบฑเบšเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ C ++ เบžเบฒเบเปƒเบ•เป‰ Windows (MFC, เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบˆเบฒเบ WinAPI), เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เบ‚เบฝเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡. เบซเปเบชเบฐเบซเบกเบธเบ”เป„เบ”เป‰เบ–เบทเบเบเปˆเบฒเบงเป€เบ–เบดเบ‡เปเบฅเป‰เบง wxWidgets, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เปƒเบŠเป‰:

  • cURL เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš HTTP เปเบฅเบฐ FTP.
  • OpenSSL เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบฅเบฑเบšเปเบฅเบฐเบเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบฑเป‰เบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ TLS
  • libxml2 เปเบฅเบฐ libxslt เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐ XML
  • libetpan เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš mail protocols (POP3, SMTP, IMAP)
  • เบฅเบฝเบ™เปเบšเบš เป€เบžเบทเปˆเบญเบงเบดเป€เบ„เบฒเบฐเบ‚เปเป‰เบ„เบงเบฒเบกเบญเบตเป€เบกเบง
  • sqllite เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบšเบฑเบ™เบ—เบถเบเบœเบนเป‰เปƒเบŠเป‰
  • ICU เป€เบžเบทเปˆเบญเบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบชเบฒเบเบปเบ™

เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ•เปเปˆเป„เบ›.
เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบชเบฐเบšเบฑเบšเบ”เบฑเบ”เปเบเป‰เบชเบนเบ‡ เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš Google ะธ Google Mock เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เบเบฒเบ™โ€‹เบžเบฑเบ”โ€‹เบ—เบฐโ€‹เบ™เบฒโ€‹เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เบชเบญเบšโ€‹เบซเบปเบงโ€‹เบซเบ™เปˆเบงเบโ€‹.
เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ•เป‰เบญเบ‡เบเบฒเบ™เบเบฒเบ™เบ›เบฑเบšเบ•เบปเบงเป€เบžเบทเปˆเบญเปƒเบซเป‰เป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเบฎเบนเบšเปเบšเบšเบญเบปเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš SCOM.
เบญเบฑเบ”เบ•เบฒเบชเปˆเบงเบ™เบ‚เบญเบ‡ 1C เป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบงเบ—เบตเป€เบ›เบฑเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบงเบฒเบกเป€เบ‚เบฑเป‰เบกเปเบ‚เบ‡เบ—เบตเปˆเบ”เบตเป€เบฅเบตเบ”เบชเปเบฒเบฅเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบกเบฑเบ™. เบซเบผเบฒเบเป†เบœเบนเป‰เปƒเบŠเป‰เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป€เบ›เบตเบ”เป€เบœเบตเบเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ—เบตเปˆเบšเปเปˆเบ„เปˆเบญเบเปƒเบŠเป‰เบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”. เบžเบงเบเป€เบฎเบปเบฒเปเบเป‰เป„เบ‚เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เปเบฅเบฐเบžเบฐเบเบฒเบเบฒเบกเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒเบœเบนเป‰เบ‚เบฝเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”. เบ›เบฐเบชเบปเบšเบเบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš turns เบญเบญเบเบˆเบฐเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบผเบฒเบ.
เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ cURL ะธ libetpan เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบขเปˆเบฒเบ‡เป„เบงเบงเบฒเบ•เปเปˆเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡, เปเบ•เปˆ patch, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™ OpenSSL เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป€เบ„เบตเบเบˆเบฑเบ”เบเบฒเบ™เปƒเบซเป‰เบกเบฑเบ™เบ„เบทเบ™.

เบชเบฐเบซเบฅเบธเบš

เปƒเบ™โ€‹เบšเบปเบ”โ€‹เบ„เบงเบฒเบกโ€‹เบ—เบตเปˆโ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป„เบ”เป‰โ€‹เบชเปเบฒโ€‹เบžเบฑเบ”โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบซเบผเบฒเบโ€‹เบ”เป‰เบฒเบ™โ€‹เบ•เบปเป‰เบ™โ€‹เบ•เปโ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบžเบฑเบ”โ€‹เบ—เบฐโ€‹เบ™เบฒโ€‹เบ‚เบญเบ‡ 1Cโ€‹: เบงเบดโ€‹เบชเบฒโ€‹เบซเบฐโ€‹เบเบดเบ”โ€‹เป€เบงโ€‹เบ—เบตโ€‹. เปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบ‚เบญเบ‡เบšเบปเบ”เบ„เบงเบฒเบก, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเปเบฒเบœเบฑเบ”เบเบฑเบšเบšเบฒเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆ, เปƒเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.
เบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบ—เบปเปˆเบงเป„เบ›เบ‚เบญเบ‡เบเบปเบ™เป„เบเป€เบงเบ—เบตเบ•เปˆเบฒเบ‡เป†เบชเบฒเบกเบฒเบ”เบžเบปเบšเป„เบ”เป‰ เบ—เบตเปˆเบ™เบตเป‰.
เบซเบปเบงเบ‚เปเป‰เปƒเบ”เบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบปเบ™เปƒเบˆเปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”?

เปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบกเบทเบ–เบท 1C เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปเบ™เบงเปƒเบ”?
เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบฒเบเปƒเบ™เบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเป€เบงเบฑเบš?
เบซเบผเบทเบšเบฒเบ‡เบ—เบตเบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบชเบปเบ™เปƒเบˆเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบฅเบทเบญเบเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบญเบญเบเปƒเบซเบกเปˆ, เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบฅเบฐเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš?

เบ‚เบฝเบ™เปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™!

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

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