checkpoint

自分用のIT技術系ノートです。古い情報や間違っている情報もあるので注意。

Developers summit 2010に参加しての個人的なまとめ(一日目)

先日初めてデブサミなるイベントに参加してきました。

世界は変わった。開発の現場はどうか? Developers Summit 2010

日本のソフトウェア開発者が集まるこのカンファレンス。今年で7回目の開催だそうです。
というわけで参加セッションと次回参加に向けてのまとめをここに記しておくことにします。

一日目 2010年2月18日木曜日

  • 【18-D-1】.NET Framework 4概要
    • .NET4の新機能
      • ユーザーエクスペリエンスの向上・UIの向上(WPFASP.NET強化)
      • コア機能の拡充(CLRのバージョンアップ、機能追加)
      • 開発生産性の向上
      • 連続性(異なるプラットフォーム間で同様の開発が可能)
    • CLRがバージョン4.0に。Framework2.0〜3.5は2.0だったので久々のバージョンアップ。
    • 動的言語のサポート。動的言語ランタイム(DLR:Dynamic Language Runtime)搭載。
    • IronRubyIronPythonのサポート。C#VB.NETでの動的変数のサポート。
    • WindowsFormからWPFへの移行を促す強化。Windows7マルチタッチなどをサポート。
    • Visual Studio 2010ならSilverlightの開発環境がついてくる!
    • マルチコアCPUへの対応。並列処理が簡単に行える。Prallel.Forなどのデモ。直列処理より速度が30%向上。
    • マルチスレッドで並列動作するので順番が重要なループなどでは使わないよう気をつける必要がある。

  • 【18-D-2】アジリティを向上させる開発ツールの進化 〜 Visual Studio 2010 の場合

延々とVS2010の新機能などを紹介するのかと思いきや、マイクロソフトでのアジャイル開発の取り組みなどの話題から入ってしばらく戸惑ってしまいましたが、VS2010自体がアジャイル開発を強く意識したものになっているということがよく分かるセッションになっていました。

    • 2008以前はTeam System限定だったTeam foundation Server(TFS)に全エディション対応。というかTeam System自体が無くなった。
    • TFSとVS2010の組み合わせでアジャイル開発を強力にサポートする。採用するプラクティスは自由。特定のプラクティスに特化したものではない。
    • TFSを利用することによってタスク管理、開発者の負荷なども管理、チェックイン時の自動ビルドなど。
    • IntelliTrace機能…デバッグの記録と再実行が可能。変数の状態なども全て再現可能。
    • 各モジュールの依存関係をグラフィカルに可視化する機能もあり。

  • 【18-D-3】ASP.NET MVC 2
    • ASP.NET MVC2の位置付けとしては、Webフォームとの共存がふさわしいのではないか。
    • WebフォームはWindowsFormプログラマがWebアプリケーションのプログラミングに馴染むよう考えられたものだとすると、ASP.NET MVCはWebプログラマをWindowsに誘導するためのものとも考えられる。
    • Model … 固有のサポートはない。MVC2ではAccount Modelsというサンプル実装があるのでそれを利用。
    • Controller、View … スキャッフォールド(足場)を提供。ウィザード形式で雛型というかテンプレート的なものを作成できる。
    • MVC2での機能強化
      • Area … 一つのアプリケーション内に複数のMVCモデルを作る機能。大規模案件に便利。
      • 非同期Controller … 外部サービス利用時など、サーバー処理で時間がかかるものに有効。
      • 強く型付けされたHTMLヘルパー
      • Validation

  • 【18-D-4】Expression Studio 3で作るSilverlight 3

