Rust ja C ++: koos integreerimise parema programmeerimise teel
Rust ja C ++: koos integreerimise parema programmeerimise teel
Rust Foundation avaldas hiljuti olulise dokumendi GitHubi kohta, mis valgustab programmeerimiskeelte koostoime väljakutseid Rust ja C ++. Sihtasutus kirjeldab nii lühiajalisi kui ka pikaajalisi lahendusi nende kahe programmeerimiskeele vahel paremaks koostalitlusvõimeks. See on eriti asjakohane, kuna Rust, ehkki see on end süsteemiga seotud programmeerimisel kindlaks teinud, vastab sageli olemasolevatele C ++ rakendustele.
Rusti ja C ++ koostalitlusvõime on keskne teema, eriti manustatud süsteemide või muude ressurssidega piiratud keskkondade arendamisel. Rusti fondi nimetatud rakendused on näited praktika jaoks: C ++ süsteemid, mis rakendavad uusi funktsioone rooste, roostepõhiste süsteemide abil, mis kasutavad olemasolevat C ++ koodi, ja süsteeme, mis kasutavad mitut programmeerimiskeelt. C ++ on palju pikem lugu, mistõttu peavad paljud projektid sageli töötama olemasoleva C ++ koodiga.
Integreerimise väljakutsed
Rooste ja C ++ tavalise kasutamise peamine takistus on tööriistaahela puudumine, mis võimaldab C ++ ja roostekoodil seguneda samasse faili. Kahe programmeerimiskeeli ühendamiseks on praegu vaja FFI-põhist (võõrfunktsiooni liides) lähenemisviisi. Tavaliselt juhtub see C-i rakenduse binaarse liidese (ABI) kaudu, mis on stabiilsem ja platvormist sõltumatum kui keerukam C ++-ABIS.
Veel üks suur probleem on see, et paljud Rusti turvafunktsioonid on C -ga suhtlemisel suuresti kadunud, seetõttu on see tõsine väljakutse arendajatele, kes soovivad kasutada Rusti tugevaid turvameetmeid, suheldes samal ajal C -ga. Rust Foundation kirjeldab C -d kui FFI integreerimisel "Lingua Franca" ja ühise suhtluse aluse loomise raskusi on konkreetsete rooste omaduste kasutamine tugevalt piiratud.
paranemise strateegiad
Rusti sihtasutus on määratlenud kolm keskset strateegiat oma C ++/Rusti koostalitlusvõime probleemide avalduses, et optimeerida nende keelte vahelist koostalitlusvõimet. Esiteks kavatseb sihtasutus täiustada tööriistu ja lahendada Rustiprojekti põhiprobleeme, mis muudavad integratsiooni keerukamaks.
Lisaks on eesmärk leida konsensus strateegia osas, tuvastada ja rakendada rooste jaoks vajalikke muudatusi koostalitlusvõime suurendamiseks. Teine oluline punkt on koostöö C ++ kogukonna ja C ++ standardkomiteega ühise turvalisuse ja tulemuslikkuse eesmärkide saavutamiseks.
Need lähenemisviisid tulevad ajal, mil Google andis 2024. aasta veebruaris Rust Foundationi helde toetuse.
Lisateabe saamiseks saab lugeda C ++/Rust Probleem avalduse üksikasju ja Rust Foundation teadetes. Need algatused võivad potentsiaalselt mõjutada tarkvara arendamist ja integreerimist tulevikus, eriti valdkondades, kus jagatakse rooste ja C ++.
Kommentare (0)