あくしも
akshimo
「この変数、なんて名前にしよう…」
ソフトウェアエンジニアにとって命名は避けられない重大な意思決定のひとつです。
なぜ命名がそこまで重要なのでしょうか?
それは、命名が単に「ラベルを見つける作業」ではなく、「対象のスコープ(境界線)を定義する」ことだからではないでしょうか。
例えば、とりあえずItemと名付けられたクラス。
最初はただの「商品」を表すはずが、いつの間にか「在庫」や「配送」まで知識を吸い込み、巨大な“神クラス”になってしまった――そんな経験はありませんか?
本セッションでは、エンジニアであり大学で哲学を学ぶ社会人学生の私と一緒に、20世紀の天才哲学者ルートヴィヒ・ウィトゲンシュタインの思想をヒントに「命名」という難問を楽しく再考しましょう!
ウィトゲンシュタインの「私の言語の限界が、私の世界の限界を意味する」という言葉や、「言語ゲーム」の考え方は、DDD(ドメイン駆動設計)のユビキタス言語や境界づけられたコンテキストの話と深い親和性があると思います。
「哲学なんて難しそう…」という方もご安心ください。
学術的な話ではなく、明日の開発が少し楽しくなるような、エンジニア視点でのエッセンスをカジュアルにお話しします。
「とりあえず」の命名を卒業し、言葉で世界の境界線を引く。
そんな「設計としての命名」の楽しさを、哲学の香りをちょっぴり漂わせながらお届けします。
セッションが終わる頃には、エディタに並ぶコードが昨日と少し違った景色に見えるかもしれません!