読者です 読者をやめる 読者になる 読者になる

キーワード引数に対する補足

結果的にマルチパラダイム言語の権化のような存在になってしまったC++だけれども、
理想として掲げられた「オブジェクト指向言語」であろうとしたことを忘れてはならないと思う。

先日の引用はあえて略したのだけれど、

キーワード引数に対する私の主な心配は、
これによって、
従来型のプログラミングテクニックからC++のデータ抽象化とオブジェクト指向プログラミングへの漸進的な移行が遅くなることだった。
私が見た範囲内では、上手に書けていてメンテナンスもしやすいコードは長い引数リストをめったに使っていない。
むしろ一般的な観察結果としては、
オブジェクト指向プログラミングスタイルを使っているコードは、引数リストの長さが目立って短くなる。
それまで引数やグローバル値だったものが、ローカルなステートになる。
私の経験では、引数の数は平均で2未満になり、2つ以上の引数を使う関数は稀になる。
よって、

と続く。
キーワード引数自体が「衰退して欲しいと願うプログラミングスタイル」を招くのではなく、
元々すべてを引数として表さざるを得なかったCから移行する際において、
必然的に引数が長くなることでより意味を持つ「キーワード引数」という仕組みは
C++の目指す進化にとって負であると判断されたのではないだろうかなぁ。