2007/12/18

Win2008/VS2008を使用したアプリ開発セミナーに行ってきました

MSDNオフラインセミナー:Windows Server 2008 / Visual Studio 2008 を使用したエンタープライズアプリケーション開発の実践
日時:2007/12/17 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

今日は久し振りにMSDNオフラインセミナーに参加してきました。

最近、勤務地が新宿から遠くなったので足が遠のいていましが、参加するといろいろと勉強になるので、また参加したいですね。

さて、今日はWindows Server 2008とVisual Studio 2008を使用したアプリケーション開発がテーマでした。

講師の方は小高太郎さんでした。今日の小高さんはスーツ姿にサンタ帽という不思議ないでたちでセミナーが始まりました。あ、すぐサンタ帽はとってしまいましたが。

今回は、かなり規模の大きな開発をケーススタディとして取り上げて説明していたので、新しいテクノロジーをどのように活用すればいいのか大分イメージがついてよかったです。

以下、備忘録メモ。

 

■WF(Windows Workflow Foundation)

今までも何回かWFの説明は聞いていたのですが、どうもピンと来なかったのですが、今日の説明でようやく理解できた気がします。

私の理解だと、WFはこんな感じだと思います。

「WFはGUIで業務フローをデザインし、各プロセス(アクティビティ)に業務ロジックを設定する。業務フロー処理はWFに任せてしまい、また変更の起きやすい業務フローをGUIで簡単に修正できるため開発生産性・保守性とも向上する」

業務フローをWFで先に作っておいて、そこに業務ロジックを組み込んでいくんですね。

この基本がブレていたので、今まで理解できていませんでした。

また、.NET Framework3.5には「ReceiveActivity」というアクティビティが追加になっていて、今まで手間がかかっていたWCFとWFの連携が簡単になったそうです。

あと、WFをサーバで動作させるには、ビジネスロジックをホストする必要がありますが、Windows Server 2008では、「WAS(Windowsプロセスアクティブ化サービス)」というものがあり、WASを使うと簡単にサーバにホストできるそうです。

 

■ASP.NET

ASP.NETでは、WFのインスタンスをローカル変数で持ってしまうと、ポストバックの度に変数が初期化されてしまい、WFがうまく動かないとのこと。

これは、WCFの「コンテキスト」を使用すればいいようです。コンテキストは、セッションのような仕組みをWCFでも使えるようにするもので、シリアライズしてセッションに入れておくことができるそうです。

あと、Visual Studio 2008では、ASP.NET AJAXの設定がWeb.configに記述され、Visual Studio 2005よりASP.NET AJAX開発が簡単になった模様。

 

■単体テスト

Visual Studio 2008 Professionalには、単体テスト機能とコードカバレッジ機能がついているようです。以前、コードカバレッジ機能を探したときに見つからなかったのですが、また調べてみようと思います。

(2007.12.18追記)
やっぱりないですね。いくら探しても見つからないので製品情報を確認したら、そももそProfessional版にはコードカバレッジ機能が付いていませんでした。リリースまで紆余曲折があったのかもしれませんね。

 

■高可用性

OS標準機能の「ネットワーク負荷分散(NLB)」を使用して、開発環境でも負荷分散で動作確認する方法のデモがありました。この発想は全くなかったので、非常に参考になりました。

また、クラスタ構成でASP.NETでセッション管理を行うと、サーバごとにセッション管理をしていてはうまくいきません。セッションを複数のサーバで共有するには以下の方法があるとのこと。

  • セッション用のサーバ(StateServer)を立てる
  • SQL Serverに永続化する
    • 無効なセッションはSQL Server Agentが削除してくれるらしい。すばらしい。」
  • 他のDBで永続化する

 

■関連セミナー

 

| コメント (3) | トラックバック (0)

2007/09/20

REMIX07 TOKYOに行ってきました

REMIX07 TOKYOに行ってきました。 

Silverlightの情報を収集するために参加したのですが、その目的は十分に達成できたと思います。

株式会社アークウェイの森屋英治さんのお話は、微妙な笑いがあり、内容もとてもためになりますね。

家に帰ってきて、IT系のニュースをチェックしていたら、ITproでこれでもかというくらいREMIXの記事がアップされていて、ちょっとびっくりしました。

以下、ちょっとした備忘録メモです。

 

■備忘録メモ

  • Silverlight
    • クライアントサポート環境
      • Windows
        • IE / FireFox
        • 将来はOperaも対応予定らしい
      • Mac OS X
        • Safari / FireFox
        • FireFoxいつの間に?
      • Linux
        • Moonlightでサポート
        • Mozilla系ブラウザサポート?
      • Windows Mobile
        • Silverlight for mobie を開発中らしい
    • SilverlightはWeb or Desktopの二者択一に新しい選択肢を追加
    • XAMLは、"ザムル"と"ザメル"の2通りの読み方がある?
    • VSのオブジェクトブラウザはお友達
      • mini-CLRのサポート範囲チェック
    • x:Nameは大事(like 要素id)
    • Silverlight <-> JavaScript/DOMは相互にアクセス可
    • LINQ to Objects / LINQ to XML サポート予定
    • IsolatedStrageでローカルファイルへアクセス可
    • Silverlight Architecture Overview
    • SilverlightはWMVにアルファ情報を持てない → 大変らしい
    • Silverlightはオーバレイインターフェースが簡単(Flash大変)
    • YouTubeにSilverlightの動画あり
    • 書籍『Microsoft Silverlight完全解説』 - 2007/9/26発売予定
  • Virtual Earth

 

■Silverlightサイト

 

■REMIX07 ニュース

 

■関連セミナー

 

| コメント (0) | トラックバック (1)

2007/08/31

LINQのセミナーに行ってきました

MSDNオフラインセミナー:LINQ の利用による Web アプリケーションのデータドリブン開発
日時:2007/08/30 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー 

今後、.NETの開発では大きなインパクトを持つであろう、LINQ (Language Integrated Query) のセミナーに参加してきました。 

LINQは、O/Rマッピング的な機能もありますが、それは論理レベルでの話で、LINQ自体はもう1つ上のレベルの概念レベルのテクノロジーになるようです。 

これにより、DB/XML/Objectといった異なるデータソースへのアクセスが可能になるようですね。 

LINQのテクノロジーは、大きな可能性を秘めているとは思いますが、DBの更新系がサポートされていないことなどから、まだ使いどころがよく分かりません。。。 

ふと思うことをつらつらと。 

  • 異なるデータソースへ統一したアクセスが可能になるのは魅力 
  • 実行時ではなく、コンパイル時にDBアクセスなどの文法チェックがされるのもいい 
  • 参照系に限ってうまく使えば、確かに生産性が上がりそう 
  • とはいえ、要員の教育工数はどうするのか? 
  • 現時点では、データ層のDB参照系にLINQを組み込むことが考えられるが、更新系と異なるテクノロジーは、かえって工数を増さないか?もしくは混乱が起きないか? 
  • LINQは、.NET Framework3.5ベース 
  • Windows Vistaのデフォルトは.NET Framework 3.0 
  • Windows Updateにより、Windows XPにも、今は.NET Framework 3.0が入っていることが多い 
  • LINQをクライアントサイドで使うためには、.NET Framework 3.5の配布が必要だが、いろいろ面倒かなぁ。 
  • .NET中心の組織ではいいけれど、LINQによりMicrosoftの技術にロックインされるのは微妙 
  • ローレベルでも国際標準に従っている方が、他のプラットフォームの技術に適応しやすい面は考慮しなくても大丈夫か? 
  • SQLインジェクションへなどへのセキュリティ対策は?

LINQの可能性は認めつつも、現業で採用するには、まだ分からないところが多いですね。 

これは、しっかり勉強しないと。 

 

以下、備忘録メモ。 

  • LINQは、オブジェクトデータモデルの構造表現力と、リレーショナルモデルの一括処理能力を実現する概念レベルのテクノロジー 
  • LINQは、概念レベルの埋め込みクエリ処理。論理レベルではない。 
  • 基本は拡張クエリ式を使用。その方が分かりやすい。 
  • ラムダ式は必要なときのみ使用がいいらしい。 
  • LINQ to XML では、複数のXMLをequals句でJOINできる? 
  • LINQからストアドを呼び出せる 
  • 通常は問題はないが、DBMLファイルにも限界がある 
  • 複雑なデータは、ADO.NET Entity Frameworkを使用 
  • LINQ to SQLで正式サポート対象はまだ参照のみ 
  • 現在のLINQ to SQLでも更新処理は一応できる

(2007.9.16追記)


 

■関連サイト 

■関連セミナー 

 

Tags: ,

| コメント (2) | トラックバック (0)

2007/08/28

ASP.NET モバイルセミナーに行ってきました

MSDNオフラインセミナー:ASP.NET モバイル Web アプリケーション再入門
日時:2007/08/27 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

ASP.NETでモバイルサイトを作るにはどうすればよいのかを知りたいと思い、セミナーに参加してきました。

ASP.NETでモバイルサイトを作れば、デバイスの違いを気にしなくていいという期待がありましたが、さすがにそれはないようです。

ASP.NET1.xのころは、Micorsoftでモバイルデバイスのアップデートを行っていたのですが、今は自分でモバイルデバイス用の設定を作らなくてはいけません。

また、標準で用意されている機能より凝ったことをしようとすると、とたんに難しくなるようです(既存コントロールの拡張とか)。 

モバイルデバイスに合わせたタグを自動出力してくれるのはありがたいのですが、凝ったことをするにはその自動処理の仕組みも理解する必要がありそうです。

以下、備忘録メモ。 

■ASP.NETモバイルのプロジェクトの作成方法

ASP.NET モバイルは、VSのバージョンによって作成方法が異なる。

  • VS.NET2002
    • Mobile Internet Toolkit をインストール
    • 「ASP.NET モバイルWebアプリケーション」でプロジェクト作成
  • VS.NET2003
    • 「ASP.NET モバイルWebアプリケーション」でプロジェクト作成
  • VS2005
    • 「新しいWebサイト」でプロジェクト作成
    • 「新しい項目の追加」で下記を追加
      • モバイルWebフォーム
      • モバイルWeb構成ファイル

■ASP.NET モバイルの特徴

  • 1ページに複数のフォームを並べることが可能
  • モバイルデバイスに対応したマークアップを自動出力
  • モバイルデバイスごとに処理を変更可能

■モバイルWebコントロール

■独自コントロールの作成

独自にコントロールを作るには、以下の2つの方法がある。

  • ユーザーコントロール
  • カスタムコントロール

■既存のコントロールの拡張

できなくはないが、デバイスアダプタを作成する必要があり、かなり難しそう。

■モバイルデバイス

モバイルデバイスの扱いについては、@ITの下記連載を参照。セミナーの方が詳しいが割愛。

機種情報の追加情報。

モバイルデバイスの機種情報。

 ユーザエージェント情報。

 機種情報。

エミュレータ。

■実機検証

Soft Bankでは「Soft Bank Solution Provider(SSP)」になれば、無料で検証センターを使用できるらしい。

有料だが「ケータイラボ」だと、テスト用の実機を貸し出ししてくれるらしい。これはいいかも。

■関連サイト

■関連エントリー

 

| コメント (0) | トラックバック (0)

2007/08/27

Tech・Ed 新聞がPDFで公開されています

Tech・Ed 2007 Yokohama 「Tech・Ed 新聞」 via 中の技術日誌ブログさん

