第1話
第一話 型なき世界
朝9時、会議室に集められた俺たちは、一枚のスライドを前に沈黙していた。スライドには「既存システムの型定義:なし」と書かれている。
「え、マジで?」思わず声が出た。隣の先輩・鈴木さんが苦笑いした。
「そう。20年前に作られたこのシステム、ずっと型のない動的言語でやってきたんだ。データベースのスキーマもドキュメントもない。つまり…」
「つまり何が入ってくるかわかんないってことですか?」
「そういうこと」
プロジェクトマネージャーの松本さんが立ち上がった。
「今回の目標は明確だ。この混沌とした世界に秩序をもたらす。型システムを設計し、段階的に導入する。田中君、君が中心になってくれ」
完全に俺の頭は真っ白だった。卒論で型システムの論文読んだことあるけど、実務ってこんなにいきなり任されるんか。
会議が終わって、鈴木さんが声をかけてくれた。
「ちょっと来いよ」
彼の席に行くと、モニターに複雑に絡み合ったコードが表示されていた。変数の名前から何が入ってるのか推測するしかないようなやつだ。
「これが現実。ここまで来ると、型つけるのも大変なんだよ」鈴Video木さんが言った。「静的型つけたら、既存コード全部壊れる可能性ある。かといって無視したら、バグは増えるし、保守も地獄。だからお前の設計が…大事なんだ」
夜中に一人で残業してた。型システムの本を読み直す。TypeScript、Rust、Haskell…言語ごとに設計思想が違う。だけど共通するのは「意図を表現する」ってこと。
ウチのシステムの意図ってなんだろう。
明日、過去のコード読み漁る作業が始まる。何をつけるべきか、何を許容するのか。その判断が、これからのシステムを形作るんだ。
俺の迷宮への第一歩がここから始まる。
続きはまもなく
目次