デブサミ2008ログ

■「Joel on Developers Summit
Joel=Joel on Softwareという本を書いた人。
Joelの携帯電話は$99、iPhoneは$399。
約4倍。
しかし、iPhoneのほうが人気である。
ブランド力もある。
無駄のないデザインがすばらしい。

ソフトウェアも美学を追求せよ。

以下、詳細(ITProのサイト)
http://itpro.nikkeibp.co.jp/article/NEWS/20080213/293602/

■ふつうのRubyプログラマに贈るRubyプログラミング講座
protectedはJavaと動きが違う。ほとんど使わなくていい
module構成はディレクトリ構成と同じにする
moduleのネストは多くて3段階まで


■次世代ウェブフレームワークの幕開け〜ステートフルはじめました/君が僕を望むなら僕は君を忘れない〜
JBoss Seamの宣伝。
セッションの受け渡しは意識しなくていい
プログラマは業務ロジックに集中できる
セッションをたくさん使用するのでメモリが必要
ダブルサブミットの制御や、
入力画面→確認画面→完了画面の時にhiddenに持たせたりという
面倒な作業から開放される。
ログイン情報の持ち回りなども意識せずにできる。

■怪盗RubyからScala座の怪人へ
JavaVMで動く
関数もオブジェクト
Javaのライブラリをそのまま使える。
ScalaJava呼び出しは簡単
JavaScala呼び出しはScalaのほうが高級言語なのでちょっと気をつける必要あり
XMLの読み込みが簡単
柔軟な表現が可能。
Scalaを作っているのはJavaに精通している人で、
今後10年はScalaをメンテしていくので、保障あり。
RailsのようなWebアプリあり。(Lift)

SubversionMaven 2による構成管理:バージョン管理・ビルド・リリース・自動化
Subversionはバージョン管理ツール
CSVを増強したようなもの。
ブランチ(名前は1.0.xなど)とタグ(名前は1.0.1、1.0.2など)をうまくつかう
リリースブランチを切って、リリース作業を行う。
その間、ブランチで行ったバグ修正などが発生するので、trunkにマージする。
(trunkとは、ブランチをきる前のメインのソース。)
Maven2は構成管理に関することがいろいろできる。
ビルドの自動化。
リポジトリからコミットされたファイルを取得し、コンパイル
エラーがあれば、メールを送信、RSS送信など。
Unitテストも自動実行できる。
webページのテストもプラグインを入れればできるらしい。
Java開発なら使うべき。
Eclipseプラグインもある。

デベロッパーテスティング・ライブ - 自信を持ってコードを書くための心・技・体 -
TDD(テスト駆動開発)のデモ。
EclipseJUnitを使用。
FizzBuzzを実際に実装してみる。
コンパイルエラーでレッドバーが出ることを確認。
実装して、グリーンバーを確認。
レッドを期待しているのに、グリーンが出たり、
グリーンを期待しているのに、レッドが出たり。
テストケースは読みやすさを追求し、日本語でテストメソッドを作成。

■日本発、世界に通じるディベロップメント
契約形態の話
使用ライセンスで課金
はじめに動くものをもって行き、どこが違うか、どこを開発するかを決める。
このイテレーションをまわして、お金をもらう。
予算がなくなれば終わる。

■スプーンで飛行船を飛ばそう!〜子どもにソフトウェア開発とは何なのか伝えよう!
二つのスプーンをぶつけて音をだし、超音波で飛行船を制御する。
上昇、下降、右旋回、左旋回など。
新人研修では、プログラムから入るが、
もう1段階手前の、「0」「1」で動く仕組みというのを体感できる。