Ciekawostki

Rust w miejsce C/C++. Tak to widzi Microsoft

z dnia
Wojciech Kulik | Redaktor serwisu benchmark.pl
17 komentarzy Dyskutuj z nami

Microsoft ustalił, że aż 70 proc. poprawek bezpieczeństwa dla systemu Windows dotyczy błędów związanych z pamięcią, a programowanie w Rust miałoby umożliwiać wychwytywanie ich już w fazie rozwoju.

Wygląda na to, że Microsoft znalazł następcę C/C++

System Windows i jego poszczególne składniki, pakiet Office czy usługi chmurowe Azure – wszystkie te produkty Microsoftu łączy fakt, że bazują one przede wszystkim na języku C/C++. Choć ma mnóstwo zalet, ma też swoje minusy, których efektami bywają błędy pamięci. Ich naprawianie jest czasochłonne, dlatego gigant z Redmond zaczął rozglądać się za jakimiś alternatywami. Wybór padł na Rust.

Rust, czyli wydajność C++ plus nowoczesne funkcje

Rust jest stosunkowo młodym językiem programowania, ale szybko zyskuje na popularności. Jest tak przede wszystkim ze względu na wysoką wydajność, a równocześnie obecność funkcji, jakich spodziewamy się po współczesnych rozwiązaniach tego typu. Dlatego „góra” Microsoftu zleciła swoim inżynierom przepisanie niektórych elementów systemu Windows, a jeśli efekty będą zadowalające, projekt będzie kontynuowany. Choć nie zdradzono, o jakie konkretnie składniki chodzi, mówi się, że mogą to być nawet podstawowe komponenty. 

Możliwe jednak, że będzie inaczej i przechodzenie z C na Rust będzie odbywało się stopniowo, w takim sensie, że tylko nowe (lub stosunkowo nowe) elementy będą pisane w tym języku. Bo choć inżynierowie póki co wystawiają mu „ogólnie pozytywną” ocenę, to zauważają brak niektórych istotnych funkcji. O ile więc pisanie nowego kodu nie powinno przysparzać problemów, to przenosiny mogą być trudne. Dodajmy na koniec, że wydajność i niezawodność składników pisanych w Rust docenili też inżynierowie rozwijający chmurową platformę Azure. 

A może Microsoft stworzy nowy język programowania

Jest jeszcze jedna możliwość – Microsoft rozważa (albo przynajmniej rozważał) stworzenie nowego języka programowania. Ten miałby być mocno inspirowany Rustem, a równocześnie jego składnia byłaby bardziej zbliżona do rodziny C. Amerykański gigant jednak niejednokrotnie już przekonał się o tym, że trudno jest zachęcić innych do używania jego autorskich rozwiązań, więc przynajmniej na razie bardziej prawdopodobne wydaje się stawianie na język Rust. 

Źródło: Microsoft, Medium

Czytaj dalej o Microsofcie: 

Komentarze

17
Zaloguj się, aby skomentować
avatar
Dodaj
Komentowanie dostępne jest tylko dla zarejestrowanych użytkowników serwisu.
  • avatar
    xxx.514
    "Amerykański gigant jednak niejednokrotnie już przekonał się o tym, że trudno jest zachęcić innych do używania jego autorskich rozwiązań" - czyżby dlatego, że są po prostu kiepskie?
  • avatar
    pablo11
    Pytanie, czy rzeczywiście plusy płynące z użycia tego języka są większe od minusów wynikających z braku programistów, którzy go używają. C/C++ jest bardzo głęboko zakorzenionym językiem. Nie jest może idealny, ale mnogość języków, szczególnie w sprzęcie, bardziej wprowadza chaos, niż "ulepszenie". Mówię tu o zastosowaniach poza x86 i AMD64. Standaryzacja daje więcej, niż rozstrzelenie, że każdy używa czegoś innego. Nawet, gdy ta standaryzacja jest nieco toporna i wymaga dostosowania się człowieka do maszyny.
    Nie dla każdego i nie w każdym przypadku język wyższego poziomu jest łatwiejszy w programowaniu, niż ten uboższy, do którego się przyzwyczailiśmy.
  • avatar
    Ramsfeld
    "Dobrze napisany produkt Microsoftu" to chyba taki antonim :D chyba jedynym wyjątkiem z którym pracowałem to TypeScript który jest prowadzony przez Microsoft ale tu mamy raczej do czynienia z "nakładką" JavaScript
  • avatar
    Kapitan Nocz
    No jeśli Microsoft rozważa użycie czyjejś myśli to ten ktoś powinien mieć się na baczności, historia tej firmy jest usiana kradzieżami pomysłów. Tak, że jak czytam, że Microsoftowi podoba się coś i chce zrobić coś podobnego od siebie :D to zaraz ten ktoś będzie w biedzie.
    -3
  • avatar
    BrumBrumBrum
    w sumie dobrze że Rust a nie kolejne coś od MS. co do chęci stosowania rozwiązań MS, problem w tym że są one niestabilne w czasie, więc programiści którzy się tego nauczą mogą zostać na lodzie. stąd niechęć.

    jeśli chodzi o C i jego rozwinięcie (???) C++, ma ono całe mnóstwo naleciałości. w sumie jest to pierwszy uniwersalny język wysokiego (w miarę) poziomu, z całym swoim pomieszaniem referencji i wskazań, dziwaczną konstrukcją złożonych rekordów szczególnie jeśli zawierają tabele, itp/itd. Jednak C było pierwsze, i poza ASM sprawdził się w pisaniu systemów operacyjnych. Jednak czas to zmienić.

    Zresztą MS ma problem, bo niemal cały windows kernel jest pisany w C, a młodzi do tego języka się nie palą, bo się w nim ciężko programuje myszą.