ラベル 書評 の投稿を表示しています。 すべての投稿を表示
ラベル 書評 の投稿を表示しています。 すべての投稿を表示

2015年3月15日日曜日

チケット駆動開発を読みました。

チケット駆動開発を読みました。

この書籍を読んでも今の職業ではあまり役に立たないわけですが、個人プロジェクトでgithub、bitbucketを利用しているので、チケットの登録の仕方(頻度、粒度など)が分かればいいかなと思って読んでみました。

書籍では主にRedmineを使ったプロジェクト管理について記載がされていたと思いますが、特にRedmineでなくても問題なく実践できると思います。

さて、チケット駆動開発で何をサポートしようとしているかというと、

  1. 経緯の保存
  2. ToDo管理
  3. 備忘対策
  4. 開発後の振り返り
  5. 進捗管理
が全てなのではないかと思いました。確かに、Excelでの管理だと、経緯がわかりにくいとか、進捗がどうなっているのかを把握するのが非常に困難ですが、チケットで管理していると後で検索すれば追跡することも可能だと思います。(開発の仕事をしていた時は、この経緯の説明に非常に苦労した記憶が…。しかも経緯を説明した後、前提を覆すというようなこともあったりしたし…。それが悪いとは言わないが…。)
また、チケットがcloseされないことにより、作業が漏れる可能性が低減されることも重要なポイントだと思います。


それから、チケットとcommitを紐付けておくことで、チケットに書かれている内容についてのディスカッションの経緯や変更したソースコードをまとめてみることができたりするのもチケットの長所かもしれません。

その他にもチケット駆動開発をいきなり取り込んでも、用途が定まっていないとうまくいかないということで、最初はBTS(障害管理)から取りいれてみる事がいいだろうと再三書かれていました。
個人的には、とりあえず、作業内容をチケットに登録してみるというところから始めると良さそうな気がしています。
(ある個人的なプロジェクトではbitbucketでチケット駆動開発を行っています。仕事の性質上、作業が滞ってしまう事があるので、備忘対策としては非常に優れていると感じています。)

ちょっと読んでてしんどかったのは、最後の方で事例紹介のページがあるのですが、少し事例が多かった気がしたので、チケット駆動開発の方法が紹介された後で事例のページを読み進めるとしんどいかもしれません。(特に私はこういう開発手法の経験はないのでイメージが湧かないのかもしれませんが)

最後に、今もウォーターフォール型のプロジェクトが多いと思いますが、限界を感じている方におすすめですが、この書籍に書いてある、「アダプタブル・ウォーターフォール」という章があるので、これを読んでみてはいかがでしょうか。

大まかに説明すると、ウォーターフォール開発の中で、計画外のことが発生した時に、チケットを登録しておいて、開発作業を進めるというものです。
仕様変更などが発生すると仕様書に反映されるのに時間がかかることで、対応状況がよくわからなくなるという事が経験上よく発生していたような気がするので、チケットにより変更の状況がわからなくなるということが防げるのはいいのではないでしょうか。


2014年10月22日水曜日

「Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング」を読みました。

