CとC++言語は、もはや米国政府の最高レベルからは好まれていません。ホワイトハウスは開発者にメモリ安全な言語の使用を奨励しています。月曜日に発表されたこの 報告書 で、ホワイトハウスの国家サイバー長官室(ONCD)は、メモリ脆弱性のない言語を使用することでサイバー攻撃のリスクを減らすよう開発者に呼びかけています。IT企業は「安全な言語を採用することで、デジタルエコシステムへの複数の脆弱性の導入を防ぐことができる」と大統領府は声明で述べています。バッファオーバーフロー、範囲外読み取り、メモリリークから保護されている言語を指しています。
報告書から、次のように読み取れます。
専門家はいくつかのプログラミング言語を特定しましたが、それらは
メモリ安全性に関連する特性を欠き、かつ重要なシステム全体に
広く普及している言語です。CやC++がその例です。最初からメモリ安全なプログラミング言語を使用することを選択することは、
サイバーセキュリティ・インフラストラクチャ・セキュリティ庁(CISA)の
オープンソースソフトウェアセキュリティロードマップが推奨するように、セキュア・バイ・デザインの方法でソフトウェアを開発する一例です。
C++開発者として、私たちはこの重要な問題を無視することはできません。しかし、C++言語は3年ごとに新しい機能が導入され、継続的に改善されています。これらの問題に対処できると私は確信しています。C++の生みの親であるBjarne Stroustrupは、安全性の問題を十分に認識しており、積極的に取り組んでいます。彼は GitHubリポジトリ を作成し、それについて次のように述べました。
「人々が提案を投稿でき、私がドラフトなどを置く場所です。妥当な期間内にこの種のことを成し遂げるためのコミュニティを作ることができます。」
C++は非常に強力なプログラミング言語であり、それを別の言語に置き換えることは決して簡単ではありません。Bjarneが言うように。
「そもそも——他のどの言語で?私が見てきた議論では、現在の提案では、C++は約7つの異なる言語に置き換えられることになります。それが実現する頃には——40年後には——おそらく20の異なる言語があり、それらは相互運用する必要があります。これは困難になるでしょう。」
Bjarneの提案をより具体的に理解するために、このビデオをご覧ください。
要約すると、C++は死んだ言語ではありません。さまざまな業界やドメインで広く使用され、活発に開発され続けています。長年にわたって新しい標準やフレームワークが登場してきましたが、C++はパフォーマンスが重要なアプリケーション、システムソフトウェア、ゲーム開発、組み込みシステム、および効率性、制御、低レベルアクセスが最も重要となるその他のドメインで人気の選択肢であり続けています。しかし、C++をさらに強力で安全な言語にするためには、その安全性の問題に対処する必要があります。
