Rust a C ++: Spoločne na ceste k lepšej integrácii programovania
Rust a C ++: Spoločne na ceste k lepšej integrácii programovania
Nadácia Rust nedávno uverejnila dôležitý dokument o GitHubovi, ktorý osvetľuje výzvy v interakcii medzi programovacími jazykmi Rust a C ++. Nadácia načrtáva krátkodobé aj dlhodobé riešenia pre zlepšenú interoperabilitu medzi týmito dvoma programovacími jazykmi. Toto je obzvlášť dôležité, pretože hrdza, hoci sa etablovala v programovaní súvisiacich s systémom, často spĺňa existujúce aplikácie C ++.
Interoperabilita medzi Rustom a C ++ je ústrednou témou, najmä pri vývoji zabudovaných systémov alebo iných prostredí obmedzených zdrojov. Aplikácie uvedené Nadáciou Rust sú príklady pre prax: systémy C ++, ktoré implementujú nové funkcie so systémami Rust, Rustom, ktoré používajú existujúci kód C ++, a systémy, ktoré používajú niekoľko programovacích jazykov. C ++ má oveľa dlhší príbeh, a preto mnoho projektov musí často pracovať s existujúcim kódom C ++.
Výzvy integrácie
Hlavnou prekážkou v bežnom používaní Rust a C ++ je nedostatok nástrojov, ktorý umožňuje, aby sa kód C ++ a hrdze miešal v rovnakom súbore. Na prepojenie týchto dvoch programovacích jazykov je v súčasnosti potrebný prístup založený na FFI (zahraničné funkcie). Zvyčajne sa to deje prostredníctvom binárneho rozhrania aplikácie (ABI) C, ktoré je stabilnejšie a viac nezávislé od platformy ako zložitejšie C ++-ABI.
Ďalším veľkým problémom je to, že mnoho bezpečnostných funkcií spoločnosti Rust sa do značnej miery stráca, keď interakcia s C. V dôsledku toho je to vážna výzva pre vývojárov, ktorí chcú používať silné bezpečnostné opatrenia spoločnosti Rust a zároveň interagovať s C súčasne. Nadácia hrdze opisuje C ako „lingua franca“ pre integráciu FFI a ťažkosti s vytvorením spoločného komunikačného základu je použitie konkrétnych hrdze vážne obmedzené.
stratégie na zlepšenie
Nadácia Rust Foundation definovala tri centrálne stratégie vo svojom vyhlásení „C ++/Rust Interoperability“ na optimalizáciu interoperability medzi týmito jazykmi. Po prvé, nadácia plánuje vylepšiť nástroje a vyriešiť základné problémy v rámci projektu Rust, ktoré sťažujú integráciu.
Okrem toho je cieľom nájsť konsenzus o stratégii, identifikovať a implementovať potrebné zmeny na zvýšenie interoperability. Ďalším dôležitým bodom je spolupráca s komunitou C ++ a štandardným výborom C ++ s cieľom sledovať spoločné bezpečnostné a výkonné ciele.
Tieto prístupy prichádzajú v čase, keď spoločnosť Google vo februári 2024 udelila veľkorysú podporu nadácie Rust Foundation vo výške 1 milión dolárov.
Pre viac informácií je možné prečítať podrobnosti vo vyhlásení problému C ++/Rust na GitHub a v oznámeniach Nadácie Rust Foundation. Tieto iniciatívy by mohli mať potenciálne významný vplyv na vývoj a integráciu softvéru v budúcnosti, najmä v oblastiach, kde sa zdieľajú Rust a C ++.
Kommentare (0)