一天什么时候最热| 放的偏旁是什么| 每天半夜两三点醒是什么原因| 条索灶是什么意思| 血清肌酐高说明什么问题| 水瓜壳煲水有什么功效| 孕吐喝什么水可以缓解| 8月1日是什么节日| 人生只剩归途什么意思| 为什么明星整牙那么快| 每天吃三颗红枣有什么好处| 筋膜炎挂什么科| 1月22日什么星座| 80年属什么的| 万劫不复什么意思| 病案首页是什么| 白发缺少什么维生素| 印劫是什么意思| 什么时候夏至| 大便感觉拉不干净什么原因| 男性结扎是什么意思| 醛固酮高有什么危害| 有什么寓言故事| 什么茶降火| 穆斯林为什么不吃猪肉| 什么止疼药见效最快| 梦见老公回来了是什么征兆| 山东简称为什么是鲁不是齐| 移民澳洲需要什么条件| 眼睛胀痛是什么原因| tdp是什么意思| 最大的海是什么海| 冷面是什么面| x什么意思| 用你的手解我的锁是什么歌| 8月6号是什么星座| 向日葵代表什么| 什么是心律失常| 不以为然什么意思| 定增是什么意思| 结晶是什么| 移居改姓始为良是什么意思| 这是什么字| 医生为什么喜欢开地塞米松| 正月开什么花| 艾绒是什么| 脚指麻木是什么病先兆| 小孩睡不着觉是什么原因| 新疆人为什么不吃猪肉| 山峦是什么意思| 阳历六月是什么星座| 梦见自己的车丢了是什么意思| 阴虚火旺吃什么| 胃酸烧心吃什么药可以根治| 再接再厉后面接什么好| 大姨妈来了不能吃什么水果| 胃胀气吃什么药好| 手串14颗代表什么意思| 手指麻木吃什么药| 肾结石是什么原因导致的| 1979年是什么年| 杏仁有什么功效和作用| 哑巴是什么原因造成的| 甲钴胺片是治什么的| tvb是什么| 撞车了打什么电话| 纳是什么| ssa抗体阳性说明什么| 什么水果最贵| 什么是线粒体| 遗精是什么原因引起的| 脚指麻木是什么病先兆| 11月18号是什么星座| 崩漏下血是什么意思| 唯有读书高的前一句是什么| 免疫力和抵抗力有什么区别| 红楼梦是一部什么小说| 糖尿病早期什么症状| 间隙是什么意思| 万丈深渊是什么意思| 贴切是什么意思| 吃什么东西可以减肥| 口嫌体正直是什么意思| 汽车拉缸有什么现象| 生完孩子可以吃什么水果| 乳腺增生吃什么药效果好| 碱性磷酸酶偏低是什么意思| 主动脉硬化吃什么药好| 剁椒鱼头是什么鱼头| 一什么无什么| 尿道炎症状吃什么药| 小布丁是什么意思| 尿蛋白十一是什么意思| 战略支援部队是干什么的| 复配是什么意思| 遣返回国有什么后果| 反流性食管炎吃什么药| 木节念什么| 为什么订婚后容易分手| 叫舅舅的是什么关系| 血常规是检查什么的| 什么叫慢性非萎缩性胃炎| 跃跃欲试什么意思| 出的汗是凉的什么原因| kiss什么意思| 苹果手机用的什么系统| 脸颊两边长斑是什么原因| 精液发黄是什么原因引起的| 甲状腺三项检查什么| 什么时辰出生的人命好| pd是什么病| 冰清玉洁是什么意思| 建议随诊是什么意思| 为什么会胎停| 肺气肿吃什么食物好| 希字五行属什么| 感性的人是什么意思| 铎读什么| ex是什么的缩写| 流产后吃什么| r一谷氨酰转移酶高说明什么| 病毒性疣是什么病| 夫妻肺片有什么材料| 嫌恶是什么意思| 精神小伙是什么意思| 户口是什么意思| 骨强度不足是什么原因| 附睾炎吃什么药最有效| 脑白质稀疏什么意思| npv是什么| 属羊人佩戴什么旺自己| 梦见蜜蜂是什么预兆| 右枕前位是什么意思| ctp是什么意思| 耳朵旁边长痘痘是什么原因| 占有欲强什么意思| 红皮鸡蛋和白皮鸡蛋有什么区别| 斜视是什么症状| 红斑狼疮复发的症状是什么| 红薯不能和什么食物一起吃| 格林巴利综合症是什么病| 喝酒胃出血是什么症状| 心电图是什么| 诺如病毒感染吃什么药| 麦穗是什么牌子| 白葡萄酒配什么食物| 头皮软绵绵的什么原因| 拔完智齿需要注意什么| 女性做B超挂什么科| 排卵日是什么时候| 7.12什么星座| 月经老是提前是什么原因| 脸皮最厚是什么生肖| hpv有什么症状吗| 小孩老是打嗝是什么原因| fl是胎儿的什么| 北方五行属什么| 皮卡丘站起来变成了什么| 什么叫继发性高血压| 防晒霜什么牌子好| 企业背书是什么意思| 江西特产有什么| 天公作美是什么生肖| 同房后出血是什么原因| 崖柏是什么| 手指甲月牙代表什么| 妙哉妙哉是什么意思| 暴毙是什么意思| 大拇指抖动是什么原因引起的| 考试前吃巧克力有什么好处| 绞股蓝有什么功效| 牙髓炎吃什么药| 粑粑是什么意思| 疤痕憩室什么意思| 1999年出生的属什么| 葡萄像什么| pussy是什么意思| 罗汉果有什么功效| r值是什么意思| 梦到吃螃蟹是什么意思| 刚怀孕吃什么对胎儿好| 什么是尿酸高| 肾囊肿是什么病| 1年是什么朝代| 口腔溃疡吃什么好的快| 冰糖是什么做的| 局灶是什么意思| 胎盘做成胶囊吃有什么好处| 吃什么去肝火| 良人什么意思| 夏天适合喝什么养生茶| vt什么意思| aigner是什么牌子| society是什么意思| 政协主席是什么级别| 布洛芬起什么作用| air是什么牌子| 白细胞高是什么原因| 七一年属什么生肖| 胃疼做什么检查| 临床医生是什么意思| 儿童抗o高会引起什么病| 药流后需要注意什么| 血糖高去医院挂什么科| 有的没的是什么意思| 鬼迷心窍是什么意思| 摩羯是什么| 回民不吃什么| 为什么摩羯女颜值都高| 事倍功半的意思是什么| 鹦鹉喜欢吃什么东西| 什么生肖怕老婆| 过度是什么意思| 喝黄瓜汁有什么好处| 小便很臭是什么原因| hbsag阳性是什么意思| mri是什么检查项目| 新股配号数量是什么意思| 梦见种花生是什么意思| 鬼节会开什么生肖| 断档是什么意思| 吊销是什么意思| 榴莲什么样的好| 吃什么补充黄体酮| 富士康是做什么的| 玫瑰和月季有什么区别| 富贵竹开花什么预兆| 胸胀疼是什么原因| 取痣用什么方法最好| 7月28日是什么星座| 阴道口痛什么原因| 妇科活检是什么意思| 滴虫病女性有什么症状| 什么炖鸡好吃| 是谁送你来到我身边是什么歌| 温字五行属什么| 他克莫司软膏治疗什么| 身体安康什么意思| 脾虚的人有什么症状| 书五行属什么| 心慌手抖是什么原因| 脾胃虚弱有什么症状| 小腿浮肿是什么原因女性| 狮子的天敌是什么动物| 糖尿病是什么症状| 脚气去医院挂什么科| 益生菌适合什么人群吃| 教师节应该送老师什么花| 小孩经常流鼻血是什么原因| 喝什么可以解酒| 什么时候打耳洞最好| 十月份是什么季节| 量贩式ktv是什么意思| 什么开什么笑| www是什么意思| 南浦大桥什么时候建成| 血糖高吃什么中药好| 女人高潮是什么感觉| 邪犯少阳证是什么意思| 肾衰竭是什么症状| 广东有什么城市| 广义货币m2是什么意思| 地中海贫血是什么意思| 苋菜与什么食物相克| 百度Spring til indhold

