第10章 設計そして行動
投稿日時 2015/05/14 00:26:54こんにちは
このウェブページでは開発者を目指す人や開発者になってこれから開発職を全うしていこうと思っている人に向けて私、おとはが思うことを綴っていこうと思います。
この記事に書いていることを鵜呑みにしたり、書いていることだけを実践しても結果を保証するものではありません。
大事なことはこれからあなたが 「どんな人になりたいか(キャリア)」 、 「何をしたいのか(ジャンル)」 、 「どこを目指すのか(目標)」 です。
中級者向けの第4段です
新人を卒業して数年の歳月を経てしっかりと自分の力で仕事をこなしていける人向けの内容ですよ
それでは、 「第10章 設計そして行動」 についてお伝えしますね。
「設計」
なんて言われたらプログラマーの仕事だって言われそうな気もしますが、
何も設計はプログラマーだけの仕事ではありません
仕様を決めて
しっかりとした芯のある設計の元に行動を移さないと後からトラブルに見舞われる
ことがあります
ゲームでもツールでもそうだし、それぞれの実装において作成されるデータだって仕様がしっかりしている必要があります
グラフィックデザイナーに「
自由にデータを作っていいよ
」なんて格好良いこと言ってみたら・・・
解像度が大きい
、
読込時間が掛かる
、
CPU処理負荷高すぎる
なんて事になりかねない
3Dのモデルとかになってこれば、
ポリゴン数
やら
どこにボーンを入れて処理させるか
なんてのも大事ですよね
CPU
も
GPU
も
Memory
も有限ですし、
HDD
だって
Network
帯域だって制限があります
プログラムって膨大なソースコードの上に成り立つので個々の細かい処理に目を通すなら選任で人材割り当ても必要になってきます
最近はコード分析なんて便利なのもあるのでそこでテストも可能ですがトラブルを未然に防ぐなら設計思想が大切になります
中級者になってこれば
経験やノウハウも積んできている
と思いますので、
良いこと・悪いことの判断はある程度思いつく
はずです
設計もしないで作業に入る人は、
すごく頭が賢くて周りの人から遠い存在の人と思われている人
か、
後先考えられない取りあえずで作業してしまう人
でしょう
設計思想もなく実装していった仕様に対して1年後しっかりと記憶しておくことが出来るでしょうか
どのような
意図があって何を目的として行うことなのか
を
デジタル、アナログ問わないので必ず書面として残しておきましょう
これが出来なければ時間と共にどんどん対処が出来なくなるひどい状態へ進むことになります
しっかりとした
理念の元に設計されたシステムや各種データであっても
機能拡張や他のデータへの派生などしている内に元の情報は薄れていきます
どこかのタイミングで立て直しをしたり、動作テストを行うための指針となるように情報を残しておきましょう
これが出来ていれば
すべての行動を設計者が起こす必要はなく
作業を分担して開発していくことも出来ます
また、
引き継ぎ時間も短縮できますので引き継ぐ方も引き継がれる方もお得
になります
かなりプログラマ寄りの内容になってしまいますが・・・
最近のコンピュータは複数のCPUコアを使用してマルチスレッドで処理をします
スレッド間のデータの保護もそうですが効率よく処理を実装していくことが
技術力として必要
です
ここでも
大事なのは制御フローをちゃんと考えて設計すること
に就きます
チームの作業フロー
なんかも
考えておく必要があります
どこから仕様や依頼が来て誰がどのように対応して最終的なデータに変換されていくのか明記します
作業フローに問題があると
作業
途中
で問題が発生してもスルーされてしまい
、
気付いた頃には後戻りできない
・・・
なんてことにならないようにしましょう
設計の方法は色々あります。
意見出しであれば、ホワイトボードや紙ベースに書いていっても良い
でしょう
出来れば
ブレインストーミングなど誰かとの情報共有が出来るアプリを利用してデジタルデータ化するのが素晴らしい
です
私は初期設計はXMindによる考案を行います
マインドマップは考えをまとめるのに非常に特化しているので楽しく考えをまとめられます
とりあえずで行動して後から後悔するような駄目作業フローから卒業して
将来を見据えた開発が出来るように今すぐ行えることから実践していきましょう