0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

05. 設計をコード化すると「差分」が意味を持つ ― GUI CADとの決定的な違い

Last updated at Posted at 2026-01-26

はじめに

ここまでの記事で、

  • 設計をコードで記述する
  • FreeCAD で実際に形を生成する
  • Part Design を捨てずにコードと併用する

という流れを見てきました。

では最後に、
なぜそこまでしてコード化するのか?

その答えのひとつが、
「差分が設計になる」 という点です。


GUI CADの差分は、なぜ意味を持ちにくいか

GUI CAD でも履歴やフィーチャツリーは残ります。
しかし次のような経験はないでしょうか。

  • どこをどう変えたのか分からない
  • なぜその寸法になったのか追えない
  • レビュー時に「で、何が変わったの?」となる

GUI操作は、
「結果」は残っても「意図」が残りにくい のが問題です。


コード設計では、差分=設計変更

コード設計では、
設計変更はそのまま テキストの差分 になります。

例えば、板の長さを変えた場合。

- LEN = 120.0  # mm
+ LEN = 160.0  # mm

これだけで、

  • どこが変わったか
  • 何が変わったか
  • 影響範囲はどこか

が一目で分かります。


設計判断も差分になる

寸法だけでなく、
設計ルールそのもの も差分になります。

- if LEN > 100:
-     THK = 8.0
+ if LEN > 150:
+     THK = 10.0

これは GUI CAD ではほぼ不可能です。

  • 「なぜ板厚が変わったのか」
  • 「条件は何だったのか」

が、履歴として明示的に残る からです。


レビューが成立する

コード化された設計は、
Git を使うことで 設計レビューが成立 します。

  • 数値変更の理由をコメントできる
  • 差分単位でレビューできる
  • 「元に戻す」ことが容易

これは、
設計を「作業」ではなく
管理可能な成果物 に変えます。


GUI CADとの差分比較

観点 GUI CAD コード設計
差分の可読性 低い 高い
意図の追跡 困難 明示的
レビュー 口頭・画面共有 Git
差戻し 手作業 commit revert

引き継ぎが楽になる理由

コード設計では、
引き継ぐのは「操作方法」ではありません。

  • 設計条件
  • 設計判断
  • 変更履歴

これらが コードとして残る ため、

「なぜこうなっているのか」

を、後から追えます。


すべてをコード化する必要はない

ここで誤解してはいけないのは、

  • 形状の微調整
  • 美観
  • 最後の詰め

までコード化する必要はありません。

重要なのは、

差分として残したいものだけをコードにする

という割り切りです。


これまでの記事との位置づけ

  • 03_:コードで形が作れる
  • 04_:GUIとコードを併用できる
  • 05_:なぜそれが強いのかが分かる

05_ は、
シリーズ全体の 答え合わせ です。


おわりに

設計をコードで書く最大の価値は、
自動化でもAIでもありません。

「変更が、意味のある差分になる」
この一点に尽きます。

GUI CAD を否定する必要はありません。
ただ、設計の中で

  • 判断
  • 条件
  • ルール

だけは、
コードとして残しておく。

それだけで、
設計は長期的に扱える資産になります。


補足

本記事中のコードは設計手法の説明を目的とした例示です。
実運用・再配布を想定したものではありません。

実際の設計コードやライセンスについては、
以下のページで管理しています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?