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

เบงเบดเบ—เบตเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ‚เบญเบ‡ Rust เบŠเปˆเบงเบเบ›เบฐเบขเบฑเบ”เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบˆเบฒเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ manipulating pointers เปเบฅเบฐเบ›เป‰เบญเบ‡เบเบฑเบ™เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบฅเบฐเบ”เบฑเบšเบ•เปˆเปเบฒ, เป€เบŠเบฑเปˆเบ™: เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบžเบทเป‰เบ™เบ—เบตเปˆเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบปเบ”เบ›เปˆเบญเบ, dereferencing null pointers, buffer overruns, เปเบฅเบฐเบญเบทเปˆเบ™เป†. เป€เบžเบทเปˆเบญเปเบˆเบเบขเบฒเบเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”, เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปเบฅเบฐเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบเบฒเบ™เป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบช, เป‚เบ„เบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบŠเบธเบ”เบชเบดเบ™เบ„เป‰เบฒ. เบ„เบฑเบ‡เป€เบเบฑเบš crates.io เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบžเบฒเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”.

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

เบ™เบฐเบงเบฑเบ”เบ•เบฐเบเปเบฒเบ•เบปเป‰เบ™เบ•เป:

  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš Generic Associated Types (GAT), เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบ™เบฒเบกเปเบเบ‡เบ›เบฐเป€เบžเบ”เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบ›เบฐเป€เบžเบ”เบญเบทเปˆเบ™, เปเบฅเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบ•เบปเบงเบชเป‰เบฒเบ‡เบ›เบฐเป€เบžเบ”เบ—เบตเปˆเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบ•เปˆเบฒเบ‡เป†. trait Foo { type Bar<'x> ; }
  • เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ "เปƒเบซเป‰ ... เบญเบทเปˆเบ™" เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเบงเบ”เป€เบšเบดเปˆเบ‡เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบฎเบนเบšเปเบšเบšเป‚เบ”เบเบเบปเบ‡เบžเบฒเบเปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡ "เปƒเบซเป‰" เปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบกเบฑเบเบ–เป‰เบฒเบฎเบนเบšเปเบšเบšเบšเปเปˆเบเบปเบ‡เบเบฑเบ™. เปƒเบซเป‰ Ok(count) = u64::from_str(count_str) else { panic!("เบšเปเปˆเบชเบฒเบกเบฒเบ”เปเบเบเบˆเบณเบ™เบงเบ™เป€เบ•เบฑเบก: '{count_str}'"); };
  • เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เปƒเบŠเป‰เบ„เปเบฒเบชเบฑเปˆเบ‡เบขเบธเบ”เป€เบžเบทเปˆเบญเบญเบญเบเบˆเบฒเบเบšเบฅเบฑเบญเบเบ—เบตเปˆเบกเบตเบŠเบทเปˆเบเปˆเบญเบ™เป„เบงเบญเบฑเบ™เบ„เบงเบ™, เป‚เบ”เบเปƒเบŠเป‰เบŠเบทเปˆเบšเบฅเบฑเบญเบ (เบ›เป‰เบฒเบเบŠเบทเปˆ) เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบšเบฅเบฑเบญเบเบ—เบตเปˆเบˆเบฐเบขเบธเบ”. เปƒเบซเป‰เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš = 'block: { do_thing(); เบ–เป‰เบฒ condition_not_met() { break 'block 1; } do_next_thing(); เบ–เป‰เบฒ condition_not_met() { break 'block 2; } do_last_thing(); 3};
  • เบชเปเบฒเบฅเบฑเบš Linux, เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ”เบตเบšเบฑเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ (split-debuginfo), เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเปเบžเบฅเบฐเบ•เบฐเบŸเบญเบก macOS เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เบเบฒเบ™เบฅเบฐเบšเบธเบ•เบปเบงเป€เบฅเบทเบญเบ "-Csplit-debuginfo=unpacked" เบˆเบฐเบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™ debuginfo เปƒเบ™เบฎเบนเบšเปเบšเบš DWARF เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป„เบŸเบฅเปŒเบงเบฑเบ”เบ–เบธเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบซเบผเบฒเบเป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบ™เบฒเบกเบชเบฐเบเบธเบ™ ".dwo". เบเบฒเบ™เบฅเบฐเบšเบธ "-Csplit-debuginfo=packed" เบˆเบฐเบชเป‰เบฒเบ‡เบŠเบธเบ”เบ”เบฝเบงเปƒเบ™เบฎเบนเบšเปเบšเบš ".dwp" เป€เบŠเบดเปˆเบ‡เบฅเบงเบกเป€เบญเบปเบฒเบ‚เปเป‰เบกเบนเบ™เบ”เบตเบšเบฑเบเบ—เบฑเบ‡เปเบปเบ”เบชเปเบฒเบฅเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™. เป€เบžเบทเปˆเบญเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ”เบตเบšเบฑเบเป‚เบ”เบเบเบปเบ‡เป€เบ‚เบปเป‰เบฒเปƒเบ™เบชเปˆเบงเบ™ .debug_* เบ‚เบญเบ‡เบงเบฑเบ”เบ–เบธ ELF, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เบ•เบปเบงเป€เบฅเบทเบญเบ "-Csplit-debuginfo=off".
  • เบžเบฒเบเบชเปˆเบงเบ™เปƒเบซเบกเปˆเบ‚เบญเบ‡ API เป„เบ”เป‰เบ–เบทเบเบเป‰เบฒเบเป„เบ›เบขเบนเปˆเปƒเบ™เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡, เบฅเบงเบกเบ—เบฑเบ‡เบงเบดเบ—เบตเบเบฒเบ™เปเบฅเบฐเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฑเบเบชเบฐเบ™เบฐเบ•เปˆเบฒเบ‡เป†เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡:
    • std::backtrace::backtrace
    • เบœเบนเบเบกเบฑเบ”::as_ref
    • std::io::read_to_string
    • <*const T>::cast_mut
    • <*mut T>::cast_const
  • เบ„เบธเบ™โ€‹เบฅเบฑเบโ€‹เบชเบฐโ€‹เบ™เบฐ "constโ€‹"โ€‹, เป€เบŠเบดเปˆเบ‡โ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เบ„เบงเบฒเบกโ€‹เป€เบ›เบฑเบ™โ€‹เป„เบ›โ€‹เป„เบ”เป‰โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เปƒเบ™โ€‹เบชเบฐโ€‹เบžเบฒเบšโ€‹เบเบฒเบ™โ€‹เปƒเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เปเบ—เบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบ›เบฑเบ™โ€‹เบ„เบปเบ‡โ€‹เบ—เบตเปˆโ€‹, เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เปƒเบ™โ€‹เบซเบ™เป‰เบฒโ€‹เบ—เบตเปˆ <*const T&>::offset_from เปเบฅเบฐ <*mut T>::offset_from
  • เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบชเบธเบ”เบ—เป‰เบฒเบเบ‚เบญเบ‡เบเบฒเบ™เป‚เบญเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เป‚เบ›เป‚เบ•เบ„เบญเบ™ LSP (Language Server Protocol) เบเบฑเบš rust-analyzer, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบฅเป‰เบฒเบชเบฐเป„เบซเบกเบ‚เบญเบ‡ Rust Language Server (RLS) เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบฝเบ™เปเบ—เบ™เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ stub เบ—เบตเปˆเบญเบญเบเบ„เปเบฒเป€เบ•เบทเบญเบ™เบ—เบตเปˆเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบ›เปˆเบฝเบ™เป„เบ›เปƒเบŠเป‰ rust. - เบ™เบฑเบโ€‹เบงเบดโ€‹เป€เบ„เบฒเบฐโ€‹.
  • เป€เบกเบทเปˆเบญเบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™, เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ inline เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบฅเบฐเบ”เบฑเบšเบ›เบฒเบ™เบเบฒเบ‡ MIR เปเบกเปˆเบ™เป€เบ›เบตเบ”เปƒเบŠเป‰, เป€เบŠเบดเปˆเบ‡เป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ‚เบญเบ‡เปเบžเบฑเบเป€เบเบฑเบ” crate เบ›เบปเบเบเบฐเบ•เบดเป‚เบ”เบ 3-10%.
  • เป€เบžเบทเปˆเบญเป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ•เบฒเบกเบเบณเบ™เบปเบ”เป€เบงเบฅเบฒ, เบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบŠเบธเบ”เบชเบดเบ™เบ„เป‰เบฒเบชเบฐเปœเบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบฅเบฝเบ‡เบงเบฝเบเบ—เบตเปˆเบฅเปเบ–เป‰เบฒเบขเบนเปˆเปƒเบ™เบ„เบดเบง.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบเบฒเบ™เบชเปเบฒเบžเบฒเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบฒเบชเบฒ Rust เบ—เบตเปˆ Volvo เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบญเบปเบ‡เบ›เบฐเบเบญเบšเบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เปˆเบฒเบงเบชเบฒเบ™เบฅเบปเบ”เบเบปเบ™เบชเบฒเบกเบฒเบ”เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™. เบšเปเปˆเบกเบตเปเบœเบ™เบ—เบตเปˆเบˆเบฐเบ‚เบฝเบ™เบ„เบทเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเปเบฅเบฐเบ—เบปเบ”เบชเบญเบšเปƒเบ™ Rust, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบฅเบฐเบซเบฑเบ”เปƒเบซเบกเปˆ, Rust เปเบกเปˆเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบ„เบธเบ™เบ™เบฐเบžเบฒเบšเบ”เป‰เบงเบเบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเบ•เปˆเปเบฒ. เบเบธเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เป€เบเบตเบ”เบ‚เบตเป‰เปเป‰เบฝเบ‡เบเปเปˆเป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบขเบนเปˆเปƒเบ™เบชเบฐเบกเบฒเบ„เบปเบกเบฅเบปเบ”เบเบปเบ™ AUTOSAR (AUTomotive Open System ARchitecture) เปเบฅเบฐ SAE (เบชเบฐเบกเบฒเบ„เบปเบกเบงเบดเบชเบฐเบงเบฐเบเบญเบ™เบเบฒเบ™เบเบปเบ™).

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, David Kleidermacher, VP of Engineering at Google, เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เปเบ›เบžเบฒเบชเบฒ Rust เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เป€เบงเบ—เบต Android เป€เบžเบทเปˆเบญเบˆเบฑเบ”เบเบฒเบ™เบฅเบฐเบซเบฑเบ”เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ Rust เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” DNS over HTTPS protocol, เปƒเบ™ stack เบชเปเบฒเบฅเบฑเบš. UWB- เบŠเบดเบš (Ultra-Wideband) เปเบฅเบฐเปƒเบ™เบเบญเบš virtualization (Android Virtualization Framework) เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบŠเบดเบš Tensor G2. เบชเปเบฒเบฅเบฑเบš Android, stacks เปƒเบซเบกเปˆเบชเปเบฒเบฅเบฑเบš Bluetooth เปเบฅเบฐ Wi-Fi เบเบฑเบ‡เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ, เบ‚เบฝเบ™เปƒเบซเบกเปˆเปƒเบ™ Rust. เบเบธเบ”เบ—เบฐเบชเบฒเบ”เบ—เบปเปˆเบงเป„เบ›เปเบกเปˆเบ™เบเบฒเบ™เบเป‰เบฒเบงเบซเบ™เป‰เบฒเบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž, เบ—เปเบฒเบญเบดเบ”เป‚เบ”เบเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบŠเบญเบšเปเบงเบ—เบตเปˆเบšเปเปˆเบ›เบญเบ”เป„เบžเปเบฅเบฐเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบชเบธเบ”เป„เบ›เบชเบนเปˆ Rust, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ‚เบฐเบซเบเบฒเบเป„เบ›เบชเบนเปˆเบฅเบฐเบšเบปเบšเบเปˆเบญเบเบญเบทเปˆเบ™เป†เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบžเบงเบเบกเบฑเบ™. เบ›เบตเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, Rust เป„เบ”เป‰เบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบžเบฒเบชเบฒเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบงเบ—เบต Android.

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

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