Wpis z mikrobloga

@xial00 czy to naprawdę jedyna droga do bezpiecznego kodu? W pracy ostatnio wziąłem sobie Rusta do douczenia i się zastanawiam nad tym powszechnym argumentem, że C++ to wylęgarnia memory leaków. Przecież to można pokryć testami, przeczytać swój kod i dopiąć komponent na 100 %. Może specyfika moich projektów nigdy nie sprowadziła mnie na ziemię, więc ktoś może mnie oświeci
  • Odpowiedz
@c137:

można pokryć testami, przeczytać swój kod i dopiąć komponent na 100 %

Rozwiązania, które napisałeś przerzucają odpowiedzialność na człowieka (w projektach na dziesiątki/setki ludzi). Właśnie o to chodzi, aby to komputer (kompilator) wziął na siebie większą część tego zadania.
  • Odpowiedz
@bartox7777 o też to, zapomniałem dopisać. Na dzisiaj testy w większości pisze mi bot i obie strony są zadowolone. Zdaje sobie sprawę, że rynek się zmienia i Twój argument to powód dlaczego powoli Rusta doszkalam. Na dzisiaj brakuje bibliotek pod AI, ale jeszcze przyjdzie taki dzień ( ͡° ͜ʖ ͡°)
  • Odpowiedz
@xial00: wszyscy porównują tak tego Rusta do C i C++ ale nie wiem czy to w ostateczności mu nie szkodzi - w sensie że ludzie go zaszufladkują jako lepsze C++. A Rust jest bezpieczniejszy również od Javy, C# i Go. I nie tylko bezpieczniejszy ale także bardziej ekspresywny.
  • Odpowiedz
  • 0
@c137: no niby na newstacku pisali, ze rust ma byc bardziej kompatybliny z llmami, nie wiem co to znaczy, moze ze llmy lepiej pisza kod w ruscie niz w c++?
  • Odpowiedz
@c137:

1. Nie da się.
2. 100% pokrycia testami nie gwarantuje braku błędu.
3. Jeśli takie błędy można wykrywać bez ingerencji człowieka, to lepiej to robić bez ingerencji człowieka.
4. W C++ nie da się dodać 2 liczb ze znakiem bez potencjalnego UB.
5. Lata praktyki pokazują, że nie tak łatwo jest pisać kod bez błędów pamięci. CVE to pokazuje.
  • Odpowiedz