この方一番プレゼンが上手だったんじゃないかと個人的には思います。デモも面白く聴いていて飽きない!

    • Expression Blend3 … Silverlightと.NETのためのUI設計ツール
      • SketchFlowでグラフィカルに画面遷移を設計
      • コードを書かずにインタラクション制御が可能(ビヘイビア)
      • Yahooがヤフオクアプリの設計に使ったとのこと
    • Expression Web3 … Webサイト構築ツール
      • SuperPreviewで複数のブラウザで比較検証(FirefoxはインストールされていればOK。IE6はインストールされてなくてもOK)
    • Expression Encoder3 … ビデオエンコードツール
      • スクリーンキャプチャでアプリケーションの動作を動画で記録できる
    • Expresiion Design3 … ベクターグラフィックツール

  • 【18-D-5】MVP & .NET Community Member`s Lightning Talks

ライトニングトークセッションというものを聞いたのは初めてでしたが、5分という限られた時間で面白い話をしようという緊張感がかえっていい刺激になり、最後まで飽きのこないセッションでした。

    • 【スピーカー:小野修司 氏】 「WCF RIA Servicesってなんだろう?」
      • .NET RIA Servicesと呼ばれていたものが、Silverlight4とともにWCF RIA Servicesとなって提供される
    • 【スピーカー:福岡寿和 氏】 「DBを使った業務アプリ作成の王道を教えます。」
      • "愚直なDB設計" … 正規化はきっちりと!非正規化によるパフォーマンスアップなどは後から考える事
      • "テストしやすい設計" … ロジック統合!DB-Webサービス-クライアント。なぜWebサービス?ユニットテストしやすいから!UIとロジックの分離。
      • "安全な運用" … 配布ミスをなくそう。WEBエイド。
    • 【スピーカー:亀川和史 氏】 「Windows 7のトラブルに立ち向かう〜Troubleshooting Packご紹介」
      • Win7/Server2008R2ではトラブルシューティングツールが追加された。
      • 自動トラブル解析・解決・レポート。PowerShell必要。
    • 【スピーカー:瀬尾佳隆 氏】 「Visual Studioでテストデータを作ろう」
      • SQL Serverでテストデータの生成が面倒。単純な値の繰り返しになりやすい。
      • VS2010 Premium または Ultimateでデータ生成機能があり!正規表現でルール作成して大量にデータを作成。→より現実に近いテストデータが簡単に生成できる。
    • 【スピーカー:冨田順 氏】「Windows AzureでWebサーバーを再発明してみる」
      • クラウドは不自由?Windows AzureならWebサーバーだって作れちゃう!
      • クラウドだとファイルシステムが使えない→BLOBストレージが使える。
      • クライアント-Webサーバー-ファイルシステム → クライアント-WorkerRole-BLOBストレージ。本当にスケーラブルなWebサーバーができた!
    • 【スピーカー:こだかかおる 氏】 「Visual Studio 温故知新」
      • Visual Studio 2010からVisual Studio 97まで遡る!新しい案件ではVS2005(.NET2.0)以降がいいんじゃないかな…

  • 【18-E-6】RDB入門〜アプリケーション開発者が陥りやすいDB開発の落とし穴〜

システム導入後のトラブル事例から学ぶケーススタディ。残念ながら既に知っているか経験済みのケースでしたが、RDBを使ったシステムを開発している人には勉強になるセッションだったのではないかと思います。

    • システムが止まった → トランザクション分離レベルの不用意な再セットが原因。トランザクション分離レベルの理解と管理はきっちりと!
    • パフォーマンスがでない → SQLの無駄な発行が多すぎる。要求仕様をそのままSQLに置き換えるのは危険。
    • Viewのパフォーマンスがでない → 集合関数、集合演算子などを使用している場合は注意が必要。どうしてもというならマテリアライズド・ビューの利用も検討。
    • マルチコアCPUが生かされていない → I/Oがボトルネックになっている。キャッシュサイズを増やすなど、I/Oの速度改善が必要。

  • 【18-D-7】Azure開発の極意

この方のセッションはカジュアルな感じで構えずに聞け、話に引き込まれました。マイクロソフトのスピーカーは全員プレゼンのレベルが異常に高かったと思います。

    • Azureは「アズール」ではなく「アジュール」と読む。(司会のおねえさんはいきなり「アズール」と言ってしまった)
    • .NETはそのままAzureへ(64bit)クラウドだからと言って特別なことは何も無し。
    • WindowsだからサポートもSLAも安心。技術サポート対応可(Premium)
    • Windowsだから動作するアプリケーションも豊富。ADMINがないと動かない、というものでない限り大抵使える。
    • 25時間/月まで無料(初期特別プラン)、MSDNサブスクリプション特典…1インスタンス8ヶ月使い放題 750時間/月
    • 課金はデプロイ時間で。CPU使用率は関係なし。RUNしてなくてもデプロイしていれば課金発生。(1時間ごとの課金)
    • 管理はPowerShellのコマンドレットで可能。+夜間はデータ転送料のみ無料 =自動管理スクリプトで賢く運用
    • Key-Value Storeも利用可。嫌ならSQL Azureもあるよ。SQL Azureはチューニングがきかない。割り当てリソースも非公開。→パフォーマンスを気にする案件では注意が必要。
    • WebRoleはIISを利用するとき。それ以外はWorkerRoleで。
    • WorkerRoleは任意のTCPポートが利用可。ただしメール送信などをする場合、IPがスパマーと隣り合ってしまうと弾かれるかも。
    • クラウドの真価は(カネさえ払えば)無限にスケールする



とりあえず、1日目は以上でした。
流石に一日中椅子に座りっぱなしだとお尻や腰が痛くなってきます。しかも隣の人との距離がほぼ0。みつみつ。
たぶん参加者数の問題だとは思いますが、もうちょっと余裕のある配置にして欲しかった…

お昼ごはんは目黒雅叙園内で食べなくても、周辺に食べるところがいろいろあったので助かりました。
ただ会社も多いのか昼食を求めるビジネスマン達で多くの店が満員状態。

全くまとまりのないまとめになり、オチもありませんが、デブサミに参加する歳は昼メシを食う店と椅子の硬さに気をつけろ!ということでした。どっとはらい

2日目編はまた後日!