25
「コー……ディング、
「そうだ。」
取り急ぎ、ジェンの
(えーと……??)
とにかく「チャンネル」を合わせようとして、まず思い出した……のは。
ノヴァル側の
エンジニアといっても、キーファーさんはコンピュータ技師、それも生粋の「ソフト屋」で。「だから」ということもないけど、その真新しい
『メーカーがプログラマーに「御作法」を守らせる理由は、後任者でも
なにか、そういう「牽制」っぽいことを言っていた気がした。
僕はといえば、プログラムの書き方の「べからず集」を
しかし、この日。
BBL氏から尋ねられたことで――
「コーディング規約を使うような業務は、しておりませんでしたが……」
「
「ええ、僕は8年前にこの業界に入りましたが、そのときからプログラム・コードを書いたりする仕事は、保守も含めて全くしておりません。」
「周りも?」
その問いで、さらに思い出したのだ。
「α協会」が誕生した直接の原因……協会の「元」になった企業が、立て続けに「災難」に襲われて、壊れていった頃のことを。
「ご存じだと思いますが……α協会が出来るまで、僕は只のアルバイトでしたから。聞こえてきた範囲の話ですが――」
「ふむふむ?」
「業界内でも、コーディング規約の使用状況は……企業によってまちまちだった、と。」
「ほう。」
「ご存じだと思いますが、企業が自分の事業に合わせて作ったソフトウェアでも、その事業の変化に合うように『中身のプログラム』を直していく必要があります。」
黙って頷き、先を促すBBL氏。
「開発した方ご自身で、その後の保守も担当できているうちは、あまり問題にはなりませんが……とっくに辞められていたりして、関われなくなったとき。あとを依頼された業者が困ることが多いのです。」
「どういったことで?」
実際に「困った」のは僕ではなかったので、ちょっと言いよどんでしまった。
「そうですね、中がどういう仕組みなのかよく解らない……ということかと。」
「ソースコードがあっても?」
なるほど、と思った。BBLさんの側でも「ソースコード」という用語について理解しているから……と、いうことなのだ。
だから、業者に修正を依頼するにしても、元の開発者から「ソースコード」を入手していないと無理だということ。
こういった事情は全て理解していますよ、と。
成程、そうであれば――
「はい、ソースコードが無い状態で業者が受けることはありません。ソースコードがあることは大前提です……とはいえ。たとえソースコードがあっても、その中身を読んで分析したうえでないと直せない……ということが問題になるのです。」
そんな苦労を自分でしたわけではないので、何かムズ
「とにかく、まず動くように……と開発されて。場当たり的に修正されてきたソースコードは、解読に手こずることが多いそうです。そこで、業者側としては『
「コーディング規約に準拠していれば…?」
「少なくとも、読みやすく・理解しやすい筈です。」
――筈でした。
「なるほど、システム修正の受注条件として。」
「つまり発注側でコーディング規約を使っているかは、まちまちだということで。」
「ふむ。」
「一人が開発して、そのまま保守してきたようなシステムは、『まったく使っていないことも多い』という話でした。」
「だが、まちまちということは?」
「そういうのではない……大規模なソフトウェア開発で、パーツに分けて複数のソフトウェア・ベンダーに外注してるような会社は、『使うのが当然』という雰囲気だったとも。」
「それは、メンテナンスをやらせないから?」
ちょっと考えた。外注であれば、納入物が隠れていることなどない筈だろう。
「納入検査をきちんとやって、合格しないと支払わないからだ……と。」
「パーツが仕様どうりに動けば合格、ではなくて?」
「単体テストだけで検収している場合もあるかもですが、『コード自体を読んで確認する』と聞いたような気がします。」
「その場合もだが―――」
BBL氏の目が、少し泳いでいる気がした。
「――最終的には、納入されたコードを自分で直すことが目的と考えてよいのか?」
「そうだと思いますが……?」
このとき僕は、かつてのバイト先……消滅した会社で言い争われていたことを、朧気に思い出していた。
受注条件とすることに反対はないのに、自分たちが従うべき…となった瞬間に「コーディング規約の根拠」を執拗に追求する社員たちの姿を。
本当かどうか知らないが、「各人が得意とする技量をフルに発揮すると、規約違反だらけのコードが出来てしまう」のだそうな。
でも、それなら「単純に反対」で良い筈では?と、アルに聞いてみたところ。
『つまるところ、「お前等には有無を言わせないぜ、俺は言わせてもらうがな」……っていうことなのさ。』
あの、8年前の騒ぎ。
(やや古いものの)コーディング規約を遵守したコードであると。確認のうえで受注した筈の大型案件で。ブ厚い「
この「逸脱文書」とは何か?というと。
厳しいコーディング規約であっても、「やむを得ない事情」があるときに、ルールに従わない選択も認めている場合がある。
ただし、その場合は。守れない事情や、守らなくて良い理由を、全て文書に残さなければならない……とされているので。
その案件では、そのような「
ソースコードの解析が始まったとき、謎の連番が記入されているコメントが無数にあって。何れも、自動チェックでは引っ掛からないような規約違反が見つかったコード
その内容は、アルによれば。
要するに、こう言っていたのだという:
『俺は有無を言いまくっておいてやったぜ!』
――こんなこと、BBLさんに言うべきなのだろうか。コーディング規約の遵守をうたっていても、ほぼ無意味な場合があったことを?
ちょっとだけ悩んだが、僕も本当のところは知らないのだし――どう言ったものか考えるのも面倒なので。いっさい口に出さないまま……にしたわけだ。
しかし、この時点の僕は。
BBL氏が意識を注いでいた別の要素に、全く気づいていなかった。
『その場合も……最終的には、納入されたコードを自分で直すことが目的と考えてよいのか?』
こう言われたとき。表情などにもっと注意していれば、気づいたかもしれない。
企業がコーディング規約を使用する理由。もっと単純な目的として、『品質と信頼性の確保』も……あることに。
そう、このとき。まだ僕は、知らなかった。
自動車分野のコーディング規約である「GUCAS:自動車システムC言語利用ガイドライン」。その策定にノヴァル自身も係わっていながら、一部しか遵守していなかった……として、原告から攻撃されていたこと。
これに対し、ノヴァル側は「GUCASは業界標準ではない」……と、反駁していたこと。
そして……
GUCASが、自動車安全重要システムの『品質と信頼性を確保すること』を、最重要の目的に掲げていることを。
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。