スキップしてメイン コンテンツに移動

Head Firstソフトウェア開発 を読んでみた

本を読む→レビュー
なルーチンを復活させよう計画。

今回は
を図書館で見つけて借りて夏休み中放置していて返却日が迫ってきたので慌てて読んでまとめました。

1. 概要

似たような内容のHeadFirstシリーズに
等があります。
一部内容が被ってたりしており、割合的には
オブジェクト指向分析設計 : デザインパターン : オリジナル(+α) = 3 : 1 : 6
位のイメージ。

ちなみに似た内容の方の本2冊は買ってます。今回のは返却済み。

2. +αのこと

被っている内容については各本を参照してもらうとして、この本独自の点をあれこれ。

I. 繰り返し

一番重視されているのが「繰り返し」。
小さい単位では、毎朝スタンドアップミーティングを行い、現在の進捗や気づいたこと、今日の作業の妨げになり得る案件等を報告しあう繰り返し。
大きい単位では、納期までに結果を納品し、それに対しての反省から次のプロジェクトの見積を計算しなおす繰り返し。
等、各単位での繰り返しを行うことで、常に現状を確認し、予想で物事を考えないようなシステムを作ることが重要としています。

II. バーンダウンチャート

単語として知らなかったのでピックアップ。
詳細は本を読んでもらったほうが良いと思いますが。これも現状把握の一手段です。

III. バージョン管理

Subversionの導入について軽くですが触れられており、導入からチェックアウト、タグやブランチの付け方、考え方などがある程度理解できます。
詳細まで解説するとページ数がいくらあっても足りないので、本当に触りだけですが、これだけでも知っているのと知っていないのとでは共同開発の効率に差が出そうな感じです。

IV. テスト(テスト駆動開発)

これも軽くですが触れられていました。テストのコンパイル、単体テストの自動化方法や、テスト駆動開発の考え方と、その効果、利便性などが解説されています。
結合テストに関してはあまり触れられてません。

3. 総評

本の内容としては、基本的なプロジェクトにおける設計~開発~納品~の流れにおける、工数等の見積の方法と、その見積の維持(修正)と管理方法が広く解説されていました。
各ツールの使用方法や、細かい設計等については専門の本を読むべきだと思いますが、開発においていきなり予想でコーディングを始めることの危なさや、無駄な時間のように思える設計や工数見積の時間をしっかり取ることの重要性を知る・確認するのには良い本だと思います。

コメント

このブログの人気の投稿

就職活動現況報告

今週若干余裕があるので少しネタの更新・・と思っていますが 研究も進めないといかんので保留。。 本を読む本 (講談社学術文庫) をほぼ読み終わったので 電車の中で次はviの本かWebプログラミング基本みたいな本を読もうと思います。 後は久々に漫画を衝動買い。 ぷりぞな6 1 (サンデーGXコミックス) これ。絵描いてる人が韓国の人らしい。 ブラックラグーンの作者が支持みたいなことが書いてあったので読んで見ました。 まー絵は萌え系みたいな感じだけどシリアス混じってて面白そうかな? Amazonでは絵が無いですが一応公式の紹介は GX作家&作品紹介 こんな感じです。 結構表紙飾っているようなので見たことある人も居るかもしれません。 で、タイトルの就活現況では、前回順調とか言ってましたが 志望していた6社のうちとうとう1社落ちました。 しかも結構でかいところです。 グループ面接の時点で落ちてしまったので、 もしかしたら表面の部分(礼儀とか仕草)で落とされたのかもしれないですが、 反省としては 内容が冗長で話す内容が長かった 何か反論された時に言い訳じみた答えを返してしまった 自分はエンジニア経験があるんだ的な内容を押しすぎた 辺りと考えています。 で、対策。 まず冗長分ですが、今のところ話す内容を完全に決めてしまわずに、 ある程度の枠を決めてその場で考えて話しているので もうちょっと 質問の後に結論を考えてから内容を話す ように気をつけようと思います。 反論じみた言い訳というのは、とっさに返してしまう対応策みたいなもので、 相手に この人は実務でミスしてもその場対応するんじゃないか という印象を与えてしまった気がしております。 ので、対策としては 一度相手の内容を肯定して、その上で簡潔にこうすればいいんじゃないかと思うと一言返す 位に留めようと思います。 最後にエンジニア押しは、一応自分の売りの一つではあるので止めることはせずに 事実だけをしっかり伝えて冗長分は省く というような感じにしようかと思います。 以上。 自分の反省なので発信するような内容じゃないんですが、 文に書かないとなかなか省みない性格なので文にして発信。 結論を言えば「もっと落ち着いて簡潔に」を心がけるといったところでしょう。 正直面接凄い苦手なのでなかなか落ち着くのはきついですが、 省みなずに 運

