Unity技術ブログ設計

プログラミング設計:設計とは?

概要

とりま、設計とは?というところで

最近、自分が抱えているエンジニアチームのマネージメントだったり

プロジェクトの設計周りをガンガン進めていく時間が増えてきていて、知識がたまってきたので随時OutPutして行かなければというところで本件、プログラミング設計について書いて行きたいなと思います。

ここでは、なぜ設計を行うのか?だったりプログラミングにおける設計とはなんなのかについて書いていこうかなと思います!

えーっと・・設計って?

設計(せっけい、英: design)とは、建築物や工業製品等といったシステムの具現化のため、必要とする機能を検討するなどの準備であり、その成果物としては仕様書や設計図・設計書等、場合によっては模型などを作ることもある。

[wiki参照]

とあります。
要は、機能を検討して仕様書とか設計図を作ったりすることみたいですね。

なぜ設計する必要があるのか?

ここでは、僕が開発をする上で設計を行う必要性を例えを通して説明できたらなと思います。

交通ルール

僕は、よく設計の必要性を説明するときに交通ルールないしに例えて説明することがよくあります。
例えば、道路を車で走行していたとします。
このときに、道路交通ルールが存在しなかったらどうでしょうか?
左側通行だったり、速度制限だったりそういったルールの縛り(制約)がない場合、
交通事故が多発してしまうのではないでしょうか?
仮に、道路を走行している人間が自分一人だった場合は、そもそもそのようなルールは不要なのですが
複数人で道路を走っている場合だと、ルールがないと事故が発生する確率が高くなってしまうのではないかと思います。
それと同じように、プロジェクトに制約を加えることで、多人数開発時に思わぬ事故などを防ぐことができたりします。
このルール制約こそが設計のキモになってきます。

いったん今日はここまで

次回に続きます