Blogを書くのが遅くなってしまいましたが、「Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング」(http://www.amazon.co.jp/dp/4844336673)を読みました。

目次は以下の構成です。

  • 第1章 ラムダ式とは
  • 第2章 ストリームAPIの使い方
  • 第3章 ラムダ式を使ったプログラミング
  • 第4章 JavaFXによるGUIプログラミング
  • 第5章 日付と時刻の新たなAPI
  • 第6章 並行処理の機能強化
  • 第7章 Nashorn JavaScriptエンジンの活用
  • 第8章 その他のJava 8機能を理解する
  • 第9章 Java 7の機能を復習する
私はJava 5が出たあたりで、Javaをほとんど書かなくなってから、AndroidのプログラミングでJava 6のコードを書いているという状態でした。従って、Java 7の内容とか、Java 8の事は殆どわかりません。(以前、Java 8のハンズオンイベントに参加したので、Stream APIとラムダ式は教えて頂いたことがある。)

実は、今回縁あってImpress Japanさんから献本を頂きまして、本書を読むことができました。ありがとうございました。書籍を読む時間が取りづらいのと、貸してほしいとお願いされたこともあって、私は5章まで読んで、以降は流し読みになっていますが、私の印象を書いておきたいと思います。

読む前の印象としては、柴田さんの翻訳本の文章は「日本人には読みづらい」という印象がありました。Goフレーズブックとかが、わりと頭が痛くなる文章だった気がします。
ですが、本書に関しては、わかりやすい文章になっていると思います。

しかし、コード例や、説明がJava 6、Java 7の書き方をしっかり理解していないと、内容を理解するのが難しいと感じました。従って、Java 7の内容がわかっていないのであれば、一度9章を読んでからの方が良いのかもしれません。
(初心者の方は、恐らく途中で挫折してしまうと思いますので、最初の書籍に選択するのはおすすめしません)

ラムダ式の所は、型の記述を省略できるようになっているのですが、引数の型が見てわかるようであれば良いのですが、書籍の例のラムダ式のコードを見てもすぐに型が分からないこともあったので、ある程度、Javaのクラスの事が分かっている方がいいかもしれません。(もしくは、ドキュメントを見ながら読み進める必要があるかもしれません)

本書には(私はまだ取り組んでいませんが)練習問題が用意されていて、練習問題に取り組むことで、理解を深めることができるようになっています。ですから、よくわからなかった所は、練習問題でもう一度、内容を整理して理解するということが可能になっています。

書籍は260ページ程度で、比較的薄い本ですから読み終わるまでに時間はかからないと思います。

今のところ、Java 8の内容全体を見渡せる書籍は本書のみだと思いますので、全体を見渡したい方はお手に取って見てください。

2013年12月28日土曜日

はじめてのBootstrapを読みました。

はじめてのBootstrapを読みました。
Twitter Bootstrapの使い方が知りたかったので購入してみました。
全5章のうち、最後の5章は実際にWebサイトを構築するという章だったので、
また時間がある時に読むことにして今回はパスしています。

2章からの基本的なCSSを適用するというところで、ひと通りのUIを体験し、
3章で用意されているコンポーネントが紹介されます。
ここまでの内容だけでも、それなりにモバイルアプリケーションが作れました。
(生徒に文句を言われることもなく…。)

レスポンシブデザインについての記述もしっかりされており、読んで、サンプルを入力するだけでは、難しいかもしれませんが、実際に作る段階になれば、おもしろい事ができるようになっていると思います。

4章からはJavaScript APIを利用した、動きがあるもので、Webアプリケーションに導入するには非常に便利なものが紹介されていました。

ただ、(書籍を読んだからかもしれませんが)本家サイトにある、解説に書かれている事が書籍になったという感じにも受け取れるので、慣れた人にはこの書籍は向かないと思います。また、dotinstallなどにも解説があるそうなので、そちらを見たことがある方は、購入の前に立ち読みをしてみた方がいいかもしれません。

ということで、個人的には非常に有意義なものでした。
ぜひ初心者の方は、読んでみてください。

2013年9月30日月曜日

HTML+CSSデザイン|基本原則、これだけ。【HTML5 & CSS3対応版】を読みました。

HTML+CSSデザイン|基本原則、これだけ。【HTML5 & CSS3対応版】
HTML5のクライアント側の技術も知りたかったので読んでみました。

デザインの基礎知識、プランニングの話題が前半出てくるので
個人的に必要だったマークアップとCSSのレイアウトあたりなどの話題が
なかなか出てこないというのが気になりましたが、内容とサンプルコードが
しっかりしていたので、この本は良かったと思います。

マークアップの部分は、コンテンツの違いが説明されていますし、
スタイルの部分はレイアウトや、インターフェイスの話題が大半を占めています。
しかし、アニメーションやデザイン的な話も書かれているので
個人的に知らなかった事が書かれていて、十分でした。

少し、サンプルコードを触りましたが、物足りないので
もう一度触ってしっかり覚えたいと思います。

気になるのは、編集時のチェックが甘いのか、参考資料の番号が
なかったり、間違っていたりと、読みすすめれば分かる程度の
ことですが、ちょっと残念だったかもしれません。

2013年2月19日火曜日

Jenkins実践入門を読みました。(1)

Jenkins実践入門を読みました。


ただし、途中(5章 JUnitでテストする)までで中断しています。

その理由は、「実際に使ってみないとイメージが沸かない」というのがあって、
(サンプルコードを使えば動きは見れるのでしょうが)
実際のプロジェクトで試してみたいと思って、ひとまず、テストを実行させる所で
中断して、別の書籍を読んでいます。

今回はほぼ環境構築で苦戦しましたが、
Scientific Linux上に構築する場合はパッケージのTomcatを使わずに、公式からダウンロードした物を
利用した方が良いと思います。(パッケージだとtomcatユーザで動作しますが、ログイン不可であるため、gitのコマンドを実行させる事が”そのままだと”できません。)

この書籍はSubversionで動作させる前提で説明していますが、
私はGit Pluginを導入して動作を確認しました。
操作は全く違いますが、書籍と大幅に違う表示になるという事は無いのと、
10章にGitとの連携についても記述があるので、困ることはないと思います。

後は、ant、またはmavenの使い方がわからないと自分のプロジェクトで動きを確認することは
難しいので(antのbuild.xmlや、mavenプロジェクトのpom.xmlあたりの記述がわからない)
同時にantやmavenの書籍を読み、ある程度知っておいた方が良いかもしれません。

という事で、今後もまた読むことになると思うのでタイトルは(1)としました。

関連したGoogle+の投稿

https://plus.google.com/u/0/114183076079015753160/posts/GtRGRr85aQT

https://plus.google.com/u/0/114183076079015753160/posts/AxLauhRC2CG

JenkinsにGit Pluginを導入した。
https://plus.google.com/u/0/114183076079015753160/posts/E8L5bT1Cb3E

Tomcatはパッケージのやつを入れない方がハマらない…。
https://plus.google.com/u/0/114183076079015753160/posts/1949ByXFohW

読み方がわからん…。
https://plus.google.com/u/0/114183076079015753160/posts/Tq5Cx3fHiwf

Antタスクでハマる
https://plus.google.com/u/0/114183076079015753160/posts/cqoQk5kB1JZ
https://plus.google.com/u/0/114183076079015753160/posts/AwsYPtijrVH
やっと解決
https://plus.google.com/u/0/114183076079015753160/posts/3zshn4H4ZSB

2013年2月11日月曜日

JUnit実践入門を読みました。


JUnit実践入門を読みました。
この書籍はJavaで動作するユニットテストフレームワークのJUnitを利用した
テストコードの書き方が書かれていて、私も途切れ途切れに読んだので
この書籍もまた読もうと思っていますが、サンプルコードも掲載されているので
実際に入力して動かした方がいいかもしれません。

特に個人的に発見だったのが、カテゴリ化テストとパラメータ化テストで、
書き方を知らなかったのもありますが、これまではいろいろなテストが混ざってしまって
読みにくく、メンテナンスもしにくかったのですが、この辺りの書き方を利用すれば
もう少しデータの種類も増やせそうだし、テストの分類もできるので
「どのような視点で」テストをするのかが明確にできそうな気がしました。

最後に演習問題のページがあり、そこで如何にJavaの力がないのかを
思い知るのも良いかもしれないです。
(私はJDK1.4あたりで止まってるっぽい感じがしました…)

他の使い方としては、リファレンス的に参照しても使えると思います。
(恐らく私はこの使い方になりそうな気がします)

やっぱり書籍は繰り返し読んだ方が良いですね。

2013年1月7日月曜日

プログラミング言語 Go フレーズブックを読みました。

プログラミング言語 Go フレーズブックを読みました。



この本はGo 1.0に対応した書籍で元々は英語の書籍だったものを+Yoshiki Shibataさんが翻訳して書籍を出版されました。

実際、読んでみた感想としては、「Goの初心者向けではない」です。内容も言語が得意としているからか、goroutineとchannelを使った例が多かったので、マルチスレッドプログラミングの知識(よりも経験、マルチスレッドのプログラムを動かしてみる程度には…かな?)があった方が良いと思います。
それから、ネットワークや、Webサーバの話題がありましたが、OSのシステムコールを呼び出すなどの話題はありませんでした。(ファイルのアクセスは少し出てきています)これも、言語の特性として得意ではないから(?)なのかもしれないですね。最近はGoでWebサービスを作る事例も増えているので、時代の流れには沿っている感じもしました。

したがって、ある程度Goでプログラミングをしてみてからの方が良いかもしれません。

私もよくわかっていなかった部分があったので、いい発見ができたのと、また読み返してみたいと思っています。
(本当はコードの写経とか、動かしながら確認するべきだったのですが、そこまでの余裕がなかったので今回はしていません)

個人的に気になった点は、文章が難しい感じがしました。日本語的におかしいという点はなかったのですが、私の知識が足りないだけなのかもしれません。

GDG中国のイベント等で、噛み砕いた内容のセッションができると良い気もしました。
(やるかどうかはわかりませんがw)

2012年1月22日日曜日

本格アプリを作ろう!Androidプログラミングレシピを読みました。



本格アプリを作ろう!Androidプログラミングレシピを読みました。
この本はインプレスジャパンから発行されている書籍です。

内容は、Android2.3(Gingerbread)で動作するソースコードを元に
記述されています。翻訳担当の方が動作確認とAndroid4.0での動作についても
注釈として記述されているため、最新のAndroidに対するサポートもされています。

概要は以下の内容です。

  1. Androidを始めよう
  2. ユーザインターフェイスのレシピ
  3. 通信ネットワークのレシピ
  4. 端末ハードウェアやメディアと連携するレシピ
  5. データ永続化のレシピ
  6. Androidシステムと連携するレシピ
  7. ライブラリを活用するレシピ
  8. 付録
    1. スクリプト環境の構築
    2. Android NDKで性能を高める
    3. アプリ設計のガイドライン
本書は、基本的な所から、大体のデバイスの使い方、アプリケーションの連携が
説明されています。
文章量は多く感じられますが、詳細に説明されているため、じっくり読んでみる方が
良いと思います。また、レシピ形式で細かく分けられているため、ゆっくり進める事も
可能です。ソースコードもほぼ掲載されているので、写経も可能です。

1点気になったのはリソースの解放処理が省略されている事です。
Android2.3だと不要なのか、本来の機能の説明のために省略したのか
分かりませんが、画像とか、ネットワークリソースの解放の記述が無かったのが
気になりました。

この書籍は今回は献本して頂きましたが、この書籍は購入しても損はしないと
思いました。

Google+に投稿したコメント
https://plus.google.com/u/0/114183076079015753160/posts/ULQoezrSWN4
https://plus.google.com/u/0/114183076079015753160/posts/UPiADfBJ1TG