张峰:虚拟现实有望成为众多创新应用的基础平台

Fra Wikipedia, den frie encyklop?di
For alternative betydninger, se Rust (flertydig). (Se ogs? artikler, som begynder med Rust)
百度 11月16号是什么星座

Rust er et multi-paradigme programmeringssprog skabt af Graydon Hoare, der er omhyggeligt designet til at levere h?j ydeevne og it-sikkerhed.

Sproget er s?rligt kendt for sin evne til at h?ndtere samtidighed p? en sikker m?de, hvilket minimerer risikoen for k?rselsfejl. Rust svarer syntaktisk til C og C++, men kan garantere hukommelsessikkerhed ved at bruge en l?nekontrol til at validere referencer. Man kan dog komme uden om dette ved f.eks. at bruge et s?kaldt 'unsafe' keyword, hvilket giver mere fleksibilitet, men ogs? ?ger programm?rens ansvar for korrekt hukommelsesstyring, da det tillader kode, der potentielt kan bryde hukommelsessikkerheden [1].

If?lge Google-udviklere er Rust bedre end C++ og Go, da udviklerne bliver dobbelt s? effektive.[2]

If?lge USAs CISA-chef Jen Easterly er d?rlig softwarekvalitet skyld i verdens cybersikkerhedsproblemer.[3][4] CISA anbefaler at softwareudviklere skriver deres computerprogrammer i hukommelsessikre programmeringssprog som fx Rust, Python, C#, Go, Swift eller Java - is?r Rust fremh?ves som et godt hukommelsessikkert programmeringssprog.[5][6] USAs DARPA foresl?r at konvertere C-kode til Rust-kode via maskinl?ring. Projektet kaldes TRanslating All C TO Rust - kort TRACTOR.[7]