Microsoftのサイトにて、Tech・Ed 2007 Yokohamaで配布されていた「Tech・Ed 新聞」が公開されています。

Tech・Ed の雰囲気を知るにはちょうどいい資料だと思います。

 

| コメント (0) | トラックバック (0)

2007/08/25

Tech・Ed 2007 Yokohama に行っていました

8月21~24日の4日間、MicrosoftのTech・Ed 2007 Yokohama に行っていました。

今回は、Tech・Edに初めての参加でしたが、おもしろかったですね。

Tech・Edでは1つのセッションが75分なのですが、数えてみたら21セッションに参加していました。合計で、約26時間になります。

セッションの内容をいろいろ聞いていると、、今はテクノロジーの大きな転換期で、あと1~2年くらいで、システム開発の現場も、随分と変わっていくだろうと感じます。

Microsoftだけでも、非常に多くのテクノロジーが登場しますが、その中でも、以下のものは注目だと思います。

  • LINQ(Language Integrated Query)
  • Silverlight
  • WCF(Windows Communication Foundation)
  • VSTO(Visual Studio Tools for Office)
  • Office Open XML File Formats

まだ、情報ベースの理解なので、うまく説明はできないのですが、概要は以下のような感じかと。

あえて、WPF(Windows Presentation Foundation)は外してますのであしからず。

 

■LINQ(Language Integrated Query)

LINQは、.NET Framework 3.5から登場したデータアクセス方式です。

LINQはSQL Server/XML/Object/LDAPなどのデータ形式に、統一した方法でアクセスすることができます。

例えば、SQL Serverへからデータ取得を行うには、以下のように書きます。

var titles = from t pubs.titles
                  where t.price >= 20.0M
                  select t;

 

コードに直接、データアクセスのステートメントが書かれていますね。

このメリットは、テーブルのフィールド名などがインテリセンスで表示されることと、通常のSQLのように実行時ではなく、コンパイル時にエラーチェックされることです。

しかも、 LINQ(正確にはLINQ to SQL)では、LINQのステートメントを最適なT-SQLに変換して実行してくれます。リレーションがからんだ複雑なものも、もちろんOK。

そして、ObjectにもLINQは同じようにアクセスができます。例えばDataSetに対しても、LINQで条件を指定してデータ抽出なんかできたりします。今までは、一度取得したDataSetは、自分でプログラムを書いて処理していたので、これは便利ですね(DataViewとかあったと思いますが)。

なんでこんなことができるかというと、LINQは、リレーショナルデータモデルやオブジェクトデータモデルのような「論理データモデル」ではなく、上位の「概念データモデル」のレベルで処理を実行しているため。

残念ながら、.NET Framework 3.5時点での、LINQ to SQL では更新機能はありませんが、講師の赤間信幸さん曰く「LINQは超大型技術」というように、まさにその通りで、今後の大きな期待が持てる技術だと思います。

(2007.8.26更新).NET Framework 3.5時点でのLINQ to SQLでも、更新機能はあるようです。小野@どっとねっとふぁんさん、情報ありがとうございます。 

 

■Silverlight

Silverlightは、いま非常に注目されていますね。

詳しいことは、こちらを見ていただきたいのですが、Silverlightも大きな可能性を感じます。

Silverlightのインパクトはこの辺でしょうか?

  • アニメーションなどFlashに負けない高度な表現力
  • ブラウザのプラグインとして動作し軽く早い
  • クロスブラウザ(IE/FireFox/Safari)
  • クロスプラットフォーム(Windows, Mac OS X)
  • 3D以外は、WPFと同じようなことができる
  • C#,VB,JS,LLなど複数の言語が使える
  • XAMLを介することで、デザイナーと開発者がシームレスに協業できる
  • デザイナー用のExpression, 開発者用のVisual Studioとツールも分かれる
  • DRMに対応

 

■WCF(Windows Communication Foundation)

WCFは、.NET Framework 3.0の時点で登場しましたが、WCFの持つポテンシャルも高いと思います。

WCFはサーバサイドテクノロジーですが、1つのプログラムを書けば、後は設定を変えるだけで、Webサービスでリクエストを受けたり、MSMQ/.NET Remotingなどのリクエストも受けることができるイメージかと。

で、.NET Framework 3.5のWCFは、REST/JSON/RSS/ATOMなどもサポートし、より幅が広がったようです。

 

■VSTO(Visual Studio Tools for Office)

業務アプリケーションにおける、VSTOのインパクトも大きそうです。

新しいVSTOでは、Office2003/2007のアドインを作成できるだけでなく、ClickOnceにも対応しました。これで、Officeのアドインでも配布作業が大幅に楽になりますね。

また、Officeのアドインには、WPFを組み込むこともできたりして、かなりいろいろできそうです。

なんだかんだいって、ユーザはOfficeを使い慣れてますし、Excelにデータが表示されれば、再加工も簡単ですからね。

 

■Office Open XML File Formats

これはすごーく地味ですが、業務アプリケーションの作成では、かなりの威力を発揮する可能性があります。

Open XML File Formatsは、Office 2007で標準で使用されるファイルフォーマットなのですが、XMLベースで作られているため、プログラムから更新することができます。現在は、Word/Excel/PowerPointで使えます。

しかも、過去のOfficeファイルに変換する方法もあるようなので、結構いい感じ。

サーバサイドで、ExcelなどをOLE経由でコントロールすると、サーバが落ちますからね。

サーバサイドで、うまく使えると面白そうです。

 

まあ、そんなこんなで、疲れたけれども、楽しい4日間でした。

 

| コメント (2) | トラックバック (0)

2007/07/31

Windows Mobile アプリケーション開発セミナーに行ってきました

MSDNオフラインセミナー:Windows Mobile アプリケーション開発
日時:2007/07/30 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

 W-ZERO3やEM・ONEなどで、普及しつつあるらしいWindows Mobileのアプリケーション開発セミナーに行ってきました。

現状においては、Windows Mobile端末に触れることはないのですが、いきなり話がやってきてあわてるというのはいかにもありそうなので、折角の機会なので参加してきました。

今回の講師の方は、エバンジェリストの高橋忍さんでした。セミナー案内の写真とは随分印象が違っていたので、ちょっと驚きました。

さて、Windows Mobileのお話を聞いてデモを見たのですが、これならモバイル開発もできそうかもと思いました。

Windows Mobileの開発は、Visual Studio 2005(以降VS2005)を使用するのですが、.NETの開発スタイルで行えるので、モバイルアプリケーションの開発がかなり効率的にできそうです。

GUIによる画面作成はもちろん、エミュレータを使用したデバッグもできますし、ビルド時にモバイル端末にプログラムを送り込むこともできたりして、なかなかよさそうな感じでした。

また、モバイル端末では画面が回転するのですが、それもVS2005でGUIで動作確認できるのがいい感じです。

まあ、実際に開発を行えば、それ相応の苦労はあるでしょうが、業務アプリケーションの構築を考えるなら、結構いい選択肢かもしれません。

 