USBメモリでポータブル環境を作る(その2)

その1では、環境作りの前の下地を作成しました。 その2では、実際にソフトを入れ、完成させて、使ってみます。 2.ポータブル環境用ソフト選び この辺りは基本的にこの二つのサイト 「USBメモリに入れて持ち運べる便利なソフト」まとめ PortableApps.com を参照して、自分の使いやすい環境にすべくソフトを詰め込みます。 中でも恐らく必須なのは、ランチャーです。 自分は前者のサイトでも紹介されている CraftLaunch をデスクトップやノートPCでも愛用しているので、こちらを使いました。 ランチャー選びの注意点として、 接続するPCによってドライバ名が変わるため ランチャーは相対パスで指定できなければなりません。 その辺り対応しているランチャーが先ほどの まとめ や、 USBメモリ徹底活用術 で紹介されているので 使いやすそうなものを選んでみてください。 自分はコマンド入力式のランチャーがなければ生きていけません。 残りのアプリケーションは好みで。 参考までに自分が入れているアプリケーションをさらすと CraftLaunch FFFTP FireFoxPortable foobar2000 DeleteDust StartScr Suspend IDM LimeChat PidginPortable SunbirdPortable TeraPad Twit UnplugDrive Portable Vim 現在のところこれらになります。 今現在使っているUSBメモリがそれほど容量が大きくなく、転送速度もそれなりなため あまり重そうなソフトは入れていませんが、 軽くて便利なソフトは他にも多々あるので、 個々使えそうなアプリを探してみてください。 重そうなので入れていませんが、OpenOfficeのPortableバージョンなどもあります。 3.用途と感想等 ということで、ここまで携帯環境構築を色々と垂れ流しました。 様々なソフトの設定がいつでもどこでも保持されている状態なので、 いつどこのどのPCでも自分の使いやすい環境が維持されることになります。 ただしまぁセキュリティ上ネカフェとかのPCで使うのはやめておいた方が良いと思いますが。 転送速度が十分速いお高めのUSBメモリであれば、 USBメモリに入れているアプリは自分の使う自宅

sonictemplate-vim を denite.nvim で使うための source と kind を書きました

sonictemplate-vim を denite.nvim で使うための source と kind を書きました こうなって こうなって こう宣言したので Meguro.vim #9 で 進捗 を出してきました コメント等合わせても 50行 程度の実装です 概要 sonictemplate-vim を denite.nvim から呼び出すための拡張用 source & kindを書きました sonictemplate-vim-denite-extension これはなに? mattn さんが作成されている sonictemplate-vim の機能を、 Shougo さんが作成されている denite.nvim を経由して呼び出せるようにするための source と kind の実装です なにができるの? :Denite sonictemplate を execute すると、適用対象テンプレートの候補が denite.nvim のインターフェースでリスト表示される リストからテンプレートを選択( <Enter> )すると、ソースコードに適用される それ :Template でできるよ そもそも :Template までが command モードで入力された状態で <Tab> 等を押せば、候補が表示&補完される機能が本家の sonictemplate-vim 自身に備わっているので、必要十分ではあります ならなんで作ったの? 自分が denite.nvim のインターフェースにかなり依存して Neovim を用いているため、作業中の操作を極力ひとつに統一させておきたい denite.nvim 上で候補リストを表示することで、候補の絞り込み機能が提供されるため、少し便利になる Vimスクリプトコーディングのリハビリを兼ねて書きたかった (Python スクリプトだけど) 辺りが主な理由です なんで fork じゃなく別リポジトリで作ったの? 以前 unite.vim 用の source & kind を作ったときは、 Vim があれば使えたので一緒でも良かったのですが(実際当時はそこまで考えてませんでしたが)、今回は de