C++を使いたい理由

高木です。おはようございます。

日曜日に投稿した「使いたいプログラミング言語は4つだけ」で挙げた4つのプログラミング言語について、それぞれ理由を書いています。
昨日は「Cを使いたい理由」を書きましたので、今回はC++について書くことにします。

状況からいえば、現在私が開発に使っている主なプログラミング言語はC++です。
直近でいえばC#を使う機会が多いのですが、それはあくまでも一時的なものという認識です。

業務アプリケーションの開発を主にやっている方にしてみれば、2000年前後にはVisual C++とMFCを使った開発をよくやったけれど、今はもうC++なんか使わないというケースも多いのではないでしょうか?
しかし、私が普段手がけている分野では、何といってもC++が最適なプログラミング言語です。
他のプログラミング言語がまったく使えないとはいいませんが、相当ストレスがたまると思います。

私が関わる開発の多くはデバイスの制御を伴います。
そのため、デバイスを直接制御したり、OSの機能を呼び出したりする必要が出てきます。
そういったことを、回りくどい方法ではなく、直接的な方法で行えることが必須要件となります。

メモリやリソースの管理の自由度が高いことも重要です。
より高級な言語ではガベージコレクションが当たり前になっています。
ガベージコレクションは大変便利な機能なのですが、それを抑止できないようでは自由度が足りません。

C++では、普段は自動記憶域期間を与えることによって、あるいはstd::shared_ptrをはじめとするスマートポインタを使うことによって、メモリやリソースの解放を自動化できます。
一方で、必要なときには、いつでも解放タイミングを厳密に制御することができます。
こういったことが選択できることが重要なのです。

Cもそうですが、プログラマーを信用してくれるというか、余計なことをしないのがC++が好きな理由です。
そして、Cとは違い、そんなにシビアではないシチュエーションではいくらでも楽をできます。
こういう言語はなかなか希少です。

実際にはほかにも優れた言語はいくつもあると思います。
後発の言語というのは、既存言語の反省点を踏まえた上で設計されていますので、優れていることが多いのでしょう。
しかし、長年使われてきた言語には、その間に蓄積されたノウハウ、安定した処理系、対応するプラットフォームの多さなどの利点があるのです。

今回紹介した以外にもC++には多くの魅力があります。
私としては、自分の年齢を考えても、一線を退くまでC++は使い続けることになるでしょう。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください