Room A
Intermediate
20 mins.
Goにはconst型修飾がありません。 言い換えると、型によって変数の不変性を担保できません。 そのため、時には安全でないチープな言語とみなされ、技術選定や習得する上で言語の抵抗感につながることがあります。
しかし、なぜGo言語に不変性を担保する機能がないのでしょうか? 実はGoのメンテナは10年以上前から様々な機能を議論しています。 そして、Go言語に合った解決を見つけられていないのが現状です。 結果として不変性についての機能がない代わりに、言語の互換性や自由度を維持しています。
本記事(セッション)は、既存の議論を交えながら不変性についてのトレードオフを説明することで、言語の抵抗感を払拭し、Go言語を生産的な言語として捉える考え方を紹介します。