以下、備忘録メモです。

  • Win32 > .NET Compact Framework
    • Compact FrameworkはWin32 APIの機能を網羅しているわけではない
    • できないことも結構あるらしい
    • 実際のアプリケーションとしては問題のないレベルの模様
  • Compact Framework
    • .NET Frameworkのサブセット
    • 動作原理は同じで、初回起動時が遅いことも同じ
    • XML, Webサービス, MSMQ 、Threadなどもサポート
    • SQL Server 2005 Mobile Edition (無償)
    • SQL Server 2005 Compact Edition (無償)
      • SQL Server 2005 Mobile Edition の後継らしい(参考
      • デスクトップでも使えるようだ
  • Windows MobileとCompact Frameworkは別物
    • レイヤーとしては、Windows CE → Windows Mobile → Compact Framework
  • 開発環境
    • VS2005 Standard 以上
    • Windows Mobile SDKをインストール(5.0 or 6.0)
    • Windows Mobile 各国語版エミュレータイメージをインストール(5.0 or 6.0)
  • エミュレータ
    • Active Syncで端末をつなぐと、実機にビルドしたアプリケーションを転送&実行
    • デバッグが可能
    • バッテリーの残り時間もエミュレート可
    • 実機より遅い
    • エミュレータはカスタマイズ可能
      • VS2005のツール→オプション→デバイスツール
      • 表示(背景)が少し崩れるが、使用上は問題なし
    • エミュレータマネージャ(dvcemumanager.exe)
      • 「クレードに接続」を選ぶと、PCとエミュレータがActive Syncで接続可能
  • フォーム
    • 画面の回転には、DockプロパティやAnchorプロパティを使用
    • ペンのタップはマウスの左クリックと同じ
  • その他
    • 実機に応じた開発の仕方が必要

 

■オンラインリソース

 

| コメント (0) | トラックバック (0)

2007/07/23

マイクロソフトの開発プロジェクト運営のしくみセミナーに行ってきました

MSDNオフラインセミナー:マイクロソフトの開発プロジェクト運営のしくみセミナー(開発ツール編)
日時:2007/07/23 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

本日は、Microsoftで開発しているツールで、どのようなプロジェクト管理を行っているかというセミナーに参加してきました。

このセミナーは、3月のセミナーの続編で、講師の方は佐藤精一さんです。

今回は、テストで発見されたバグをどのようにMicrosoftで管理しているかというお話でしたが、いやぁ参考になりました。

システム開発において、バグをどのように管理するのかというのは、なかなか表に出てこないノウハウですよね。うまくやっている組織は当然のようにやっていますが、うまくいっていない組織は手探りで苦しんでいるという感じでしょうか。

Microsoftでは製品リリースが近づいてくると、「エンドゲーム」というフェーズに入り、バグに優先度を付けて、徹底的にバグ修正をするそうです。

前回のセミナーのお話では、「エンドゲーム」ではプロジェクトリーダークラスが集まって、この優先度を付ける会議を毎日行うという徹底ぶりとのこと。

しかも、「エンドゲーム」にはいくつかのモードがあり、「承認モード」に入ると、プロジェクトのリーダーの承認がないと、チェックインすらできないそうです。

Windows2000以前のMicrosoft製品と、今のMicrosoft製品の品質には大きな開きがあると思っていますが、こういったプロジェクト管理の部分も随分進歩したんでしょうね。

技術セミナーではないので、詳しいことは書きづらいのがちょっと残念ですかね。

 

■関連サイト

■関連セミナー

■関連エントリー

 

| コメント (0) | トラックバック (0)

2007/07/21

Silverlightセミナーに行ってきました

MSDNオフラインセミナー: Microsoft Silverlight が切り拓く Web の世界
日時:2007/07/20 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

最近、Flashのキラーアプリケーションとして注目を集めている、Silverlightのセミナーに参加してきました。

セミナー講師の方は、大野元久さんでした。大野さんは、このセミナーの準備のために、前日は4時まで頑張ったそうです。お疲れさまでした。m(_ _)m

今まで思っていたより、Silverlightが今後のWeb業界に与えるインパクトは大きいだろうと感じました。特に、Webでコンテンツを配信するようなビジネスは、Silverlight1.1のリリース(2008年初頭?)辺りから、大きく変わるかもしれません。

以下は、備忘録メモです。

  • Silverlight概要
    • クロスプラットフォーム
      • クライアントOS → Windows, MacOS X
      • Webサーバは限定しない → Linux等もOK
    • 対応ブラウザは、IE, FireFox, Safari
    • XAMLによりデザインと開発が分離可能に
    • JS,C#,VB,Ruby,Pythonといった言語での開発
    • メディア配信への対応
      • 動画(WMV,VC-1)・音声(WMA,MP3)
      • HTTPのプログレッシブダウンロード
      • ストリーミング配信(要Windows Media Server)
      • DRM対応 ← このインパクトは大きい
    • 低コスト
      • ストリーミング配信に追加コスト不要
      • Expression Studioは某ツールより安いらしい
  • Silverlight 1.0
    • JavaScriptのみ
    • テキストは日本語未対応
    • DRMは未装備
  • Silverlight 1.1
    • CLR対応 → C#, VBで開発可能に
      • .NET Frameworkのサブセット
      • mini-CLR ?
      • 処理速度が速い
    • DLR対応 → Ruby,Pythonで開発可能に
    • 日本語テキスト対応予定
    • DRM対応
  • WPFとの比較
    • 一部コントロール未対応
    • 3D, GPU未対応
    • オフラインは×
    • 逆に言えば、それ以外はできる
    • しかも、Silverlightはクロスプラットフォーム
  • Silverlight Streaming by Windows Live
    • Microsoftによるストリーミングサービス(α版)
    • 4GBの領域+10万回/月の再生が無料(商用OK)
    • 1ファイルは22MBまで
    • Silverlightからのみ呼び出し可
    • CDN(Content Delivery Network)による配信

 

■関連サイト(Microsoft系)

■関連サイト(その他)

■関連セミナー

■関連エントリー

 

| コメント (0) | トラックバック (0)

2007/07/11

SQL ServerのJIS2004対策セミナーに行ってきました

MSDNオフラインセミナー:SQL Server 2000/2005 [JIS X 0213:2004 対応に関するガイドライン] 技術ポイント解説 
日時:2007/07/09 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

最近は、JIS2004にアプリケーションはどのように対処すればよいのか調べていますが、影響範囲が大きすぎて、アプリケーションの入り口で、問題を起こす文字をはじく方向に傾きつつ今日この頃です。

 さて、Microsoftから公開されている、下記ドキュメントの解説を行っていただけるということで、セミナーに行ってきました。

いやぁ、このドキュメントは、文字コードにもともと詳しいのならともかく、一度解説を受けないと理解するのは難しいですね。 

まず、JIS2004には3つの文字分類があります。

  • 標準字形
    • JIS2004で字形が変わった文字
    • 「MSゴシック明朝JIS04字形とJIS90字形.pdf」を参照
  • 補助文字
    • いわゆるサロゲートペア文字
    • 「MSゴシック明朝V5.00フォントアップデート情報.pdf」を参照
  • 結合文字
    • 通常の文字の「か」などに、「゜」を結合した文字
    • 「MSゴシック明朝結合文字.pdf」を参照

なお、PDFの資料は下記からダウンロード可能です。

 

そして、下図がなかなか難しい。

JIS2004
『SQL Server の JIS2004 対応に関するガイドライン』15頁より

この図が意味するのは、以下のようなことです。

「MS*」フォントも、「メイリオ」フォントも、JIS2004をサポートした上で、中国語のみのフォントもサポートしていますが、両者は微妙にサポートしている文字が違います。

そして、Vistaの中国語フォントは、JIS2004をサポートした上で、「MS*」フォントと「メイリオ」の両方の中国語のみのフォントフォントをサポートしています。但し、Vistaの中国語フォントは、結合文字をサポートしません。

 

あと、下図はJIS2004の特殊な文字をまとめた表になっており、JIS2004の検証用として使用できます。説明を聞くまでは、そんな大事なものとは気がつきませんでしたが。。。

JIS2004用検証文字
『SQL Server の JIS2004 対応に関するガイドライン』13頁より

 

また、Unicode, JIS, SQL Server の内容やリリース時期を、よく理解しておく必要があるかと。

SQL Server Unicode JIS2004
2000 Unicode2.0 (1996年) 仕様のみサポート
2005 Unicode3.2 (2002年) 文字も割り当て

 

SQL Server 2000は、Unicode2.0をサポートしているので、JIS2004を扱うことは一応できますが、補助文字(サロゲートペア文字)などは文字として割り当てられていない(重み値がない)ため、照合順序によっては、正しく補助文字を扱うことができません。

じゃあ、SQL Server 2005は安泰かというとそうでもなく、結合文字には重み値が割り当てられていないため、照合順序によっては、正しく結合文字を扱うことができなかったりします。

 

そして、問題をさらにややこしくするのが、SQL Server 2000/2005 両方で、Transact-SQL の文字列操作関数が補助文字と結合文字を正しく扱えないことです。

一応、SQL Server 2005には、SQL CLR用の「StringManipualteサンプル」はありますが、こういったものを使用しないとJIS2004に対応できないのは、しんどいですね。

他にも、照合順序が関連してきたりして複雑になります。

 

うーむ。JIS2004対応は、本当に手強いですねぇ。。。

でも、セミナーに参加してよかったです。

自力でここまで理解するのは、ちょっと難しいですからね。

 

■関連サイト

■関連セミナー

■関連エントリー

 

| コメント (0) | トラックバック (2)

2007/06/09

Web標準セミナーに行ってきました

ミツエーリンクスセミナー:Web標準セミナー(基礎編)
日時:2007/06/08 13:30~15:00
場所:新宿スクエアタワー

最近は、Web標準に準拠したサイトを構築する必要性がうたわれていますが、その本当の価値が分からなかったため、  Web標準セミナーに参加しました。

このセミナーの講師の方は、ミツエーリンクス取締役 兼 アーキテクトカンパニー Web開発グループ Web標準チーム フロントエンド・エンジニアである、木達 一仁さんでした。

木達 一仁さんは、講演や執筆などの活動もされているようで、Web標準では有名な方のようですね。セミナーでのお話も、丁寧で分かりやすかったです。

さて、Web標準セミナーで、なるほどと思った点をメモしておきます。

 

■Web標準普及までのいきさつ

IE3やNetscape4.xで、CSSがサポートされるようになったが、実装が不十分の上にブラウザ戦争が起きたため、Web標準を使おうという人は少なかった。

そして、WYSIWYGのHTMLエディタ普及により、見た目がよければOKで、文書構造を意識しないような傾向があった。

しかし、WIREDが2002年10月に大規模商用サイトとしては初めてWeb標準に準拠し、フルCSSレイアウトでリニューアルしたことで流れが変わった。

しかも、WIREDは、当時、ユーザ数がまだ多かったNetscape4.x ユーザには、CSSを適用しない画面を提供するという決断をし、後に評価されることになった模様。

そして、Web標準に準拠したモダンブラウザの登場や、ブログの隆盛がWeb標準普及の後押しをした。

なお、モダンブラウザとは以下のもの。

  • Mozilla 1.0以上
  • Netscape 6以上
  • Win IE 6以上
  • Mac IE 5以上
  • Opera 7以上
CSS Nite Vol.3 - Web標準のススメ』より

 

■Web標準のメリット

現在は、Webアクセシビリティへの対応への社会的ニーズが高まっている。

WCAG1.0の勧告や、米国の「リハビリテーション法 第508条」は、Webアクセシビリティへの対応を強力に後押し。

日本でも、JISX8341-3 「高齢者・障害者等配慮設計指針-情報通信における機器,ソフトウェア及びサービス-第3部:ウェブコンテンツ」(通称「WebコンテンツJIS」)や、障害者基本法改正(2004年6月)で、Webアクセシビリティ対応へのニーズが高まっている。

Web標準は、Webアクセシビリティに配慮した仕様であるため、Web標準に準拠することで、基本的なWebアクセシビリティを確保できる。

以前は、Web標準に対応することでSEO効果があると言われていたが、現在は検索エンジンの性能があがったため、効果があるかは不明。

SEOにおけるWeb標準準拠は、メリットを生むというよりデメリットを生まないため取り組みになりつつあるようだ。

また、Web標準に準拠することで、サイトのファイルサイズを削減したり、標準規格に従うことで、ベンダー独自の規格に振り回されないメリットなどもある。

 

■Web標準のデメリット

では、Web標準準拠に何も問題がないかといえば、さすがにそんなに甘くはなさそう。

ブラウザのバグや解釈の違い、学習コスト、業務プロセスの修正など、いくつかの課題がある。

 

■(X)HTMLの歴史

HTML 3.2 1997/01/14 勧告
HTML 4.0 1998/04/24 勧告
HTML 4.01 1999/12/24 勧告
XHTML 1.0 2000/01/26 勧告
XHTML 1.1 2001/05/31 勧告
XHTML 2.0 仕様策定中
HTML 4.01 後継仕様 2010年勧告に向け開発中

 

■CSSの歴史

CSS Level 1 1996/12/17 勧告
CSS Level 2 1998/05/12 勧告
CSS Level 2.1 2006/11/06 勧告候補
CSS Level 3 仕様策定中

 

■感想

Web標準というと、従わなければならないという、何か押し付けがましい印象がありましたが、ビジネスという世界より、もっと広い世界を見ている仕様になっているようですね。

もちろん、ビジネスである以上、費用対コストの問題は出てくるのですが、コストが妥協範囲であれば、Web標準に準拠したほうがいいだろうと感じました。

Ajaxの開発などでは、Web標準準拠でないと話にならなかったりしますし。

あと、このセミナーの参加者は、Webデザイナーの方が多かったのか、女性が7~8割もいて、普段の技術セミナーとは随分雰囲気が違ったのが印象的でした。

普段の技術セミナーだと、9割8分くらいは男性ですからね(笑)。

 

■関連サイト

 

Tags:

| コメント (0) | トラックバック (0)

2007/06/07

.NET Framework 3.0によるサーバアプリケーション開発セミナーに行ってきました

MSDNオフラインセミナー:.NET Framework 3.0によるサーバアプリケーション開発セミナー
日時:2007/06/06 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

.NET Framework 3.0のセミナーがあるという事で、行ってまいりました。

本日の講師の方は、松崎剛さんです。

いやぁ、今日の内容は難しかったですw

多分、VS2005を使って、エンタープライズの分散システムを開発しているような方にはピンとくると思うのですが、私のようなヘタレではなかなか厳しい内容でした。

なので、備忘録メモを残しますが、間違いがあった際にはご勘弁ください。

 

■.NET Framework 3.0概要

システムの可変の部分と不変の部分を切り分け、可変の部分をリプレース可能な仕組みを作るという考え方。

 今までのMicrosoftの製品のように、「使えば便利になる」とは限らず、「どこで使うか」が大事になってくる。間違って適用すると、コスト増につながりかねない。

「WS-*アーキテクチャ」の中の「WS-Atomic Transaction」を使用すると、Webサービスをトランザクションに参加させることができる。

Windows Server 2008では、ファイル更新をトランザクションに参加させることができるが、Windows Vistaでも実はできる。

 

■Windows Communication Foundation (WCF)

今までの開発では、通信方法が変わるとプログラムも変更する必要があったが、WCFではプログラムは通信方法に依存しない。設定ファイルを変更するだけで、通信方法を変更できる。

 

■Windows Workflow Foundation (WF)

WFはモデル駆動でプロセスを記述できる。デザイナ上でモデルを変更すれば、フローを変更することができる。

WFは、通常のアプリケーションの内部にも組み込むことができる。

WFのエンジンは空っぽのフレームワークのようなもの。

よく使用するようなアクティビティは用意されているが、独自のアクティビティも作成することができる。

WFが製品ではなく、.NET Framework 3.0に組み込まれたのは、WF自体がフレームワークで、システムのどこででも使用できる性質であるため(らしい)。

 

■連携テクノロジー

Orcas (Visual Studio 2008)では、WCF/WFを組み合わせた開発が簡単に行えるようになる。

WCFはAJAXとも連携が可能。ブラウザから直接、AJAXの通信でWCFを呼び出せる。そのため、PHPなどからもWCFを呼び出せる。

 

■感想

WCFやWFを活用すると、今までより柔軟なシステムを構築することができるだろうと思いました。

ただ、システムの全容をつかみ、適切に技術を適用するのは、結構大変だろうとも思いました。

WCFやWFは使わなくても、今までと同様の開発はできますが、今後のことを考えるのなら、取り組む必要および価値があるものだと感じます。

 

■関連サイト(Microsoft関連)

 

■関連サイト(その他)

 

■関連セミナー

 

#関連セミナーをまとめてて、自分でもよく行くよと思ったりしてw

 

| コメント (2) | トラックバック (0)

2007/05/31

Windows Server "Longhorn" 概要セミナーに行ってきました

Microsoftセミナー:開発者のためのアプリケーションプラットフォーム Windows Server "Longhorn" 概要セミナー
日時:2007/05/30 10:00~17:00
場所:新宿NSビル

先日、Longhornの正式名称が「Windows Server 2008」だと発表され、リリースも遠い未来ではなくなったので、Windows Server Longhornのセミナーに行ってきました。

本日の講師の方は、NECラーニングの杉岡しづかさんでした。

杉岡さんは、Tech・Ed 2004でスピーカーを務められたり、MSDN Online Event で解説もされているようですね。

セミナーのスライドの中で引っ掛かりそうな用語を的確に説明したり、スライドの内容をかなり詳しく説明していただけたので、分かりやすくてよかったです。

さて、Windows Server 2008で、おもしろいと思った内容を、備忘録程度にメモしておきます。

■Windowsサーバーコア

Windowsサーバーコアというのは、WindowsなのにGUIをインストールしないオプションで、操作はすべてコマンドラインで行う機能です(別のマシンからはGUIで操作可能)。

GUIを使わないことで、使用リソースを抑えパフォーマンスが向上するとのこと。また、インストールされる機能が少ないことで、攻撃を受けにくくなりセキュリティも向上します。

サーバの用途としては、DNS, DHCP, File, Active Directoryなどがあります。

注意点としては、.NETのプログラムやGUIツールは一切動作しないことや、インストール後にGUIに戻すことはできないため、再インストールになることです。

■.NET Framework 3.0

Windows Server 2008では、.NET Framework 3.0が最初からインストールされていますが、デフォルトでは無効になっているため、使用する際に有効にする必要があります。

.NET Framework 3.0は、.NET Framework 2.0の機能はそのままで、以下の機能が追加されています。

  • Windows Communication Foundation (WCF)
  • Windows Presentaion Foundation (WPF)
  • Windows Workflow Foundation (WF)
  • Windows Cardspace (WCS) etc

なお、.NET Framework 3.5では、AJAX/JSON/RSS/Atom/RESTなどがサポートされるとのこと。

■IIS7.0

意外なお話ですが、IIS6.0では、深刻なセキュリティパッチはリリースされなかったそうです。

まあ、OSは除いてのことでしょうが、IIS4.0, IIS5.0の頃のセキュリティホールの嵐の時代から考えると、信じられないくらいの進歩ですね。「Trustworthy Computing」の取組成果でしょうか。

IIS7.0では、今まで1つのモジュールだったものを、40程度のモジュールに分割して、必要なもののみ組み込むことができるようになったそうです。これにより、パフォーマンスとセキュリティが向上します。

また、IISとASP.NETのアーキテクチャが統合され(統合モード)、非常にシンプルになったことにより、性能がアップしただけでなく、ASP.NETから全ての要求を処理するプログラムを書けるようになった模様。

おもしろかったのが、IIS7.0では、サイトの設定がASP.NETのweb.configに記述されるようになったことです。これにより、ASP.NETのアプリケーションでは、サイトのプログラムをコピーするだけで、IISの設定も別サーバに反映することができるようになります。

Webアプリケーションの設定画面を、IISの管理ツールに組み込めるというのも、結構便利かもしれませんね。

■ターミナルサービス

Windows Server 2008のターミナルサービスは、随分変わりました。

まず、TSゲートウェイというサーバを立てると、LANにあるターミナルサービスを、社外からSSLを利用してアクセスできるようになりました。

今まではVPNが必要でしたが、簡単にターミナルサービスをインターネット経由で利用できます。

まあ、セキュリティ的にどうかは、いろいろ考える必要はあるでしょうね。

あと、今までのターミナルサービスというのは、サーバの画面をクライアントに表示していましたが、Windows Server 2008ではサーバのアプリケーションのみを、クライアントで実行するようになります(ターミナルサービスリモートプログラム)。

ユーザは、ローカルのアプリケーションを利用しているつもりでも、実際はサーバのアプリケーションを利用している感じになるようです。

サーバ管理者が、クライアント用のインストーラ-を作成し、クライアントに配布する必要はあるようです。

これは、なかなかおもしろい機能ですね。

■トランザクションプラットフォーム

これは、Windows Server 2008の中でも、かなりおもしろい機能だと思います。

トランザクションプラットフォームを利用すると、ファイルやレジストリの更新にトランザクションを適用することができるようになります。

複数のデータベースやファイルを更新中に処理が失敗したら、ロールバックを行うだけで、全ての更新を無効にすることもできる模様。

こいつは、かなり便利ですね。

是非使ってみたいです。

■感想

Windows Server 2008には、他にも仮想化など多くの機能がありますが、かなり便利になるという印象を受けました。

今後の新規開発では、64bitや仮想化なども睨みつつ、Windows Server 2008の採用は、前向きに検討する価値はありそうです。

 

 

■関連サイト(Microsoft関連)

■関連サイト(その他)

■関連書籍

 

| コメント (0) | トラックバック (0)

2007/05/28

Visual Studio 2005 によるアプリケーション開発セミナーに行ってきました

MSDNオフラインセミナー:Visual Studio 2005 によるアプリケーション開発
日時:2007/05/28 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

VS2005のアプリケーション開発セミナーに参加してきました。

本日の講師の方は、エバンジェリストの小高太郎さんです。

最初の方は、VS.NETを使ったことのない方向けだったので簡単な内容でしたが、デモに入ると急に難度が上がりはじめました。

タブブラウザのデモでは、画面のコントロールの動的生成について説明がありました。

VS2005では、Windowフォームの画面生成ロジックがForm1.Designer.csに組み込まれるんですね。この部分のソースと同様のことをすれば、自分で画面を生成できるそうです。この画面生成ロジックは、.NET Framework3.0ではXAMLに置き換わるというお話もありました。

マルチスレッドのデモでは、マルチスレッドを簡単に行えるBackgroundWorkerコントロールの説明がありました。

ムーアの法則に限界が見えはじめ、今後のCPUはマルチコアでコアの数を増やす方向で性能アップを図るようです。そうなると、効率的なプログラムを書くためには、マルチスレッドの理解が必要になるとのこと。

これは、バグが増えそうな予感。。。(^_^;

他にも、ノータッチデプロイメントやClickOnceについても説明がありました。

個人的には、「XCOPYデプロイメント」がXCOPYコマンドではなく、エクスプローラー上のコピーでもいいということが分かったのが収穫です。今まで、ネットでさんざん調べたのですが、どうしても裏付けがとれなかったんですよね。

などなど、いろいろと勉強になるセミナーでした。

 

■参考サイト

■関連エントリー

 

| コメント (0) | トラックバック (0)

2007/05/27

Community Launch Team イベント 東京 に行ってきました

Community Launch Team イベント 東京
日時:2007/05/26 13:00~16:30
場所:小田急ホテルセンチュリーサザンタワー

Community Launch Team イベント 東京に行ってきました。

Track1とTrack2がありましたが、Track1の以下のセッションに参加しました。

  1. Windows Vista 時代の SQL Server 2005
    • 講師: 小川 貢氏
  2. Windows Vista 時代の Web アプリケーション
    • 講師: 宮崎 昭世 (こぐま)氏

 

【Session1】Windows Vista 時代の SQL Server 2005  

最初は、Windows Vista で採用されたJIS2004についてのお話でしたが、いきなり一部の方々には衝撃的なお話がありました。

それは。。。

VB6のランタイムとIDEはWindows Vista上で動作するが、VB6はUnicode対応ができないため、VB6ではWindows Vistaの完全対応はムリ。Unicodeが扱える環境への移行が必要。

というものです。

VB6がWindows Vistaで動作すると安心していた方々には、ショックと思われます。

まあ、暫定対応ということであれば、Windows Vista上でサロゲートペア文字を入力させないようにしておいて(参考)、その間に、UnicodeでWindows Vista対応のアプリケーションを再構築ということはできそうです。

SQL Server 2005のWindows Vista対応は、データ型をUnicode対応のNCHAR/NVARCHARを使用し、データベースの照合参照順をJapanese_90系に変更するとのこと。照合参照順を変更するには、再インストールかmasterデータベースの再構築が必要だそうです。

その上で、SQL文の文字列の前に、Nをプリフィックスとしてつける必要があります。(ex) N'山田'

しかし、この対応をしても、照合参照順によっては予期しない動作をしてしまったり、LEN関数などの文字列操作関数がサロゲートペア文字をまともに扱えない問題があるようです。

現状では、文字列操作関数をSQL CLRで自作する必要があるそうですが、これはちょっとしんどい(笑)。これについては講師の小川さんが、現在SQL CLRで関数を作成中で、いずれオープンソースとして公開したいというお話をしていました。

この文字列操作関数の問題は、次期SQL Server の「Katmai」で解消されるようなので、それまではアプリケーションの入口で、サロゲートペア文字を弾く対応がいいかもしれません。 アプリケーションがUnicode対応されていることが前提ですが。

うーん。厳しい。。。

SQL Server以外のRDBMSはどんな感じなんでしょうね。

気になるところです。 

 

【Session2】Windows Vista 時代の Web アプリケーション  

Session2では、IE7, ASP.NET AJAX, Silverlight, Windows Live Gadget の概要の説明でした。

IE7でもポップアップウィンドウは表示可能ですが、信頼済ゾーンかどうかで挙動が変わるというのは初めて知りました。

また、IE7のActiveXオプトインというのが今までイメージがつかなかったのですが、実際にデモを見て、ようやく理解できました。IE7では、ActiveXの実行時には必ずユーザの許可が必要になったんですね。UACみたいな感じです。

 

技術者コミュニティの会合に参加するのは今回が初めてで、緊張しながらの参加でしたが、業務を離れての活動ということもあってか、なごやかな雰囲気でよかったです。

また、非常に価値のある情報を提供していただき、PASSJ、VSUG、Microsoftの方々に感謝です。

 

■参考サイト

 

 

■関連エントリー

 

 

| コメント (0) | トラックバック (0)

2007/04/25

マイクロソフト アーキテクト フォーラム 2007に行ってきました

マイクロソフト アーキテクト フォーラム 2007
日時:2007/04/25 13:00~18:15
場所:八芳園

今日は、Microsoftのアーキテクト フォーラムに行ってきました。

フォーラムでは、3つのセッションと特別対談があったのですが、Microsoft本社のアーキテクチャのディレクターの方や、IBMの榊原 彰氏という贅沢な講師陣でした。

フォーラムのセッションはこんな感じです。

  • Session1
    • Enterprise Software + Service
    • Web2.0がエンタープライズを変える~ソフトウェア プラス サービス
  • Session2
    • Patterns for Service Oriented Architecture
  • Session3
    • User Experience for Architecture
    • マイクロソフト プラットフォーム上で利用可能なユーザエクスペリエンステクノロジ
  • 特別対談
    • 第一部
      • ビジネスにアーキテクトはどのように貢献できるか?
    • 第二部
      • 私のアーキテクトへの道
      • 我はかくしてアーキテクトになりにけり

 

 おもしろい内容がたくさんあったのですが、いくつかの興味深いトピックのみご紹介します。

■ Software + Service (S + S)

最近、SaaS, SOA, Web2.0 などのトレンドがありますが、これからはWebオンリーではいけないし、ローカルソフトウェアだけでもだめで、両方を状況に応じて使い分けていくことが重要とのことです。

Microsoftは、この辺を「Software + Service (S + S)」というビジョンを持って対応していくとのことです。

 

■ペルソナ法

ペルソナ法は、ユーザインターフェース(UI)を考える時に使用する手法です。

ペルソナ法では、仮想のユーザの詳細なプロフィールを3~7人程度作成し、このUIは仮想のユーザが使いやすいかシミュレーションして、最適なUIを導き出します。

ネットを検索しましたが、まだ日本ではそれほどメジャーではないようで、詳しい情報までは見つかりませんでした。英語の情報はあるようですが。。。

 

■Rapid Iterative Testing and Evaluation (RITE)

RITEは、ゲームの世界で用いられているテスト手法で、製品の品質を高めることができるようです。

特徴的なのが、テスターが何人いても、同時にテストを行うのは1人のみで、そこで上がった不具合を修正した後に、次のテスターがテストを開始するというやり方です。

これだと、期間は多少長くなりそうな気がしますが、テストに参加するテスターの数は変わらないし、製品の品質が向上することが研究で明らかにされているとのことです。

RITEについては、日本語の情報は全く見つかりませんでした。

 

■IBM 榊原 彰氏のお話

IBMの榊原さんは、書籍も出版されていて、かなり有名な方のようですね(Googleの結果)。

驚いたのが、IBM本社の技術ストラテジーの作成までされているとのことです。

その榊原さんが、UMLの生みの親の1人であるランボー氏がメンターの時に言われたという言葉が印象的でした。

Architecture is decision.

 他にも有用で楽しいお話が聞けたので、参加してよかったです。

 

◇オンラインリソース

 

| コメント (0) | トラックバック (1)

2007/04/17

IIS6.0によるセキュアWebサーバの構築セミナーに行ってきました

Microsoftセミナー:IIS6.0によるセキュアWebサーバの構築
日時:2007/04/16 10:00~17:00
場所:新宿NSビル

IIS6.0のセキュアWebサーバの構築セミナーに、今更ながら行ってきました。

業務系アプリケーションの構築をしていると、次の殺し文句でIISを使うことがありがちです。

「ベンダーのサポートがないツールは使わない」

一応、翻訳しておきます。

「何かあったら誰が責任を取るんだ?」

 なんか現実味が出てきてしまったので、この辺にしておきます(笑)。

本日の講師の方は、NECラーニングの池上 貴史さんでした。

こちらで、質問に回答をしてますね。Windows Server World に寄稿もされるようです。

テキスト外の説明やFAQ的な内容をあらかじめ説明していただけたので、分かりやすくてよかったです。

で、セミナーを参加して分かったことは、IIS6.0はちゃんとした設定をすれば、結構セキュアな環境が構築できるんだなということです。しかし、この「ちゃんとした設定」というのが曲者で、WindowsやIISの仕組みを理解していないと、内容が結構難しいですね。

セキュリティの世界は奥が深い。。。

あと、なかなかネットにない情報で、IIS6.0の認証の順番というのがあったので、ちょっとメモしときます。

  1. IPアドレスの制御
  2. ユーザ認証
  3. Webベースのアクセス許可(IIS)
  4. NTFSのアクセス許可

本日のテキストとオンラインリソースをよく理解して、ちゃんとした手順書を作らないと業務はうまく回せない感じですね。

 

◇オンラインリソース(資料)

 

◇オンラインリソース(ツール)

 

| コメント (0) | トラックバック (0)

2007/04/11

WPFセミナーに行ってきました

Microsoftセミナー:Windows Vista アプリケーション開発 WPF編
日時:2007/04/11 10:00~17:00
場所:新宿NSビル

次世代のデスクトップアプリケーションの技術として注目されている、WPF(Windows Presentation Foundation)のセミナーに行ってきました。

本日の講師の方は、NECラーニングの山崎明子さんです。以前のセミナーの報告でも書きましたが、書籍も出版されていて、人気のある講師の方のようです。

Microsoftのセミナーは、こういった普段お会いできないような方々のお話を聞けるというのがいいですね。

欲を言えば、mstepのセミナーも、MSDNオフラインのように講師の方が事前に分かるとうれしかったりします。まあ、いろいろ難しいこともありそうですが。

さて、セミナーのテーマであるWPFの特徴は、こんな感じかと。

  • Flash並みのインターフェースを持ったアプリケーションを簡単に構築できる
    • XAMLというXMLファイルに記述するだけで、かなり高度なデザインができる
    • アニメーションや3Dも可能
  • デザイナと開発者の完全な協業が可能
    • JSPのように、デザイナが作成したHTMLを、開発者がJSPに書き直すような作業がない
    • デザイナが作成したデザイン(XAML)を、直接、開発者が使用できる
    • また、開発中であっても、デザイナがXAMLを変更しても問題なし
  • WPFはWindowsアプリケーションだが、下記の特徴も持つ
    • ClickOnceによる配置が可能
    • Windowsフォームと同等のことが出来る
    • .xbapという形式で、WPFアプリをWeb上に展開することが可能
      • セキュリティ上の制約はあり(サンドボックス)

また、WPFは、既存システムとの相互運用もできます。

具体的には、WPFの中にWindowsフォームやASP.NETやActiveXなども組み込むことができます。 既存技術との組み合わせ方によっては、大変なことになるので事前の調査は必要です。

まあ、現時点ではツールが出そろっていないなども課題もありますが、今後はMicrosoftベースのWindowsアプリケーションはWPFに移行していくでしょうね。

しかし、最近の技術の多さはすごいですね。。。

 

◇オンラインリソース

 

◇関連セミナー

 

| コメント (2) | トラックバック (0)

ASP.NET AJAX フレームワーク入門セミナーに行ってきました

MSDNオフラインセミナー:JavaScriptが苦手なあなたに贈る ASP.NET AJAX フレームワーク入門
日時:2007/04/10 17:00~21:00
場所:小田急ホテルセンチュリーサザンタワー

ASP.NET AJAXの入門セミナーに行ってきました。

本日のセミナー講師の方は、Microsoftのコンサルタントの赤間 伸幸さんでした。こちらの書籍を書いた方のようです。知らないでセミナーに申し込んだのですが、すごい方だったんですね。どうりで、セミナーが満員になるわけです。

赤間さんのセミナーは、テンポあり、笑いありで、しかも技術的に深い部分まで解説していただけたので、とてもよかったです。

さて、セミナーを聞いて思ったのが、ASP.NET AJAXは、非常によく考えられたフレームワークなんだなと思いました。

ASP.NET AJAXを使えば、全てサーバサイドでプログラムを行い、ブラウザ側でJavaScriptを記述しない開発も可能なため、AJAXアプリを構築する際の生産性が高くなります。また、便利なコントロールも豊富なので、使い勝手のいいアプリを構築できそうです。

しかし、何も考えないでAJAXアプリを構築できるかというと、さすがにそういう訳にはいかないようです。

まず、問題になりそうなのが、 ASP.NET AJAXのコントロールが含まれている、ASP.NET AJAX Control Toolkit には、Microsoftの正式サポートがないことです。

ASP.NET AJAXのコントロールのほとんどは、CodePlexというサイトでオープンソースとして開発されているため、コミュニティベースのサポートしかありません。

実際には、Microsoftの開発者が作っているので、問題になるほどの品質ではないようですが、正式サポートがないこと自体で、ASP.NET AJAXを採用できないケースも多いでしょうね。

また、ASP.NET AJAXでは、エクステンダという仕組みで1つのコントロールに、複数の機能を追加することができとても便利です。しかし、その便利のために、機能の組み合わせが桁外れに多くなってしまいテストがしきれないため、組み合わせによってはうまく動作しないこともあるようです。

ですので、ASP.NET AJAXを使用する場合は、自分が使う機能が問題なく動作するか、しっかりテストすることがあるとのことです。

そして、かなり踏み込んだことをやろうとすると、結局JavaScriptで開発する必要がでてきてしまいます。しかし、ASP.NET AJAXを使用するなら、そういう使い方はしない方がベターでしょうね。

他にも、業務アプリ適用時の問題解決方法や、設計上の考慮点など参考になるお話がたくさんありました。なにせ、スライドが115ページのボリュームでしたし。

ASP.NET AJAX を業務アプリで使用するのは非常にいいのですが、その前に、しっかりと仕組みを理解して、実際に検証し、設計方針を明確にしてから採用する必要がありますね。

 

◇オンラインリソース

 

◇関連セミナー

 

Tags: ,

| コメント (2) | トラックバック (1)

2007/03/27

マイクロソフトの開発プロジェクト管理セミナーに行ってきました

MSDNオフラインセミナー:マイクロソフトの開発プロジェクト管理(開発ツール編)
日時:2007/03/26 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

 Microsoftの開発プロジェクト管理という珍しいテーマなので、一日に2つのセミナーに参加です。

さて、アメリカのMicrosoftで、Visual Studioや.NET Frameworkなどを開発しているDeveloper Divisionという部門は、在籍するスタッフがなんと3,000名以上。

そんな大規模な開発組織でどのようなプロジェクト管理を行っているかのお話でした。

まずはビルドですが、Visual Studioの規模だと、ビルドだけで6~10時間もかかるそうです。しかも、大勢の開発者がソースを修正してチェックインするので、コンパイルエラーの嵐になるとのこと。

その対策として、ビルドするソースを階層化して、子のレベルでテストがOKになったものを、後で全体でマージするという方法をMicrosoftでは取っているそうです。それはそれで、大変らしいですが。。。

そして、バグ管理には、Team Foundation Serverのバグデータベースを使用していて、現在はうまく回っているとのことでした。まあ、バグ管理というだけなら、BugzillaなどのBTS(Bug Tracking System)でもいいような気もしますが。

他にも、エンドゲームなど興味深い話が多く、とても参考になるセミナーでした。

 

#VS2005 Team Systemはみなさん高いと思ってる感じでした。(^_^; 

 

◇オンラインリソース

 

◇関連セミナー

 

| コメント (0) | トラックバック (0)

Application Compatibility Toolkit を使ったVista対策セミナーに行ってきました

Microsoft, Application Compatibility Toolkit を使ったアプリケーションのWindows Vista対策セミナー
日時:2007/03/26 13:00~17:00
場所:新宿NSビル

Vista対策のために、Application Compatibility Toolkit(ACT) のセミナーに行ってきました。

ACTは、基本的にシステム管理者向けのツールのようですね。

ACTには、Application Compatibility Manager(ACM)というものがあり、ACMで作成されるコネクタというプログラムをクライアントPCにインストールすることができます。

コネクタは、クライアントPCで動作するアプリを監視と評価を行い、結果のログをサーバに送信するので、ACMはクライアントで動作しているアプリの情報を自動的に収集できます。

コネクタで評価できる、Vista移行のための項目は以下の2つ。

  • XP上で動作するアプリのUACの影響
  • Vista上のIE7でWebアプリを動作させた場合の影響

Vistaからはセキュリティが強化され、UAC(User Access Control)という新機能ができましたが、その評価をXP上で行えます。また、Vista上のIE7は保護モードで動作しますが、その評価も行えます。

システム管理者の立場からすると、一番影響が大きいとされるUACのテストを、ユーザが意識しないで行ってくれるのだから、ACTはかなり便利でしょうね。

セミナーでは、ACTの使い方だけでなく、社内の多くのアプリをVistaに移行するための手順も詳しく解説されていました。

私は、アプリ開発者なので微妙な感じですが、こういう方法もあることを知ったことは収穫の気がします。

 

◇オンラインリソース

 

◇関連セミナー

 

| コメント (0) | トラックバック (0)

2007/03/10

Microsoft Project Server 2007 実践セミナーに行ってきました

Microsoft, 初めて使う、Project Server 2007 実践セミナー
日時:2007/03/09 10:00~17:00
場所:新宿住友ビル

今日は、Project Server 2007のセミナーに行ってきました。

現在は、Project Server 2003を使っているのですが、Project Server 2007で何が変わったのかということと、MS Project自体を使いこなせていないこともあり、情報収集も兼ねて行ってきました。

Project Server 2007で変わった点で、ほぅと思ったものメモ。

  • アーキテクチャーが大きく変わった
    • Windows SharePoint Services (WSS)が必須になった
    • サーバ側でスケジュールエンジンを実装した
      • これで、進捗の承認時にProjectが起動しなくなる
      • これはうれしい
  • クライアント機能
    • Undoが99回までできるようになった
      • 今までは1回のみ
    • タスクハイライト機能
      • スケジュールを変更すると、影響を受けた箇所がハイライト(水色)表示される
    • ローカルキャッシュ(Professionalのみ)
      • Project Server保存時に、差分のみ書き換え
      • 今までは全データ書き換えで遅かった
      • これで、WANでの使用も現実的になった模様
  • サーバ機能
    • マスタープロジェクトとサブプロジェクトを管理可能になった
      • 今まではサーバではうまくいかなかったらしい
      • PMBOKでいうプログラムが管理可能になった感じ?
    • インストールが大変に?
      • まだインストール手順書が公開されてない模様
      • 慣れた人で2、3時間、初めてだと2、3日かかるらしい
      • Project Server 2003よりは難しくなったっぽい
        • 2003もかなり苦労したんですけどね・・・

 

Project Server 2007は、基本的には「スケジュール作成・変更時はProfessionalを使用するが、普段の運用は全てWebで行う」という形になっていると思います。

 これは、WSSがProject Serverに統合されたことで可能になったようですが、プロジェクトの情報にはWebから全てアクセスでき、プロジェクトのポータルみたいな使い方ができます。

うーん。なかなかいいですね。

となると気になるのがお値段です。

Microsoftの情報によるとこんな感じ。

製品 価格
Project Standard 2007 ¥66,500
Project Professional 2007 ¥117,000
Project Server 2007 ¥851,000
Project Server 2007 User CAL ¥20,900


値段以上の価値があるのは理解できるのですが、厳しいなぁ。。。

とぼやいても仕方ないので、セミナーで面白かったTipsメモ。

  • プロジェクトのテンプレートが必要
    • WBSをゼロから作るのはPL、PMに大きな負担
  • WBSのネーミングルールが必要
  • マイルストーンはスケジュールの上にまとめると吉
  • 基準計画は最初の計画。これで差異を見る
    • 一番最初のものは、基準計画10あたりに保存し、絶対編集しない
    • 新しいスケジュールが承認後、基準計画を変更
  • マイルストーンと期限
    • 通常のマイルストーンはProjectでは「期限」を使うのが吉
    • 「マイルストーン」は、その時点でのスケジュールの到達点
  • 工数と期間の扱い
    • タスクを「期間固定」に設定
    • 作業時間で負荷を調整

大変、勉強になりました。

 

◇オンラインリソース

 

◇フリー/オープンソースなプロジェクト管理ツール【おまけ】

 

| コメント (0) | トラックバック (0)

2007/03/01

ASP.NET AJAXセミナーに行ってきました

MSDNオフラインセミナー:.NET Framework 2.0 ASP.NET AJAX
日時:2007/02/28 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

1月の終わり頃に、ASP.NET AJAX 1.0がリリースされましたが、実際に試している時間もなかったので、情報収集のためにセミナーに行ってきました。

今日の講師の方は松崎 剛さんで、Microsoftのデベロッパーエバンジェリストで、Think ITで記事も書かれているようです。

さて、ASP.NET AJAXは、以下の3つから構成されているとのこと。

  • ASP.NET AJAX 1.0 Extention
    • ASP.NET AJAXのコア
    • Visual Studio と GAC の両方にインストールされる
  • Future January CTP
    • 将来コアに追加される予定の機能
  • ASP.NET AJAX Control Toolkit
    • コミュニティメンバーによる便利ツール

 

意外だったのが、サポートブラウザにOperaがなかったことです。

念のため、ASP.NET AJAXのドキュメントを確認したところ、以下のように記述されていました。

Support for the most popular and generally used browsers, including Microsoft Internet Explorer, Mozilla Firefox, and Apple Safari.

Safariがサポートされるのに、Operaがサポートされないとは。

Operaのサポートは大変なのか、他の商用ブラウザをサポートしたくないのか。。。

ナゾです。

 

ASP.NET AJAXの利点は、「基本的」にJavaScriptを記述しないで、Ajaxの機能を利用できることですが、ASP.NETの機能と統合されているのも大きな利点ですね。

例えば、認証やセッション管理というASP.NETの機能も、ASP.NET AJAXで使用することができるとのこと。

先ほど、「基本的」にと書きましたが、これはControl Toolkit 同士や、既存のASP.NETが出力するJavaScriptがコンフリクトを起こすケースがあるためです。

コンフリクトは、ASP.NETのサーバコントロールの拡張である「エクステンダ」の作り方を理解して、コンフリクトを解消する必要があるとのことです。

こりゃ厳しい。聞いておいてよかったです。

 

あと、ASP.NET AJAXは、2つのアプリケーションモデルを取ることができるそうです。

1つ目は、サーバ中心にして、クライアントサイドで個別のJavaScriptは記述しないアプリケーションモデルです。ASP.NETで開発する場合は、こちらが推奨されるようです。この場合は、エクステンダを独自に作成する必要が出てくるかもしれません。

2つ目は、クライアント中心にして、個別のJavaScriptをブラウザ側で実行させる形態です。サーバサイドをASP.NETではなく、PHPなどを使用する場合に使うモデルのようですね。

 

ふむ。注意する点はあるけれども、ソースも公開されているようですし、実際に使っても何とかなりそうな気がしてきました。

 

◇オンラインリソース

 

 

| コメント (0) | トラックバック (0)

2007/02/28

Microsfotアーキテクトセミナー - .NETアーキテクチャの最新動向、考え方のご紹介 に行ってきました

Microsoftアーキテクトセミナー - .NETアーキテクチャの最新動向、考え方のご紹介
日時:2007/2/27(火) 13:30~15:30
場所:新宿マインズタワー

さて、連日のセミナー参加ですが、今日はMicrosoftのアーキテクトセミナーに行ってきました。

今日の講師の方は、株式会社アークウェイの代表取締役社長の森屋英治さんでした。

アークウェイさんは、NAgileのツールのドキュメントを公開されていて、実際の開発でとても助かりました。また、アークウェイさんのサイトを見てみると、NWikiの中西庸文さんも所属されているんですね。NWikiでも、お世話になってます。m(_ _)m

さて、前置きが長くなってしまいましたが、今回のセミナーはかなり難しかったです。実際のアーキテクトとして活躍されている方向きなのかも。

具体的には、アーキテクチャの定義やパターンの説明、ソフトウェアファクトリーについてなど、デモを交えながら説明していただきました。

うーん。正直、今の仕事とは別世界のお話でした。。。

でも、アーキテクトとして仕事をするには、相当高度な知識が必要なんだと、改めて認識できたのはよかったです。

めげずに、次回も参加したいと思います。

そうそう。2007年4月25日(水)に、Microsoftのアーキテクトフォーラム2007があるとのことなので、無料ですし、興味のある方は申込されてはいかがでしょうか?

 

◇オンラインリソース

 

◇関連セミナー

 

 

| コメント (0) | トラックバック (0)

2007/02/27

プレゼンテーション実践講座に行ってきました

MSDNオフラインセミナー:プレゼンテーション実践講座 ~心をつかむ ”話し方” ~
日時:2007/02/26 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

今日は、仕事の後にMSDNオフラインセミナーのプレゼンテーション実践セミナーに行ってきました。

既に、ブログが研修報告書になってますが、まあ、あまり気にしないで下さい。(^_^;

今日の講師の方は、小柳津 篤さんで、ビジネスの現場で顧客の経営層を相手に提案活動をされているそうです。日経のスキルアップ講座などでも、講師をされているようです。

さて、セミナーの最初で、以下の言葉が紹介されました。

  • Passive Knowledge
  • Active Knowledge

Passive Knowledgeは、知っているだけの知識で、Active Knowledgeは、行動につながり具現化できる知識という違いがあり、その間には大きなギャップがあるとのこと。

まずは、ギャップを認識し、知識をActive Knowledgeにするためには、練習が必要とのことでした。

なるほど。納得ですね。

また、一般のプレゼンテーションに関する書籍は、「見せ方」「出し方」「押し込め方」の内容が多いそうですが、プレゼンテーションとは「ビジネスコミュニケーション」であるという考えは参考になりました。

説明も分かりやすく、とてもためになる内容だったのですが、残念ながら時間が短かったです。1時間半で聞けた内容だと、もっと聞きたいという感じでした。

逆に言えば、それだけよかったとも言えますけどね。

セミナーに触れられなかった資料の中には、「交流分析」とか「エニアグラム」という用語が出ていました。Wikipediaを読んでも、今ひとつ理解できませんでしたが、プレゼンテーションも突き詰めていくと、心理学の世界に入っていくんですね。

プレゼンテーションも、奥が深い。。。

学びの多い1時間半でした。

 

| コメント (0) | トラックバック (0)

2007/02/17

既存アプリケーションの Windows Vista 対策セミナーに行ってきました

MSDNオフラインセミナー:既存アプリケーションの Windows Vista 対策
日時:2007/02/16 18:30~20:00
場所:小田急ホテルセンチュリーサザンタワー

連日のセミナー参加ですが、今日は、既存アプリケーションのVista対策セミナーに行ってきました。

講師の方は、ジニアス平井さんという方でしたが、結構人気のようですね。ネットを検索すると結構ヒットしました(こちら)。

ジニアス平井さんのお話は、話す内容がしっかりしているだけでなく、サンプルコードとデモもあり分かりやすく、しかもウケを取りに来るので面白かったです。

さて、既存アプリケーションのVista対応として気になるものは以下の点でした。
  • ユーザアカウント制御(UAC)
  • ユーザインターフェース特権の分離
  • Windowsリソース保護(WRP)
  • JIS2004(Unicodeサロゲートペア)
  • 新フォントメイリオ

・ユーザアカウント制御(UAC)

UACにより、アプリケーションはアドミン権限を持っているユーザであっても、通常の実行権限で実行される。そのため、既存アプリで動作しないものが出てくる。回避策あり(セミナー資料参照)。


・ユーザインターフェース特権の分離

SendMessage()などで、権限の低いプロセスから送信されたメッセージは、高いプロセスへは伝わらない。しかも、エラーも出ない。回避策あり(セミナー資料参照)。


・Windowsリソース保護(WRP)

WRPの保護対象が、Vistaで拡大されている。
  • システムファイル
  • システムフォルダ
  • レジストリキー
上記のものは、アドミン権限であっても、デフォルトは「読み取り・実行権限」のみ。アプリでは編集できない。


・JIS2004(Unicodeサロゲートペア)

今回は、この問題にどのように対処したらいいのかを知りたくてセミナーに参加しました。しかし、この問題は相当やっかいですね。対処方法は以下のようになります。

  • データベース
    • 文字列を格納するテーブルのフィールドは、nchar, nvarcharのようにUnicode対応の型に変更する。
    • ストアドプロシージャ内の変数の型も、char,varcharをやめて、nchar,nvarcharに変更する。
  • .NETのプログラム
    • サロゲートペアを意識したコーディングに書き換える(配布資料参照)。
    • 通常のコーディングのままだと下記のような問題が起きる。
      • 文字化けする。
      • String.Lengthでサロゲートペアの1文字を取得すると、2文字と返ってきてしまう。
      • MaxLenghtが3のテキストボックスに、サロゲートペアを2文字入力すると、1文字は正常に入力されるが、もう1文字は半分しか入力されない。システムにダメージを引き起こす可能性あり。
うーん。厳しいですねぇ。。。

実際には、自分のシステムの環境で、実験を繰り返す必要がありそうです。


・新フォントメイリオ

新フォントのメイリオの特性を、今ひとつ分かってませんでしたが、以下のような特性があるとのこと。
  • 欧文はプロポーショナル
  • 日本語は固定幅
  • 斜体は欧文文字のみ
  • 縦幅をかなり取るようになる
そのため、アプリの画面フォントにメイリオを採用してしまうと、レイアウトが崩壊してしまう。

これも厳しいですね。でも、フォントを変えるだけでいいのかな?



VCのアプリをやっている人は大変ですね。これは。

時代の流れだと思って、頑張るしかないかも。

こういった情報を得られたので、今回のセミナーは非常にためになりました。



#会場は、小田急ホテルセンチュリーサザンタワーだったのに、
#最初、新宿マインズタワーに行ってしまったのはナイショです。。。




◇Microsoftのオンラインリソース

◇Vista文字化け関連のオンラインリソース

◇既存アプリのVista移行のオンラインリソース



feedpath tags:   generated by feedpath

| コメント (0) | トラックバック (0)

2007/02/15

デブサミ2007 プロジェクトマネジメント2日間セミナーに行ってきました

プロジェクトマネジメント2日間セミナー(PMBOK第三版概要)
日時:2007/2/14-15 10:00~18:00
場所:目黒雅叙園

プロジェクトマネジメントのデファクトスタンダードだと言われている、「PMBOK(ピンボック)」の2日間セミナーに行ってきました。

サブタイトルが「PMBOK第三版概要」となっているのに、資料はなんと269ページ!

事前に、「プロジェクトマネジメント標準 PMBOK入門」を読んでいったのですが、さすがに覚えきれませんでしたが。。。

このセミナーの講師の方は、株式会社タリアセンコンサルティングの青柳次男さんでした。この方は、PMBOKの資格であるPMP対策用の教材を出しているようですね(Amazon検索結果)。

さて、セミナーの内容ですが、ボリュームたっぷりの上に、PMBOKのことや、実際のプロジェクトで参考になることもたくさんありました。

まず、PMBOKでは、効果的なプロジェクトマネジメントのために、以下の5つの専門領域が必要だとされています。
  1. プロジェクトマネジメント知識体系  ← ここがPMBOK
  2. 適用分野の知識・標準・規制
  3. プロジェクト環境の理解
  4. 一般的なマネジメントの知識・スキル
  5. 人間関係のスキル
上記リストにあるように、このボリュームたっぷりのPMBOKも、プロジェクトマネジメントの専門領域の1つにすぎないと分かり、ちょっと気が遠くなりました(笑)。

面白かったのが、下記のモチベーションマネジメント理論が紹介されたことですね。
  1. マズローの欲求5段階説
  2. マクレランドの欲求理論
  3. ハーツバーグの動機付け理論
  4. マクレガーのX,Y理論
  5. 期待理論
うーむ。PMBOKは奥が深い。。。

まだ、PMBOKを調べている途中ですが、なかなか役に立ちそうなので、少しずつ業務に活用していこうと思います。
feedpath tags: ,   generated by feedpath

| コメント (0) | トラックバック (0)

2007/01/26

Microsoftアーキテクトセミナー - スマート クライアントのための最新アーキテクチャ構築技法 に行ってきました

Microsoftアーキテクトセミナー - スマート クライアントのための最新アーキテクチャ構築技法
日時:2007/1/26(木) 13:30~15:30
場所:新宿マインズタワー

今日はMicrosoftのアーキテクトセミナーに行ってきました。

最近、Microsoftのセミナーにやたらと参加してますが、これは、Microsoftが無料にてセミナーを開催してくれているから出来ることなんですよね。ありがたいことです。

まあ、諸事情により、全て有給休暇を使用しての参加ですが。

さて、今回のテーマは、Microsoftが推進するSoftware Factoryの中の、Smart Client Software Factoryが具体的なテーマでした。

まずは、Software Factoryについてのおさらいでした。

そこで、「Software Factories」と言った場合は方法論で、「Software Factory」と言った場合はツールやフレームワークを指しているというお話がありました。

知りませんでしたが、そういう使い分けがあったんですね。

それから、Software Factoyで重要らしい、GAT(Guidance Automation Toolkit)の紹介とデモがありました。

GAT(ギャット)は、Visual Studio 2005 Standard Edition以上で動作するツールで、アーキテクトが使用するものです。

アーキテクトは、GATを使い「Guidance」を作成し、開発者はその「Guidance」に基づいて開発することになるため、開発者のレベルに差があっても、生産性と品質をともに確保できる模様。

Smart Client Software Factoryというのは、スマートクライアントアプリケーションの開発をするためのベストプラックティスで、GATを始め複数のツール・ガイダンス・ドキュメントなどからなるようです。

そして、Enterprise Library 3.0 で提供される、Application Block Software Factory (ABSF)のデモも行われました。

このABSFを使用すると、今まで困難だったApplication Blockの自作が、随分と簡単にできるようです。今はCTP版なので、多少のバグが含まれるようですが、正式版リリースに期待したいところ。

しかし、このABSFのデモをされた、アバナード株式会社の市川龍太さんという方は、ずいぶんと優秀でしっかりしているなぁと思って、自宅でGATの情報を調べていたら、なんと@ITでEnterprise Libraryの連載をしていた方でした。

なるほど。納得です。

そんなすごい方のお話を聞けてラッキーでした。

このアーキテクトセミナーはレベルが高くて、付いていくのがかなりしんどいのですが、めげずにこれからも参加していきたいと思います。


◇オンラインリソース

◇以前参加した関連セミナー
feedpath tags: ,   generated by feedpath

| コメント (2) | トラックバック (0)

2007/01/18

Microsoftセミナー - SQL Server 2005 技術概要 に行ってきました

Microsoftセミナー - SQL Server 2005 技術概要(DBアプリ開発編)
日時:2007/1/17(水) 10:00 - 18:00
場所:新宿NSビル

SQL Server 2005が発売になって、1年以上も経ってから、ようやく技術概要のセミナーの参加です。

今日のセミナーは、SQL Server 2005の技術概要ということだったのですが、パワーポイントのスライドが162ページという大ボリューム。後半は、高度な内容についていけなくなりましたが、内容的には参加してとてもよかったです。

SQL Server 2005で、ポイントだなと思うのは以下の機能です。

  • CLR統合(SQLCLR)
  • XML機能の強化
  • Webサービス
  • クエリ通知
  • サービスブローカ

◇CLR統合(SQLCLR)

CLR統合(SQLCLR)というのは、SQL Server 2005と.NET Frameworkが統合されたもので、ストアドプロシージャ、ユーザ関数、トリガなどが.NET言語で記述できるようになりました。

このSQLCLRとVisual Studio 2005を組み合わせて使用すると、開発効率が劇的にアップしますね。

まず、Visual Stuido 2005のデーターベースプロジェクトで、ストアドプロシージャなどを作成できるので、ストアドプロシージャのデバック機能が使用できるようになります。

また、Visual Studio 2005のプロジェクトになるので、Visual Source Safeなどのバージョン管理ソフトとも連携が可能になります。

従来も、ストアドプロシージャの有利性は言われてきました。しかし、バージョン管理や開発効率などで躊躇していた部分がありましたが、かなり状況が変わりますね。

SQL Server 2005 では、DB操作は全てDB内で行い、アプリケーションはUI処理に専念するというモデルが有効になるかも。

◇XML機能の強化

SQL Server 2005では、XMLデータ型がサポートされるようになり、XMLドキュメントをそのままテーブルの列に格納が可能になりました。

そして、格納されたXMLは、XQueryという言語で参照・更新が可能になりました。

今まで、XMLファイルを直接読んだりしていましたが、普通に使うとロックがかからないので今ひとつだなと思ってました。使い方次第では、ロックがかけられるかも。

◇Webサービス

SQL Server 2005では、IISを使用しないで、SQL Server 2005単体でWebサービスを提供することができ、ストアドプロシージャなどを、Webメソッドとして公開可能です。

これをうまく使うと、新しいモデルが可能になりますね。

◇クエリ通知

通常のアプリケーションでは、一度データベースから値を取得した後は、データベースと同期しなくなります。

しかし、このクエリ通知機能を使用すると、データベースで更新があった際に、アプリケーションの関数がコールバックされるので、常にデータを最新の状態に保てます。

なかなかいい感じの機能です。

◇サービスブローカ

サービスブローカは、非同期メッセージ機能を提供する、SQL Server 2005の新機能です。

従来は、非同期メッセージを実現するには、MSMQなどの製品を利用する必要がありましたが、それがSQL Server 2005 のみで実現することができるようになりました。

◇オンラインリソース

◇以前参加した関連セミナー

feedpath tags:   generated by feedpath

| コメント (0) | トラックバック (0)

2006/12/20

IPA H18年度ウェブアプリケーション開発者向けセキュリティ実装講座 に行ってきました

IPA H18年度ウェブアプリケーション開発者向けセキュリティ実装講座
日時:2006/12/20(水) 13:00~16:15
場所:文京グリーンコートセンターオフィス

本日は、IPA主催のWebアプリのセキュリティ講座に行ってきました。

本日の講座の内容は、以下の通り。

【講座内容】
1.脆弱性の届出情報の深刻度評価について
    IPA セキュリティセンター 小林 克巳 氏

2.安全なWebアプリケーションの作り方(番外編)
    IPA セキュリティセンター 園田 道夫 氏

3.安全なウェブアプリケーション開発に向けた活用事例
    株式会社日立製作所 HIRT 梅木 久志 氏

4.失敗事例から学ぶウェブアプリケーション開発のヒント
    IPA セキュリティセンター 伊藤 耕介 氏

5.安全なウェブアプリケーション発注のあり方
    独立行政法人 産業技術総合研究所
       情報セキュリティ研究センター 高木 浩光 氏


私は開発者なので、テーマ2・4・5が面白かったです。

テーマ2は、セキュリティのTIPSが増え続ける中で、どうすればセキュアなコーディングができるかというお話でした。

アプローチとしては、以下の3種類の取り組み方があるとのこと。

  1. 開発系フレームワークを活用
  2. 実行系(PHPとか)そのものをセキュア化
  3. セキュアなサンプルコードを使用
具体的な開発系フレームワークとしては、PHPのフレームワークが紹介されました。
実行系のセキュア化では、PHPの実行環境そのものをセキュア化するツールが紹介されました。


でも、これだけではセキュリティのTIPSに対応しきれないため、セキュアなサンプルコード使用する方法が示されました。

あと、WAFを使用する方法もあるとのこと。

これで、WAFを始めて知りました。

うーむ。勉強が足りませんね。。。

これでも完全ではないでしょうから、結局はセキュリティのTIPSは把握しておかなければいけないのでしょうね。


テーマ4では、クロスサイト・スクリプティング(XSS)の対応で、ありがちな失敗例が紹介されました。

XSSの根本的な対策は、Webページに出力するとき全ての要素エスケープ処理するとのこと。入力値のチェックは、保険的な対策で抜け道があるそうです。

げ。理解が間違ってました。。。

確か、ネット上の記事で、入力する際に問題のある文字列を無害化することをサニタイズといって、XSS対策だと読んだんだけどなぁ。どうも違っていたようです。

どうして入力する時点だと問題化というと、対応にモレが出たり、HTTPリクエストヘッダを偽装するケースもあるためとのこと。

うーむ。XSS一つとってもこれかぁ。。。

セキュリティに関しては、信頼できるソースから理解しなくてはいけないですね。。。


さて、テーマ5は、開発側には関係なさそうですが、発注者が開発ベンダーにどのようなセキュリティを求めるかのガイドラインのお話で、具体的な内容が挙げられていたので勉強になりました。

面白かったのは、「サニタイズ言うな」キャンペーンを実施中とのこと。

セキュリティって、ホント奥が深いですね。

本日の講座は参加してよかったです。

大変、勉強になりました。


◇配布物(一部)
◇オンラインリソース(IPA)

◇オンラインリソース(その他)




feedpath tags: ,   generated by feedpath

| コメント (4) | トラックバック (0)

2006/12/14

Microsoftアーキテクトセミナー - 「 DSL Tools 」のご紹介 に行って来ました

Microsoftアーキテクトセミナー - 「 DSL Tools 」のご紹介
日時:2006/12/14(木) 13:30~15:30
場所:新宿マインズタワー

モデル駆動開発で使用する「DSL Tools」を紹介する、Microsoftのセミナーに行って来ました。

セミナーの内容は、こんな感じ。

◇Software Factories Initiativeの説明

現在、MicrosoftはSoftware Factoriesを推進しているとのこと。

Software Factoriesは、ソフトウェア開発を”工業化”して、生産性と品質の向上を目指すもののようです。そして、そのためにモデル駆動開発を行うという方向性が示されている模様。

ソフトウェアファクトリーとは何か?」という記事では、以下のように述べられていました。
近代的な組織がビジネス予測とともに組織内の開発アプローチを改善することを望むなら Software Factories はベストな方向としてお勧めます。
そして、Software Factories Initiativeでは、以下のような取り組みを行うとのこと(Software Factories Initiativeより)。
Software Factories Initiative では、アーキテクトを対象にアーキテクチャに関する情報をはじめ、ソフトウェア開発の課題解決に向けた情報提供をカンファレンスやセミナーを通じて行います。

本 Initiative の活動を通して、アーキテクトに対する質の高い情報の提供と新たなアーキテクトの育成に取り組んでいきます。
Microsoftは、結構本気かも。


◇DSL Tools

DSLとは、Domain Specific Languageの略で、ドメインに特化したモデリング言語のこと。

そして、DSL Toolsは、UMLやER図のようなモデリング言語を、新しく定義し作成することができるツールです。

何故モデリング言語を新しく作るかというと、UMLなどの汎用的なモデリング言語では、コードの自動生成が難しくなるため。MDAはそれでうまく行ってない模様。

そのため、手間はかかるけれども、分野に特化したモデリング言語を新しく定義した方が、却ってコードの自動生成が簡単になるという考え方のようです。

このDSL Toolsというのがとんでもなくすぐれもので、自分で定義したモデリング言語を、Visual Studio 2005上でUMLのようにモデリングできてしまいます。しかも、コードの自動生成までできてしまいます。

時代はここまで進んでいたか、という感じです。

もちろん、DSL Toolsを扱うのは簡単ではなさそうですが、この取り組みに成功した企業と取り組まなかった企業は、数年も経つと大きく生産性に差が出そうですね。

ただ、このDSL Toolsが動作するのは、Visual Studio 2005 Standard Edition以上なんですよね。Express Editionは対象外。遊べない。。。

Visual Studio 2005 Standard EditionをAmazonで確認すると、買えない額でもないんですよね。これからのシステム開発の流れを見るためには、個人でも買った方がいいのかなぁ。。。

会社のは、Visual Studio .NET 2003でMSDNサブスクリプションなし。

うーん。。。


◇感想

なんというか、時代はいつの間にこんなに進んじゃったの?という感じです。

Web2.0というITの流れの他に、システム開発の自動化という動きが本格化してきているのに驚きました。


◇オンラインリソース

◇ダウンロード
feedpath tags: , ,   generated by feedpath

| コメント (2) | トラックバック (0)

2006/12/12

Microsoftセミナー - SQL Server2005への移行とアップグレード に行って来ました

Microsoftセミナー - SQL Server2005への移行とアップグレード
日時:2006/12/12(火) 13:00 - 17:30
場所:新宿NSビル

現在、SQL Server2000を使っているので、いずれ必要になるSQL Server2005への移行とアップグレードのセミナーに行って来ました。

感想は、やっぱり、めんどくさいです。

まあ、いろいろ実験するにしても、情報をしっかり集めて、かなり計画的に取り組まないとうまくいきませんね、これは。

ここまではウィザードでできるけど、この部分は制限がついて、この部分は作り直しというように、細かい機能ごとにアップグレードできるかできないかが決まってます。

また、アップグレードする前の作業と、アップグレード後の作業もあったりします。

うへぇ。

まあ、そんな感じですが、SQL Server 2000からSQL Server 2005へのデータベースのアップデートと、DTSのアップデートについて、ちょっとメモ(以降、SQL ServerはSQLと表記)。


◇SQL2005概要
  • SQL2005エディション
  • SQL2005では、max server memoryオプションが厳格に
    • SQL2000は物理メモリが空いていれば上限を超えて利用可能
    • SQL2005では制限値に達するとエラー
  • SQL2005では、新規DBを圧縮ドライブに作成できない
  • コマンドラインツールのisqlがなくなる
  • コマンドラインツールとしてSQLCMDが新しく追加
  • ユーザとスキーマを分離可能に
    • SQL2005では、Server.Database.Schema.Object
    • 規定のスキーマが設定可能/デフォルトはユーザ名

◇移行・アップグレードの方法

  • アップグレード(In-place Upgrade)
    • SQLのインスタンスを直接アップグレード
    • 高速で簡単
    • トランザクションがないためリスク高い
    • 新旧環境での比較ができない
  • マイグレーション(Side-by-Side)
    • 新旧環境を共存させて、手作業で移行
    • 手間と時間がかかる
    • 新旧環境での比較可能
    • 追加のハードウェアリソースが必要になる

◇移行・アップグレード前に必ず行うこと
  • SQL Server 2005アップグレードアドバイザでDBを分析
    • DTSがない場合は日本語版を使用
    • DTSがある場合は英語版を使用

◇DBエンジンのアップグレード(In-place Upgrade)
  • SQL2005のセットアップからアップグレード

◇DBエンジンのマイグレーション(Side-by-Side)
  1. デタッチ/アッタッチ
  2. バックアップ/復元
  3. SQLスクリプト/データは別移行
  4. 管理ツールからデータベースコピーウィザード
  5. SSISパッケージを作成して移行

◇DTSのアップグレード(In-place Upgrade)
  • SQL2005のセットアップでアップグレード
  • 管理ツールのレガシ下で管理される
    • SQL2000 DTSデザイナコンポーネントでのみ編集可能
  • DTS2000のランタイムで動作
  • レガシ下のパッケージ/タスクをウィザードで移行可能
    • 移行できないものがある
    • DTS2000パッケージ実行タスクになったものは、DTSデザイナコンポーネントでのみ編集可能
    • DTS2000パッケージ実行タスクは、32bitのみサポート

◇DTSのマイグレーション(Side-by-Side)
  • SSISの移行ウィザードを使用

◇ダウンロード

◇オンラインリソース


feedpath tags: ,   generated by feedpath

| コメント (0) | トラックバック (0)

2006/12/05

Microsoftセミナー - SQL Server2005 ADO.NET2.0 プログラミング に参加しました

Microsoftセミナー - SQL Server2005 ADO.NET2.0 プログラミング
日時:2006/12/05(火) 10:00 - 17:00
場所:新宿NSビル

久しぶり(何年かぶり?)の社外セミナーに参加してきました。

今使っている環境は、ADO.NET1.1 + SQL Server 2000なので、ADO.NET2.0 + SQL Server 2005 になってどれ位変わったのかを知りたくてセミナーに参加です。

セミナーの講師の方は、随分と分かりやすく説明してくれるなぁと思っていて、家に帰って調べてみたら、結構人気講師の方でした。

その講師の方は、NECラーニングの山崎明子さんです。

ネット上には、山崎明子さんのご活躍ぶりが分かる情報がたくさんありました(サイト1サイト2サイト3)。

また、書籍も出版されてるようです(サイト1より)。
あと、VB系の方はよくご存知かと思う「Visual Basic .NET移行ガイド~やっぱりVBが好き~」の執筆もされているようですね。

いやいや、すごい方に教えていただけて、ラッキーです。

さて、セミナーの内容ですが、ADO.NETの基本からADO.NET2.0で変わったこと、SQL Server2005+ADO.NET2.0でできることなど、幅広いものでした。

とても勉強になりました。

以下は、備忘録です。

・SQL Server2005の特徴
  • VS2005の統合による開発生産性向上
  • .NET言語によるストアド作成
  • T-SQL拡張
・ADO.NET2.0の特徴
・SQL Server2005 + ADO.NET2.0で出来ること
  • MARS
    • 1つのConnectionで、複数のCommandを実行可能に。
  • 自動昇格トランザクション(System.Transactions)
    • 接続が1つの時はローカルトランザクション、複数の接続になると自動で分散トランザクションになる。
・その他メモ
  • DataSetのUpdateの競合発生時処理
  • DataSetとDataReader
    • WindowsアプリはDataSetが基本。
    • WebアプリはDataReaderが基本。
    • WebサービスはDataReaderが基本
  • Session領域は一般に500KB。
  • 接続文字列(セミコロン(;)で接続,参考)
      パラメータ 説明 設定値 既定値
      Data Source(Server) サーバー    
      Integrated Security Win統合セキュリティ True(SSPI) / False False
      User ID(uid) ユーザ    
      Password(pwd) パスワード    
      Initial Catalog(Database) デフォDB    
      Pooling プール設定 True/False True
      Max Pool Size 最大プール   100
      Min Pool Size 最小プール   0
feedpath tags: , , ,   generated by feedpath

| コメント (0) | トラックバック (0)