I 2006 besluttede Graydon Hoare, en 29-?rig computerprogramm?r, der arbejdede for Mozilla, at designe et nyt programmeringssprog. Han blev inspireret af en frustrerende oplevelse med en elevator, der konstant gik i stykker p? grund af softwarefejl. Hoare vidste, at mange af disse fejl skyldtes problemer med, hvordan et program bruger hukommelse. Han besluttede sig derfor at skabe et sprog, der kunne skrive hurtig kode uden hukommelsesbugs. Rust har f?et sit navn efter en gruppe af bem?rkelsesv?rdigt h?rdf?re svampe, Rustsvampe, som if?lge Hoare er "over-engineered for survival" [8].

Over et halvandet ?rti senere er Rust blevet et af de mest popul?re programmeringssprog.

Rust blev officielt sponsoreret af Mozilla i 2009.[9] Sproget ville v?re open source, og kun de mennesker, der bidrog til dets udvikling, ville have ansvar for det. Mozilla var dog parat til at kickstarte det ved at finansiere projektet [8]. I l?bet af de f?lgende 10 ?r hyrede Mozilla mere end et dusin ingeni?rer til at arbejde fuldtid p? Rust [8].

I 2015 blev den f?rste stabile version af Rust udgivet[10], og det blev hurtigt popul?rt blandt store virksomheder. I 2020 afsl?rede Dropbox en ny version af deres "sync engine", alts? dét som synkroniserer filer i skyen, der var omskrevet til Rust [11]. I samme ?r omskrev Discord deres "Read States" service, en kritisk service der holder styr p?, hvilke kanaler og beskeder brugere har l?st, til Rust, hvilket resulterede i en markant forbedring [12] og derved gjorde systemet 10 gange hurtigere [8]. Amazon Web Services, som leverer cloud computing-platforme og API'er efter behov, har ogs? fundet, at Rust kan hj?lpe dem med at skrive sikrere, hurtigere kode [13].

