「基礎からしっかり学ぶC++の教科書 C++14対応」

基礎からしっかり学ぶC++の教科書 C++

Amazon.co.jp

プログラムとは

プログラムとは、コンピューターが行う情報処理を明確に記述したものである。「明確に」とは、日本語のように曖昧さが許されないということである。

コンピューターは様々な場面で利用されている。それらはすべてプログラムを実行している。

プログラムを書くことをプログラミング、プログラムを書く人をプログラマーという。
プログラムの記述のことをコード、コードを書くことをコーディングという。

プログラミングには、そのための言語が用意されており、プログラミング言語という。

そのプログラミング言語のひとつが、今回ご紹介する「C++」である。

C++とは

C++はC言語を拡張する形で設計されたプログラミング言語である。

C言語は、1970年代前半にDenis Ritchieらによって開発された。現在ISOによって標準化されており、代表的なものは、C11と呼ばれている。

C++は、Bjarne Stroustrup(ビャーネ・ストロヴストルップ)によって設計されたプログラミング言語である。C++もISOによって標準化されており、 最新の国際標準規格は「ISO/IEC 14882:2020 Programming Languages — C++」(通称 C++20) である。
(参考)C++国際標準規格

C++は、C言語を拡張する形で設計されており、C言語のプログラムのほとんどはそのままでC++のプログラムとみなされる。

C++とC言語の最大の違いは、C++がオブジェクト指向をサポートしていることである。

オブジェクト指向をサポートするプログラミング言語の多くは、C++を参考に作られているため、C++で身につけたオブジェクト指向の知識は、JavaやC#など他のオブジェクト指向プログラミング言語でも活かせる。

C++は性能に関して、妥協せずに抽象度を上げることを追求する言語である。

コンピュータープログラミングにおける抽象化とは、複雑なソフトウェアシステムにおいて、複雑さを軽減し、また効率的な設計と実装を可能にする方法です。

 Mozilla Foundation

プログラミング言語の抽象度は高い方がわかりやすいが、そのわかりやすさは性能を犠牲にして実現されることがある。C++は性能を犠牲にしないように、便利な機能がいろいろ追加されている。
つまり、同じ機能をより低水準な言語で実装した場合と比較して、性能があまり落ちないように配慮されている。

低水準言語とは、プログラミング言語のうち、コンピュータが直接解釈・実行できる機械語や、機械語に近い言語の総称。

IT用語辞典 e-Words

C++が利用されるのは、コードの書きやすさより、性能が重視される場面が多い。
たとえば、OSやデバイスドライバ、高性能計算のようにハードウェアの性能を最大限に引き出さなければならない場面となる。

GNU/Linuxの大部分はC言語で、Windowsの大部分は、C++で書かれている。
Javaの実行環境であるJava仮想マシンもC++で書かれている。

C++を使って実装されたソフトウェアが、StroustrupのWebサイトで紹介されている。

C++ Applications

今回は、C++の入門書をご紹介する。

基礎からしっかり学ぶC++の教科書 C++14対応 矢吹 太朗 (著), WINGSプロジェクト 山田 祥寛 (監修) 日経BP社」である。

本書の特徴は以下の通りである。

プログラミング言語としてのC++の使い方を、基礎から丁寧に説明します。プログラミングに必要な基礎知識(言語仕様、文法、概念など)を体系的に学習できます。
各章の章末には復習問題があり、その章で学んだ内容を確認してから次の章に進めるようになっています。また、本書の最後の章では実際にパズルのアプリケーションを作成することで、
本書で学んだこと全体が復習できます。レベルアップを目指すC++の初学者におすすめします。
本書は2009年発行の『文法からはじめるプログラミング言語Microsoft Visual C++入門』を、現在の状況に合わせて全面的に改訂したものです。

「はじめに」より抜粋——————————
本書はC++の入門書です。文法を厳密に記述するのではなく、構文とそれを利用するサンプルコードを提示することによって、C++を紹介しています。
対応する規格はISO/IEC 14882:2014、いわゆるC++14です。本文で利用する開発環境はVisual Studioですが、サンプルコードはGNU C++とClangでも動作します。
その方法は脚註などで補足しているので、それを参考にすれば、Windowsだけでなく、macOSやLinuxでも本書の内容は試せます。
(中略)これからC++のプログラムを読み書きしていくために最低限必要となるであろう話題だけを選択し、本書を書きました。
プログラムを書くだけでよければもう少しコンパクトにできますが、他人が書いたC++のプログラムを読むのに必要な知識を入れるとこのくらいになるでしょう。

Amazonの本書の紹介ページ

この夏、本書でC++のプログラミングを始めてみてはいかがだろう。

市販のソフトウェアを動かすだけが、パソコンの使い方ではないことを実感できるだろう。

コメント

タイトルとURLをコピーしました