안전한 언어란 것이다.
취약점을 많이 만든 언어 3위다.
앞도적 1위 물론.. C다. 언어가 아주 오래되었으니 말이다. 하지만 요즈음 C가 주로 쓰이는 영역은 취약성 따위는 별 중요한 문제도 아닌 분야라 여전히 많이 쓰이고 있고...
PHP는 이미 퇴출 수준으로 ㅈ망한 언어고..
그 다음이 Java다. 초기에 Java는 아주 간결한 문법이었지만 이후 너무 중구 난방으로 업그레이드 되면서 사실 매우 취약성에 대한 대비가 부족한 언어 중에 하나가 되었다.
그 다음이 Java와 거의 비슷한 수준의 Java Script... 간단한 문법의 언어인데 왜? 싶겠지만 오히려 그런 것들이 더 많은 취약성을 만들어 낼 수 있다.
취약성 면에서 비교적 적은 언어.. 4위에 비해 절반 수준의 언어들
Python, C++, Ruby다..
어 Python은 그렇다치고 C++이??
메모리 잘못 건들면 위험한 거 아니야???
응~ 그건 C이야기고 c++에게는 옛날 이야기 하고 있는 거다.
c++은 생각보다 매우 안전한 언어에 속한다.
포인터가 위험하다?
사실 while문이나 for문도 ㅈ나게 위험하다. 왜? 잘못하면 무한 루프를 만들 수 있으니까!
하지만 우리는 잘못 쓰면 위험해 질 수 있다고 해서 while이나 for가 있는 언어를 위험한 언어라고 말하지 않는다.
물론 포인터 물론 잘못 쓰면 위험해질 수 있다.
하지만 다양한 프로그래밍 기법들과 컨셉들이 추가되며 안전한 프로그래밍을 위한 다양한 방법들이 제공되고 ai수준의 static analysis로 인해 위험함을 선택하지 않도록 많은 도움을 주는 상황에서는 오히려 c++이 더욱 안전한 소프트웨어를 작성할 수 있는 세상이 오고 있다는 것이다.
이 때문에... rust나 carbon 같은 시도들은 물론 자기의 영역이 있을 수 있지만 시대착오적인 시도일 수 있다고 보는 사람이 많다.
즉 c++을 대체하기에는 무리일 것이라고 본다는 것이다.
취약점이라고 다 뭉쳐놓으니 이런 결론이 나오지 그 취약점이 비지니스로직상의 취약점인지를 따져봐야지. 보안이 아주 크리티컬한곳들은 c++도 이미 걷어내는중이다