I Stack Overflows udviklerunders?gelse fra 2023, som de afholder hvert ?r, er Rust blevet k?ret som det mest beundrede programmeringssprog, hvor over 80% af de udviklere, der har anvendt sproget, har udtrykt et ?nske om at forts?tte med det i det kommende ?r [14]. Dette st?r i skarp kontrast til det mindst attraktive sprog, MATLAB, hvor under 20% af de udviklere, der har brugt det, ?nsker at forts?tte med det i det f?lgende ?r [14]. Faktisk har Rust de sidste 7 ?r blevet k?ret til at v?re det mest beundrede programmeringssprog if?lge samme unders?gelse [8].

Sikkerhedsforanstaltninger

[redigér | rediger kildetekst]

I Rust beregner compileren, hvorn?r en variabel ikke l?ngere er tilg?ngelig, og n?r det sker, inds?tter compileren kode til frigivelse af variablens hukommelse. Variabler er som udgangspunkt uforanderlige (immutable), hvilket betyder, at deres v?rdi ikke kan ?ndres, n?r de f?rst er blevet tildelt. Hvis en variabel skal kunne ?ndres, kan den defineres som foranderlig (mutable) ved at bruge 'mut' n?gleordet foran variabelnavnet.

N?r en funktion modtager en variabel som parameter, overtager den som udgangspunkt ejerskabet, medmindre parameteren er en reference. Ved at definere parameteren som en reference, 'l?ner' funktionen variablen uden at overtage ejerskabet.

En reference giver som udgangspunkt kun l?seadgang, men det er muligt at definere foranderlige (mutable) referencer, der tillader opdatering. Rust tillader kun én foranderlig reference til en bestemt data i en bestemt r?kkevidde, hvilket hj?lper med at forhindre 'data race' betingelser. En 'data race' opst?r, n?r to eller flere tr?de i en multithreaded applikation samtidigt fors?ger at l?se fra og skrive til den samme hukommelsesplads uden passende synkronisering. Desuden tillader Rust flere uforanderlige (immutable) referencer, men ikke en mutable reference samtidig med nogen immutable referencer. Dette er ogs? en del af Rusts regler for "aliasing" og "mutability", som sikrer mod fejl, hvor data ?ndres eller slettes under l?sning.

Programstruktur

[redigér | rediger kildetekst]

Rust-programmer er typisk struktureret i mange funktioner, der kalder hinanden. Dette hj?lper med at holde kode organiseret og genanvendelig.

Rust underst?tter ogs? moduler, som er en m?de at gruppere relaterede definitioner, s?som funktioner, strukturer (datastrukturer, der kan indeholde forskellige typer data) og tr?k (en m?de at definere f?lles adf?rd p?), sammen. Som standard er alle definitioner i et modul private, hvilket betyder, at de kun kan tilg?s inden for det modul, de er defineret i. Hvis en definition skal v?re tilg?ngelig uden for det modul, det er defineret i, kan det g?res offentligt ved hj?lp af n?gleordet 'pub'.

I st?rre Rust-programmer kan moduler v?re indlejret i hinanden for at skabe en hierarkisk struktur. Dette kan hj?lpe med at organisere kode i logiske grupper. Desuden kan moduler flyttes ud i deres egne filer for at g?re koden mere overskuelig og nemmere at vedligeholde.

Her er et eksempel p?, hvordan moduler kan bruges i Rust:

// Definerer et modul med navnet 'greetings'
mod greetings {
    // G?r 'hello' funktionen offentlig med 'pub' n?gleordet
    pub fn hello() {
        println!("Hello, world!");
    }

    // 'goodbye' funktionen er privat og kan kun tilg?s inden for 'greetings' modulet
    fn goodbye() {
        println!("Goodbye, world!");
    }
}

// Hovedfunktionen
fn main() {
    // Kalder den offentlige 'hello' funktion fra 'greetings' modulet
    greetings::hello();
}

I dette eksempel er 'hello'-funktionen defineret i 'greetings'-modulet og gjort offentlig, s? den kan kaldes fra 'main'-funktionen. Derimod er 'goodbye'-funktionen privat og kan kun kaldes inden for 'greetings'-modulet.

Her er et simpelt eksempel p? et CLI script skrevet i Rust, hvor der genereres et tilf?ldigt tal ved hj?lp af rand-programbiblioteket.

// Her importeres 'rand' biblioteket, som muligg?r generering af tilf?ldige tal.
use rand::Rng;

// Hovedfunktionen, hvor programmet starter.
fn main() {
    // Kalder 'generate_random_number' funktionen og gemmer resultatet i et uforanderligt variabel.
    let random_number = generate_random_number();

    // Her skrives en linje til konsollen.
    println!("Det tilf?ldige tal er: {}", random_number);
}

// Funktion der genererer et tilf?ldigt tal mellem 1 og 10.
fn generate_random_number() -> i32 {
    // Opretter en ny tilf?ldig nummergenerator.
    let mut rng = rand::thread_rng();

    // Genererer et tilf?ldigt tal mellem 1 og 10
    // Der skrives ikke '1..10', men i stedet '1..11', fordi den ?vre gr?nse, 11, ikke er inkluderet
    // Alternativt kan man bruge '1..=10' for at inkludere slutv?rdien.
    let random_number = rng.gen_range(1..11);

    // Returnerer det tilf?ldige tal.
    return random_number;
}
  1. ^ The Rust Programming Language - Unsafe Rust
  2. ^ 31 Mar 2024, theregister.com: Rust developers at Google are twice as productive as C++ teams. Code shines up nicely in production, says Chocolate Factory's Bergstrom, backup Citat: "..."When we've rewritten systems from Go into Rust, we've found that it takes about the same size team about the same amount of time to build it," said Bergstrom. "That is, there's no loss in productivity when moving from Go to Rust. And the interesting thing is we do see some benefits from it. "So we see reduced memory usage in the services that we've moved from Go ...and we see a decreased defect rate over time in those services that have been rewritten in Rust – so increasing correctness."..."In every case we've seen a decrease by more than 2x in the amount of effort required to both build the services in Rust as well as maintain and update those services written in Rust," he said...A bit more than half of his developers say that Rust is easier to review, according to Bergstrom..."
  3. ^ 2025-08-06, version2.dk: USA’s cyberchef: D?rlige software-udviklere er den st?rste trussel mod sikkerheden. CISA-chefen Jen Easterly skoser teknologileverand?rer for at levere produkter med indbyggede sikkerhedsproblemer, der ?bner d?rene for cyberangreb, backup Citat: "...?Vi har ikke et cybersikkerhedsproblem – vi har et softwarekvalitetsproblem. Vi har ikke brug for flere sikkerhedsprodukter – vi har brug for mere sikre produkter,? sagde chefen for den amerikanske cybersikkerhedsmyndighed CISA (Cybersecurity and Infrastructure Security Agency) Jen Easterly p? en konference onsdag if?lge The Register. ?Sandheden er: Teknologileverand?rer er de personer, der bygger problemer? ind i deres produkter, som derefter ??bner d?rene for skurke, s? de kan angribe deres ofre.?..."
  4. ^ 2025-08-06, theregister.com: CISA boss: Makers of insecure software are the real cyber villains. Write better code, urges Jen Easterly. And while you're at it, give crime gangs horrible names like 'Evil Ferret', backup
  5. ^ 28 Jun 2024, theregister.com: CISA looked at C/C++ projects and found a lot of C/C++ code. Wanna redo any of it in Rust? So, so many lines of memory-unsafe routines in crucial open source, and unsafe dependencies, backup Citat: "...Memory-safe languages, like C#, Go, Java, Python, Rust, and Swift, handle memory management for the developer, reducing the opportunity to make memory errors...The 2015 stable release of Rust, a language with strong memory-safety guarantees, gave tech firms a non-aligned systems language they could use to avoid the problems with memory-unsafe code. The competitive implications of adopting languages with strong corporate associations, like C# (Microsoft), Go (Google), Swift (Apple), or Java (Oracle) may have helped make Rust more appealing. But it took a few years for Rust to mature and catch on..."
  6. ^ June 26, 2024, cisa.gov: Exploring Memory Safety in Critical Open Source Projects, backup Citat: "...We encourage others to build on this analysis to further expand our collective understanding of memory-unsafety risk in OSS, evaluate approaches—such as targeted rewrites of critical components in memory-safe languages—to reducing this risk, and to continue efforts to drive risk-reducing action by software manufacturers. For those considering further investment in memory safe programming practices, we recommend two references: The Case for Memory Safe Roadmaps and the December 2023 report on memory safety by the Technical Advisory Council of CISA’s Cybersecurity Advisory Committee.37..."
  7. ^ 3 Aug 2024, theregister.com: DARPA suggests turning old C code automatically into Rust – using AI, of course. Who wants to make a TRACTOR pull request?, backup Citat: "...The term stands for TRanslating All C TO Rust. It's a DARPA project that aims to develop machine-learning tools that can automate the conversion of legacy C code into Rust. The reason to do so is memory safety. Memory safety bugs, such buffer overflows, account for the majority of major vulnerabilities in large codebases. And DARPA's hope is that AI models can help with the programming language translation, in order to make software more secure..."I think all languages are about trade-offs, but certainly at the kernel-level it makes sense to move part of the code to Rust," he said..."
  8. ^ a b c d e Thompson, C. (2023, 14. februar). MIT Technology Review.
  9. ^ Cimpanu, C. (2017, 5. februar). Bleeping Computer.
  10. ^ The Rust Core Team. (2015, 15. maj). Announcing Rust 1.0. Rust Blog.
  11. ^ Jayakar, S. (2020, 9. marts). Rewriting the heart of our sync engine. Dropbox Tech Blog.
  12. ^ Howarth, J. (2020, 4. februar). Why Discord is switching from Go to Rust. Discord Blog.
  13. ^ Taft, D. K. (2019, 24. oktober). AWS gets behind Rust programming language. TheServerSide.com.
  14. ^ a b Stack Overflow - 2023 Developer Survey.
Spire
Denne artikel om sprog er en spire som b?r udbygges. Du er velkommen til at hj?lpe Wikipedia ved at udvide den.
能量守恒是什么意思 半夜口渴是什么原因 人类的祖先是什么生肖 刮宫和清宫有什么区别 胃经当令是什么时辰
良字少一点是什么字 甲减是什么原因引起的 护士最高职称是什么 小腿前侧肌肉叫什么 男人吃什么补肾
mcg是什么意思 云南属于什么地区 阳历6月21日是什么星座 外感风热是什么意思 去医院检查艾滋病挂什么科
唐氏综合症是什么原因 前列腺钙化灶是什么意思 福晋是什么意思 moose是什么意思 狗狗湿疹用什么药膏最有效
腹部ct能检查出什么hcv9jop5ns3r.cn 什么是健康管理hcv8jop9ns7r.cn 睡鼠吃什么0297y7.com jones是什么意思hcv8jop3ns5r.cn 23度穿什么衣服合适hcv8jop8ns7r.cn
六小龄童的真名叫什么hcv7jop7ns4r.cn 刀鱼和带鱼有什么区别bjhyzcsm.com 医院规培生是什么意思hcv7jop9ns9r.cn saa是什么检查hcv9jop8ns2r.cn 玄凤鹦鹉吃什么hcv9jop2ns8r.cn
肝阳虚吃什么中成药adwl56.com 和女生聊天聊什么zhongyiyatai.com 蜂窝组织炎是什么病hcv8jop1ns9r.cn 离歌是什么意思jasonfriends.com 吃亏是什么意思hcv9jop0ns5r.cn
80年五行属什么hcv8jop5ns2r.cn 端着是什么意思hcv7jop6ns8r.cn 头晕做什么检查最准确hcv7jop6ns5r.cn acb是什么意思hcv9jop4ns0r.cn 虾不能跟什么一起吃bfb118.com
百度