<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>pg2se - プログラマーとシステムエンジニアのスキルアップサイト</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/" />
    <link rel="self" type="application/atom+xml" href="http://pg2se.com/site/atom.xml" />
    <id>tag:pg2se.com,2008-11-24:/site//2</id>
    <updated>2010-07-25T13:52:46Z</updated>
    <subtitle>IT全般の知識・技術向上のための情報と、システム開発・設計に役立つコンテンツを提供</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Pro 5.02</generator>

<entry>
    <title>PostTwiOAuthプラグイン</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/07/posttwioauth.html" />
    <id>tag:pg2se.com,2010:/site//2.71</id>

    <published>2010-07-25T13:12:36Z</published>
    <updated>2010-07-25T13:52:46Z</updated>

    <summary>このたび、MovableTypeをバージョン4からバージョン5にアップデートした...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="DB" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="MySQL" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="php" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="その他" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="ブログ" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="movabletype" label="MovableType" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="mysql" label="MySQL" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="phpmyadmin" label="PhpMyAdmin" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="posttwioauth" label="PostTwiOAuth" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="twitter" label="Twitter" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ブログ" label="ブログ" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>このたび、<a href="http://www.sixapart.jp/movabletype/" target="_blank">MovableType</a>をバージョン4からバージョン5にアップデートした。</p>
<p>&nbsp;</p>
<p>少しバージョンが古かったのもあったけど、ブログの更新をTwitterに投稿する、</p>
<p>OAuth対応のプラグイン「<a href="http://www.macminiosx.com/2010/07/movable_typeoauthtwitter_postt_3.html" target="_blank">PostTwiOAuth</a>」を入れたかったから。</p>
<p>&nbsp;</p>
<p>MovableTypeのアップデート自体はそれほど問題なくできたのだけど、</p>
<p>手間取ったのは、データベース（MySQL）のデータのインポートとエクスポート。</p>
<p>&nbsp;</p>
<p>レンタルサーバ上で、MySQLのデータベースを複数作成できたので、</p>
<p>「<a href="http://www.movabletype.jp/documentation/mt5/upgrade/copy-mt4-to-mt5.html" target="_blank">既存のデータベースを残す方式のアップグレード </a>」を選択した。</p>
<p>MySQLのデータベースも以前作成したものとバージョンが異なるサーバのようで、</p>
<p>PhpMyAdminのインターフェイス、データベースの文字コードも違っていた。</p>
<p>&nbsp;</p>
<p>最初、データベースを丸ごとエクスポートしてインポートしようとしたけど、エクスポート</p>
<p>データの中にCreate Database文も含まれており、別のデータベースにインポートできへん・・</p>
<p>そんな状態で、よくよくインポートのオプションを見ると、最初のn個のクエリを</p>
<p>無視するなんてのがあったので、「こういう時に使うのかと納得した」</p>
<p>で、Create Database文、Set Database文が含まれる、最初の6ステートメントを</p>
<p>飛ばすことで、インポートはできるようになった・・</p>
<p>が、インポート後のデータが文字化け・・そういえば、エクスポートデータの最初に、</p>
<p>文字コードに関するステートメントも含まれてたので、それが原因か・・</p>
<p>タイトルと関係ない部分で長くなってしまっているが、結局のところ、</p>
<p>データベース丸ごとエクスポートではなく、テーブルを個別に選択してエクスポート</p>
<p>できる機能がPhpMyAdminにあったので、こちらで、全テーブルを選択してエクスポート、</p>
<p>それをインポートすることでうまくいった。</p>
<p>Create Database文がそもそも含まれないので、最初のn個のクエリを無視するという</p>
<p>オプションも使わずに済んだのがよかったんだろう。</p>
<p>&nbsp;</p>
<p>そんなこんなで、Movable Typeのバージョンアップ。少し手こずったけど、無事完了。</p>
<p>&nbsp;</p>
<p>本題の、PostTwiOAuthプラグイン。</p>
<p>現時点(2010/7/25)での最新版、0.40をインストール。</p>
<p>インストールは簡単。インストールするとMovable Typeのアップデートが行われたので</p>
<p>ちょっとびっくり。</p>
<p>&nbsp;</p>
<p>PostTwiOAuthプラグインの設定。</p>
<p>TwitterAPIは既存のものを利用するのかと思っていたけれど、自分自身でAPIを作成</p>
<p>する必要がある。API作成して、そのAPIにログインして各種設定。</p>
<p>テスト用のツィートまではサクサクっと完了。</p>
<p>&nbsp;</p>
<p>次に、既存の記事に対して、Twitterへの投稿のRepost機能があるので、早速、既存の</p>
<p>記事で試してみるが、投稿されない・・</p>
<p>エラーは発生しないので何が何だか不明。</p>
<p>プラグイン入れる前に投稿した記事だから？古いバージョンのMovableTypeの記事だから？</p>
<p>よくわからないので、とりあえず新しい記事を投稿して動作確認。</p>
<p>&nbsp;</p>
<p>そう・・、この記事が動作確認用の記事。</p>
<p>うまくいったかどうかは、投稿してみないとわかりませんので・・。</p>
<p>&nbsp;</p>
<p><a href="http://twitter.com/shinji_kato" target="_blank">タイムラインで早速確認してみよう。</a></p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>ひと目でわかる　Microsoft Office Project 2007</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/06/microsoft-office-project-2007.html" />
    <id>tag:pg2se.com,2010:/site//2.70</id>

    <published>2010-06-13T13:23:06Z</published>
    <updated>2010-07-25T11:50:14Z</updated>

    <summary>   ひと目でわかるMicrosoft Office Project 2007 ...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="システム管理" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="本" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="msproject" label="MS Project" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="システム管理" label="システム管理" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="プロジェクト管理" label="プロジェクト管理" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="本" label="本" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top">
<div style="BORDER-BOTTOM: #ffffff 1px solid; TEXT-ALIGN: center; BORDER-LEFT: #ffffff 1px solid; PADDING-BOTTOM: 6px; BACKGROUND-COLOR: #ffffff; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 160px; PADDING-RIGHT: 0px; FLOAT: left; BORDER-TOP: #ffffff 1px solid; BORDER-RIGHT: #ffffff 1px solid; PADDING-TOP: 6px"><a style="COLOR: #0000ff; TEXT-DECORATION: underline" href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4312481%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12014465%2f" target="_blank"><img style="PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px" border="0" alt="ひと目でわかるMicrosoft Office Project 2007" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8910%2f89100543.jpg%3f_ex%3d128x128&amp;m=" /> 
<p style="TEXT-ALIGN: left; PADDING-BOTTOM: 2px; LINE-HEIGHT: 1.4em; MARGIN: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: 6px; FONT-SIZE: 12px; PADDING-TOP: 2px">ひと目でわかるMicrosoft Office Project 2007</p></a>
<p style="TEXT-ALIGN: left; PADDING-BOTTOM: 2px; LINE-HEIGHT: 1.4em; MARGIN: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: 6px; COLOR: #000000; FONT-SIZE: 12px; PADDING-TOP: 2px">価格：2,394円（税込、送料別）</p></div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p></td></tr></tbody></table>
<div class="code">
<p>著者：　内館　町子</p>
<p>発行日：　２００７年３月５日</p>
<p>発行者：　瀬川　弘司</p>
<p>発行：　日経BPソフトプレス</p>
<p>289ページ</p>
<p>2280円＋税</p></div>
<p>&nbsp;</p>
<p>今、携わっているプロジェクトから、Project　2010　を使うことにしました。</p>
<p>現在は、<a href=" target=" _blank? http: www.microsoft.com japan office 2007 project 2010beta default.mspx?>ベータ版を使っていますが</a>、2010年6月17日に発売予定だそうです。 
<p></p>
<p>より、Excelライクに使えるようになっていたり、チームプランナーという、</p>
<p>リソース毎に線上に並べられたタスクをドラッグドロップで移動し、スケジュール</p>
<p>調整できる新機能があり、今まで以上に使い勝手がよくなっています。</p>
<p>&nbsp;</p>
<p>今回、紹介している本は、あくまで、現時点(2010/6/13)での最新バージョンの</p>
<p>解説本ですが、購入した理由は以下の通りです。</p>
<p>&nbsp;</p>
<p>これまで、MS　Projectでは、進捗管理の中で、実績時間の管理というものを</p>
<p>したことはありませんでした。進捗率（達成度）の管理だけをしていました。</p>
<p>それは実績時間と進捗管理が連動していて、よくありがちな、予定時間を経過</p>
<p>したけど、進捗率は50％だという状況が表現できなかったり、作業予定日に別の</p>
<p>作業をしていたため、予定の作業が1/2しかできなかった場合に、勝手に翌日以降</p>
<p>に残りの1/2の作業がスケジュールされたりという現象が発生していたからです。</p>
<p>&nbsp;</p>
<p>達成率と実績時間を別で管理したいなと思っていたけれど、ネットで調べてもなかなか</p>
<p>見つからなかったから諦めてました。</p>
<p>ところが今回も、実績時間の管理をしたいという話が上がったので、再度調べてたところ</p>
<p>やっと見つけました。</p>
<p><a href="http://ec.nikkeibp.co.jp/item/contents/mokuji/m_596100.html" target="_blank">http://ec.nikkeibp.co.jp/item/contents/mokuji/m_596100.html</a></p>
<p>↑第7章のコラム</p>
<p>&nbsp;</p>
<p>これだけ見て、即買いしました。</p>
<p>※意外と簡単にできたのでショックでしたが、一応手順も示しておきます。</p>
<p>&nbsp;</p>
<p><strong>MS Project 2007 での操作方法</strong></p>
<div class="code">
<p>[ツール]　メニューの　[オプション]　をクリックします。</p>
<p>オプション設定画面が開くので、[計算方法]　タブをクリックします。</p>
<p>チェックボックスの中で、「タスクの実績情報更新時に、リソースの作業時間を自動更新</p>
<p>する」というオプションがあるので、このチェックを、オフにします。</p>
<p>※これで、作業時間と達成率が別々に入力できるようになります。</p>
<p>※但し、達成率が100%になった場合は、作業時間の達成率も必ず100％になります。</p></div>
<p>&nbsp;</p>
<p><strong>&nbsp;本書の内容</strong></p>
<p>基本的な操作方法が主ですが、ところどころに、上記のようなコラムや、TIPS的な内容</p>
<p>も散りばめられています。</p>
<p>本書では次のようなテクニックが習得できます。</p>
<ul>
<li>プロジェクトのスケジュールを効果的に管理できる</li>
<li>プロジェクトの生産性を向上できる</li>
<li>グラフや図表を使ってわかりやすいプロジェクトレポートを作成できる</li>
<li>プロジェクトを追跡して実績を確認できる</li>
<li>ExcelやPowerPointなどほかのアプリケーションと情報を共有できる</li></ul>
<p>&nbsp;</p>
<p><strong>目次</strong></p>
<p><u>Project 2007注目の新機能</u></p>
<p><u>Project 2007の画面構成</u></p>
<p><u>第1章&nbsp;Projectを使ってプロジェクト管理</u></p>
<ul>
<li>Projectの基本機能</li>
<li>Excelでできること、Projectでできること</li>
<li>本書のゴール</li>
<li>コラム&nbsp;Project 200</li>
<li>Projectを起動するには</li>
<li>ツールバーの配置や表示を変更するには</li>
<li>ビューバーを表示するには</li>
<li>起動時に適用するビューを設定するには</li>
<li>既定のタスクの種類を設定するには</li>
<li>コラム&nbsp;タスクの種類</li>
<li>プロジェクトで使用するカレンダーを設定するには</li>
<li>カレンダーオプションを設定するには</li>
<li>プロジェクト情報を設定するには</li>
<li>プロジェクトガイドを使ってプロジェクト計画を作成するには</li>
<li>Projectファイルを保存するには</li>
<li>Projectを終了するには</li>
<li>コラム&nbsp;マイクロソフトライセンス認証を行うには</li>
<li></li></ul>
<p><u>第2章&nbsp;プロジェクト計画の作成&nbsp;</u></p>
<ul>
<li>Projectファイルを開くには</li>
<li>タスクを入力するには</li>
<li>マイルストーンを設定するには</li>
<li>アウトラインを設定するには</li>
<li>定期タスクを入力するには</li>
<li>プロジェクトのサマリータスクを表示するには</li>
<li>タスクの期間を設定するには</li>
<li>複数のタスクの期間を一度に設定するには</li>
<li>タスクの依存関係を設定するには</li>
<li>タスクの依存関係を変更するには</li>
<li>タスクの制約タイプを変更するには</li>
<li>タスクに期限を設定するには</li>
<li>タスクにメモや資料を添付するには</li>
<li></li></ul>
<p><u>第3章&nbsp;リソースの割り当て&nbsp;</u></p>
<ul>
<li>リソースを作成するには</li>
<li>登録したリソースを削除するには</li>
<li>リソースの種類を設定するには</li>
<li>コラム&nbsp;［時間単価型］リソースと［数量単価型］リソース</li>
<li>リソースの利用可能期間と単位を設定するには</li>
<li>コラム&nbsp;リソースの利用可能期間と割り当て余力</li>
<li>リソースにグループ名を設定するには</li>
<li>リソースのカレンダーを設定するには</li>
<li>タスクにリソースを割り当てるには</li>
<li>リソースの割り当て時にリソースをフィルタ化するには</li>
<li>リソースの割り当てを解除するには</li>
<li>割り当てたリソースを置き換えるには</li>
<li>各リソースのタスクの作業時間を確認するには</li>
<li>コラム&nbsp;グラフの形状と目盛</li>
<li></li></ul>
<p><u>第4章&nbsp;コストの管理&nbsp;</u></p>
<ul>
<li>リソースにコストを設定するには</li>
<li>リソースに複数のコストを設定するには</li>
<li>コラム&nbsp;タスクとリソースのコスト単価表について</li>
<li>タスクにコストを設定するには</li>
<li>コラム&nbsp;固定コストの計上の時期</li>
<li>コスト型リソースを設定するには</li>
<li>プロジェクト全体のコストを確認するには</li>
<li>予算コストを使用するには</li>
<li></li></ul>
<p><u>第5章&nbsp;プロジェクト計画の調整&nbsp;</u></p>
<ul>
<li>クリティカルパスを確認するには</li>
<li>タスク影響要素を確認するには</li>
<li>タスクの依存関係を調整するには（１）</li>
<li>タスクの依存関係を調整するには（２）</li>
<li>タスクを分割するには</li>
<li>リソースを平準化するには</li>
<li>リソースを追加するには</li>
<li>基準計画を保存するには</li>
<li>中間計画を保存するには</li>
<li></li></ul>
<p><u>第6章&nbsp;プロジェクト計画をもっと使いやすくする機能&nbsp;</u></p>
<ul>
<li>マークを使うには</li>
<li>計算式を使うには</li>
<li>ユーザー設定フィールドを簡単に表示するには</li>
<li>グループ化してタスクを見やすくするには</li>
<li>開始日と期間でグループ化するには</li>
<li>フィルタを使用してタスクを見やすくするには</li>
<li>依存関係を設定していないタスクを見つけるには</li>
<li>リソースが割り当てられていないタスクを見つけるには</li>
<li>選択したタスクをすばやく表示するには</li>
<li>アウトライン番号を表示するには</li>
<li>WBS番号を設定するには</li>
<li>ガントバーのスタイルを変更するには</li>
<li>ガントチャートのスタイルを一括で設定するには</li>
<li>ガントバーにコメントを挿入するには</li>
<li>サマリータスクにガントバーを重ね合わせて表示するには</li>
<li>タスクにカレンダーを割り当てるには</li>
<li>タイムスケールに会計年度を表示するには</li>
<li>タイムスケールにプロジェクト開始からの日数を表示するには</li>
<li>［期間］フィールドの形式を日から時間に変更するには</li>
<li>ビューを分割するには</li>
<li>コラム&nbsp;ビューの使い方</li>
<li>独自のビューを作成し、ビューバーに登録するには&nbsp;</li>
<li>カレンダーやビューを他のプロジェクトでも使用するには&nbsp;</li>
<li>コラム&nbsp;Global.MPTから削除してしまったビューを復元するには&nbsp;</li>
<li></li></ul>
<p><u>第7章&nbsp;作業実績をプロジェクト計画に反映&nbsp;&nbsp;</u></p>
<ul>
<li>達成率をプロジェクト計画に入力するには&nbsp;</li>
<li>コラム&nbsp;達成率と実績作業時間を別々に管理するには&nbsp;4</li>
<li>実績作業時間をプロジェクト計画に入力するには（１）&nbsp;</li>
<li>実績作業時間をプロジェクト計画に入力するには（２）&nbsp;</li>
<li>作業実績を自動で入力するには&nbsp;</li>
<li>プロジェクトの進捗状況をひと目で把握するには&nbsp;</li>
<li>現在の日付を表示するには&nbsp;</li>
<li>プロジェクトの変更箇所を表示するには&nbsp;</li>
<li>クリティカルタスクの背景をハイライト表示するには&nbsp;</li>
<li>タスクをハイライト表示するには&nbsp;</li>
<li></li></ul>
<p><u>第8章&nbsp;進捗管理とプロジェクトの再計画211&nbsp;</u></p>
<ul>
<li>遅れているタスクを確認するには</li>
<li>タスクの依存関係を再設定するには</li>
<li>リソースの割り当て超過を解消するには</li>
<li>タスクにリソースを追加するには</li>
<li>作業を中断したタスクを分割するには</li>
<li>再計画後に基準計画を保存するには</li>
<li>現行計画と基準計画を比較するには</li>
<li>プロジェクトのバージョンを比較するには</li>
<li></li></ul>
<p><u>第9章&nbsp;レポートを作成してプロジェクト情報の共有&nbsp;</u></p>
<ul>
<li>予算と実績コストのレポートをExcelで作成するには</li>
<li>タスクの進捗状況のレポートをVisioで作成するには</li>
<li>プロジェクトの概要のレポートを作成するには</li>
<li>プロジェクト計画を印刷するには</li>
<li>プロジェクト計画のメモを印刷するには</li>
<li>作成したプロジェクト計画をメールで送信するには</li>
<li>アーンドバリュー値でプロジェクトの分析レポートを作成するには</li>
<li>プロジェクト計画をテンプレートとして保存するには</li>
<li>コラム&nbsp;テンプレート作成のコツ</li>
<li>テンプレートの参照先を共有フォルダに変更するには</li>
<li></li></ul>
<p><u>第10章&nbsp;他アプリケーションと連携&nbsp;</u></p>
<ul>
<li>Excelで作成したプロジェクト計画をProjectに取り込むには</li>
<li>ガントチャートを画像としてファイルに保存するには</li>
<li>Active Directoryユーザー情報からリソースを追加するには</li>
<li>Outlookの仕事リストからタスクを追加するには</li>
<li>ProjectファイルをXPSファイル形式に変換するには</li>
<li>Visioでガントチャートを表示するにはプロジェクト計画をPowerPointのスライドで使用するには</li>
<li></li></ul>
<p><u>第11章&nbsp;統合プロジェクトの利用&nbsp;</u></p>
<ul>
<li>マスタプロジェクトにサブプロジェクトを挿入するには</li>
<li>サブプロジェクトに依存関係を設定するには</li>
<li>コラム&nbsp;外部タスクの利用</li>
<li>マスタプロジェクトで作業実績を入力するには</li>
<li>複数のプロジェクトでリソースを共有するには共有リソースの負荷状況を確認するには</li>
<li>コラム&nbsp;Project 2007の主なショートカットキー</li></ul>
<p>&nbsp;</p>
<div></div>]]>
        
    </content>
</entry>

<entry>
    <title>ASP.NET MVC2 リリース版</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/05/aspnet-mvc2.html" />
    <id>tag:pg2se.com,2010:/site//2.69</id>

    <published>2010-05-03T05:27:58Z</published>
    <updated>2010-05-03T07:33:39Z</updated>

    <summary>リリース版が出てから、しばらく経ってしまっていますがまとめてみます。 &amp;nbsp...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term=".net" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="ASP.NET MVC" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Windows" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="リリース" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="aspnet" label="ASP.NET" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="c" label="C#" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="mvc" label="MVC" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="visualstufio" label="VisualStufio" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="webアプリケーション" label="Webアプリケーション" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="フレームワーク" label="フレームワーク" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>リリース版が出てから、しばらく経ってしまっていますがまとめてみます。</p>
<p>&nbsp;</p>
<p><strong>ASP.NET　MVC２</strong></p>
<p>2010年3月上旬リリースされた、ASP.NET MVC1の新バージョンです。</p>
<p>MVC1と互換性があり、.NETフレームワーク3.5、4.0に対応だそうです。</p>
<p>&nbsp;</p>
<p>Visual Studio 2010　には、標準で含まれるそうです。</p>
<p>Visual Studio 2008　ユーザはダウンロードしてインストールしましょう!!</p>
<p><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=c9ba1fe1-3ba8-439a-9e21-def90a8615a9&amp;displaylang=en" target="_blank">ASP.NET MVC 2 RTM </a></p>
<p>※因みにRTMとは、Release to Manufacturing version（正式リリース版）</p>
<p>&nbsp;</p>
<p><strong>サンプルアプリケーションと、ソースコード</strong></p>
<p>ASP.NET　MVC2をインストール後、プロジェクト生成のウィザードが利用</p>
<p>できるようになりますが、その際に、サンプルのアプリケーションも含める</p>
<p>プロジェクトを選択することができたり、テストプロジェクトを含めるかも選択</p>
<p>できたりします。</p>
<p>APS.NET MVCを初めて学ぶ方や、初めて動かしてみる方にとって、</p>
<p>サンプルのアプリケーションは助けになると思います。</p>
<p>&nbsp;</p>
<p>サンプルのアプリケーションでは、基本的な画面遷移やページのテンプレート、</p>
<p>データベースを利用したユーザ認証機能、バリデーションの機能といった、</p>
<p>Webアプリケーションで中心となる機能が簡単ではあるけれど、ひととおり</p>
<p>盛り込まれてます。</p>
<p>このサンプルアプリケーションをベースに自分のアプリを構築していけば、</p>
<p>理解も早まると思います。</p>
<p>&nbsp;</p>
<p>また、少し複雑なことをしようとしたときや、開発中に思った通りの動作をしない</p>
<p>場合には、ASP.NET MVC２　では、ソースコードも公開されているので、</p>
<p>まだまだ日本語のドキュメントも少ない状況なので、ソースコードを直接参照</p>
<p>できるのは安心感があります。</p>
<p>&nbsp;</p>
<p><strong>ASP.NET MVC2 新機能・強化点</strong></p>
<p>さて、ASP.NET MVC2を、ASP.NET MVC1と比較した際の新機能について</p>
<p>ですが、以下にポイントだけまとめておきます。</p>
<p>&nbsp;</p>
<ul>
<li>新しい強く型付けされたHTMLヘルパー</li>
<li>サーバおよびクライアントの両方で改善されたモデル検証のサポート</li>
<li>テンプレートのカスタマイズが可能な自動スキャフォールドUIヘルパー</li>
<li>大きなアプリケーションを"エリア"に分割するサポート</li>
<li>長時間起動するタスクの並列稼働を可能にする非同期コントローラをサポート</li>
<li>Html.RenderActionによるページ／サイトのサブセクションの描画をサポート</li>
<li>多くの新しいヘルパー機能、ユーティリティ、APIの改善</li>
<li>改善されたVisual Studioツールのサポート</li></ul>
<p>&nbsp;</p>
<p>大きな強化点として個人的に注目なのは、</p>
<p>Areasという、アプリケーションの分割機能と、型付けされたHTMLヘルパー、</p>
<p>非同期コントローラといったとこでしょうか？</p>
<p>&nbsp;</p>
<p>先に書いたように、残念ながら日本語のドキュメントはまだまだ充実していない</p>
<p>感がありますが、ASP.NET MVC1　の開発手法が大きく変わることはないので</p>
<p>MVC1　の情報もまだまだ生かせると思います。</p>
<p>&nbsp;</p>
<p>まず、書籍。</p>
<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6216044%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13302453%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7980%2f79802401.jpg%3f_ex%3d128x128&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7980%2f79802401.jpg%3f_ex%3d80x80" /></a> </p>
<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6216044%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13302453%2f" target="_blank">ASP．NET MVC実践プログラミング</a> </p>
<p>ASP.NET MVC&nbsp;唯一の和書だと思うのですが、基本がしっかり押さえられ、</p>
<p>フレームワーク利用のノウハウも充実しています。</p>
<p>&nbsp;</p>
<p><strong>リンク集</strong></p>
<p><a href="http://www.atmarkit.co.jp/fdotnet/aspnetmvc/index/index.html" target="_blank">連載：ASP.NET MVC入門（＠IT）</a></p>
<p><a href="http://codezine.jp/article/detail/2748" target="_blank">もう一つのASP.NET 「ASP.NET MVC」を知る・前編、後編）（CodeZone）</a></p>
<p><a href="http://keicode.com/dotnet/aspnet-mvc101-what-is-mvc.php" target="_blank">ASP.NET MVC 入門 (1)~(3)</a></p>
<p><a href="http://www.slideshare.net/onos/aspnet-mvc-2" target="_blank">ASP.NET MVC 2（スライド）</a></p>
<p><a href="http://codezine.jp/article/detail/3922" target="_blank">ASP.NET MVCフレームワークの概要を理解する</a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>オープンソースERPソフトウェア - Adempiere</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/04/erp---adempiere.html" />
    <id>tag:pg2se.com,2010:/site//2.68</id>

    <published>2010-04-04T14:30:04Z</published>
    <updated>2010-04-04T15:12:52Z</updated>

    <summary>システム開発に携わる方であれば、当然言葉は知っていると思うが、 ERP（Ente...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="その他" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="システム設計" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="システム開発" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="情報" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="adempiere" label="Adempiere" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="erp" label="ERP" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="オープンソース" label="オープンソース" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="システム開発" label="システム開発" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>システム開発に携わる方であれば、当然言葉は知っていると思うが、</p>
<p>ERP（Enterprise Resource Planning）とは、</p>
<p>購買・製造・物流・販売・会計システム、仕入先・顧客とのEDIを含めた</p>
<p>業務管理システムのことを指し示めす。<br /></p>
<p>どのような企業であっても、たとえERPパッケージを使用していなくても、</p>
<p>何らかの業務システムを利用しているので、システム開発に携わる技術者にとって、</p>
<p>ERPについての理解、ERPと業務システムとの関わりは必須の知識だと思う。<br /></p>
<p>システム開発の現場で、販売管理システムや営業支援システムなど、</p>
<p>ERPシステムの一部に携わることは多くても、ERPパッケージそのものや、</p>
<p>業務管理システム全体を経験できることは、そう多くはないと思う。</p>
<p>&nbsp;</p>
<p>大抵のエンジニアは、そういった不足分の知識を以下のような書籍で、</p>
<p>まかなったりしているのではないだろうか？</p>
<p>&nbsp;</p>
<p>&nbsp;<a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4468374%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12093668%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7981%2f79811454.jpg%3f_ex%3d80x80&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7981%2f79811454.jpg%3f_ex%3d64x64" /></a> <a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4468374%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12093668%2f" target="_blank">ITエンジニアのための〈業務知識〉がわかる本第2版</a></p>
<p>&nbsp;<a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4513007%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12118622%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7981%2f79811288.jpg%3f_ex%3d80x80&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7981%2f79811288.jpg%3f_ex%3d64x64" /></a> <a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4513007%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12118622%2f" target="_blank">ITエンジニアのための〈会計知識〉がわかる本</a></p>
<p>&nbsp;</p>
<p>本題が後になってしまったが、タイトルの"<a href="http://www.adempiere.jp/" target="_blank">Adempiere</a>"とは、</p>
<p>オープンソースで提供されるERPのソフトウェアである。</p>
<p>&nbsp;</p>
<p>「<a href="http://www.atmarkit.co.jp/fjava/rensai4/enterprise_appli01/01.html" target="_blank">Adempiereを試してERPの常識・仕組みを体得しよう</a>」</p>
<p>上の記事で詳しく書かれているが、以下に簡単にまとめておきます。</p>
<p>&nbsp;</p>
<p>有償のERPは一般的に高価であることと、やはり独自のカスタマイズが</p>
<p>必要で、導入後もコストがかかることが挙げられる。</p>
<p>しかしながら自社で１から開発するのも当然現実的ではない。</p>
<p>そこで、まだまだ導入事例は少ないが、オープンソースのERPパッケージ</p>
<p>を利用して開発をすることで、カスタマイズが自由にでき、コストも抑えられる</p>
<p>メリットが挙げられる。</p>
<p>なによりも、少なからずERPパッケージ開発ノウハウを得ることができる点は</p>
<p>大きいと思う。</p>
<p>※もちろんオープンソースを利用するリスクも高いが</p>
<p>&nbsp;</p>
<p>こういった、オープンソースを活用できる体制作りも大切でしょう。</p>
<p>&nbsp;</p>
<p>※因みに、"Adempiere"は、アデンピエールと読むようで、</p>
<p>日本語化されたパッケージが以下よりダウンロード可能です。</p>
<p><a href="http://www.vector.co.jp/soft/winnt/business/se441673.html">http://www.vector.co.jp/soft/winnt/business/se441673.html</a></p>
<p>&nbsp;</p>
<p>→Postgres、Oracle、Oraxle10gXE　を選択できるが、</p>
<p>Postgres、Oracle10gXEのみ対応しているようで、Oracleではインストール</p>
<p>できませんでした（sqlplusでの接続コマンドがxeのみ対応なようです）</p>
<p>※また、xeをインストールした場合でも、うまくセットアップできず、</p>
<p>データベースのタイプで"OraxleXE"でなく、"Oracle"を選択しないとダメでした。</p>
<p>※やり方が間違っているのかもしれないが上記で、なんとか動かすことはできた!</p>
<p>&nbsp;</p>
<p>是非お試しあれ。</p>
<p>（ほんとはソースも読んで、ERPパッケージの開発ノウハウとか勉強したいケド）</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>オラクル (OTN) セミナーオンデマンドコンテンツ</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/04/-otn.html" />
    <id>tag:pg2se.com,2010:/site//2.67</id>

    <published>2010-04-04T01:57:14Z</published>
    <updated>2010-04-04T03:00:47Z</updated>

    <summary><![CDATA[OTNでオンデマンドのセミナーコンテンツが公開されています。 &nbsp;WEB...]]></summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="DB" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Oracle" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="db" label="DB" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="oracle" label="Oracle" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="オンデマンド" label="オンデマンド" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="セミナー" label="セミナー" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="データベース" label="データベース" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="教育" label="教育" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="研修" label="研修" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p><a href="http://www.oracle.com/technology/global/jp/ondemand/otn-seminar/beginner/index.html" target="_blank">OTNでオンデマンドのセミナーコンテンツが公開されています。</a></p>
<p><br />&nbsp;WEBでのオンラインセミナーの資料をオンデマンドで公開したのだと思うが、</p>
<p>タイトルも興味深いものが多いのでいろいろと利用できると思う。</p>
<p>必要な情報の収集、新入社員研修、社内研修での利用等々。</p>
<p>&nbsp;</p>
<p>資料は、PDF（たぶんPowerPoint）の資料だけでなく、</p>
<p>その資料を基に実施されたセミナーの動画での説明ファイルも付属している</p>
<p>物もあるので、手軽に利用できそう。</p>
<p>&nbsp;</p>
<p>サイトより</p>
<div class="code">
<p>いつでも好きな時間にオラクルの製品や技術について学べるように、オンデマンドコンテンツをご用意しました。日々の学習にお役立てください。</p>
<p class="boldbodycopy">こんな方に</p>
<ul>
<li>自分のペースで学習したい 
<li>日中はセミナーを受講する時間がない </li></ul></div>
<p>&nbsp;</p>
<p>サイトでは、以下のようなタイトルが公開されてます。</p>
<p>&nbsp;</p>
<p>・超入門！Oracle Databaseって何だ!?</p>
<p>・ここからはじめよう！　Oracle SQL入門</p>
<p>・意外と簡単!?　OracleDatabase11g -データベース設定編</p>
<p>・今さら聞けない!?レプリケーション</p>
<p>・今さら聞けない!?バックアップ・リカバリ入門</p>
<p>・今さら聞けない!?Oracle入門</p>
<p>・意外と簡単!? Oracle Database 11g　-セキュリティ編</p>
<p>・今さら聞けない!?パフォーマンス・チューニング入門</p>
<p>・意外と簡単!? Oracle Database 11g -バックアップ・リカバリ編</p>
<p>・Oracle入門　前編（ダイセミより）&lt;本編：約31分&gt;</p>
<p>・パーティショニング&lt;本編：約26分&gt;</p>
<p>・ORACLE MASTER取得支援プログラム </p>
<p>　Get ORACLE MASTER!ポイント解説[11g SilverDBA11g]</p>
<p>・ORACLE MASTER取得支援プログラム</p>
<p>　Get ORACLE MASTER!ポイント解説[BronzeDBA11g]</p>
<p>・ORACLE MASTER取得支援プログラム</p>
<p>　Get ORACLE MASTER!ポイント解説[11g SQL基礎?]</p>
<p><br />&nbsp;</p>
<p>書籍を買ってまで勉強する必要のない場合は、</p>
<p>まずはこのサイトのコンテンツを利用してみてはどうでしょう。</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>twitterアプリケーション</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/03/twitter-2.html" />
    <id>tag:pg2se.com,2010:/site//2.66</id>

    <published>2010-03-28T16:15:07Z</published>
    <updated>2010-03-28T17:00:50Z</updated>

    <summary><![CDATA[twitterと連携するアプリケーション作成のためのAPI群です。 &nbsp;...]]></summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="struts2" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="java" label="java" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="struts2" label="struts2" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="twitter" label="twitter" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="twitterアプリケーション" label="twitterアプリケーション" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="webアプリケーション" label="Webアプリケーション" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ツイッター" label="ツイッター" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>twitterと連携するアプリケーション作成のためのAPI群です。</p>
<p>&nbsp;</p>
<p>OAuthというツイッターの認証機能を利用できる仕組みがあるので、</p>
<p>お手軽に、しかもユーザにとっても安心・安全に利用できる仕組みになってる。</p>
<p>&nbsp;</p>
<p>OAuthを利用するためには、アプリケーションを登録しないといけないので、</p>
<p><a href="http://twitter.com/apps" target="_blank">http://twitter.com/apps</a></p>
<p>上記より、登録します。</p>
<p>&nbsp;</p>
<p>登録すると、Consumer key、Consumer secret　という情報を取得できるので、</p>
<p>その情報を利用して、ユーザを、twitterの認証ページに誘導し、アプリの利用の</p>
<p>同意を頂くと、アプリから、そのユーザができる操作を代行できるようになる。</p>
<p>&nbsp;</p>
<p>今回は、好きな"お酒"のことに特化したつぶやきをするためのアプリ、</p>
<p><a href="http://saketter.com/" target="_blank">「saketter（さけったー）」というWebアプリ</a>を作成してみた。</p>
<p>"いまなにのんだ？"をコンセプトに、飲んだお酒と"つぶやき"を投稿するアプリ。</p>
<p>（また、#sake というカテゴリが自動で設定されるようになってます）</p>
<p>&nbsp;</p>
<p>１．ログインボタンを押す</p>
<p>２．Consumer key、Consumer secretを 設定しtwitterの認証ページにリダイレクト</p>
<p>３．認証が成功すると、事前に設定したアプリのページに自動で戻ってくる</p>
<p>４．AccessTokenという、認証が成功したユーザを操作するための権限を取得する</p>
<p>５．AccessTokenを利用して、"つぶやく"　など、必要な処理を呼び出す。</p>
<p>&nbsp;</p>
<p>今回は、Java（Struts2）を利用して、Webアプリケーションを作成した。</p>
<p>※<a href="http://twitter4j.org/ja/index.html" target="_blank">twitter4jというOAuthも手軽に利用できるライブラリ</a>があったので。</p>
<p>&nbsp;</p>
<p>要点のコードを抜粋</p>
<div class="code">
<p>//最初にtwitterのサイトへ誘導し認証させる</p>
<p>Twitter twitter = new TwitterFactory().getInstance();<br />twitter.setOAuthConsumer("xxxxxxxxxx", "yyyyyyyyyy");<br />RequestToken token = twitter.getOAuthRequestToken();<br />sessionMap.put("twitter", twitter);<br />response.sendRedirect(token.getAuthenticationURL());</p></div>
<p>&nbsp;</p>
<div class="code">
<p>//次に認証が成功すると任意のページへリダイレクトされるので権限を取得</p>
<p>Twitter twitter = (Twitter)sessionMap.get("twitter");<br />if (twitter != null) {<br />&nbsp;AccessToken token = twitter.getOAuthAccessToken();<br />&nbsp;sessionMap.put("token", token);</p>
<p>}</p></div>
<p>&nbsp;</p>
<div class="code">
<p>//権限を利用してアプリから"つぶやき"を投稿</p>
<p>AccessToken token = (AccessToken)sessionMap.get("token");<br />if (token != null) {<br />&nbsp;Twitter twitter = (Twitter)sessionMap.get("twitter");<br />&nbsp;twitter.updateStatus("つぶやきを投稿");<br />}<br /></p></div>
<p>&nbsp;</p>
<p>※これでひととおりの操作が可能です。</p>
<p>つぶやき以外にも様々な操作がAPIで提供されてます。</p>
<p>&nbsp;</p>
<p>※携帯からの利用についてですが、<a href="http://game5.jp/blog/2009/11/17/%E3%82%B5%E3%83%BC%E3%83%90%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%81%8C%E4%B8%8D%E6%AD%A3%E3%81%A3%E3%81%A6%E6%80%92%E3%82%89%E3%82%8C%E3%82%8B%E4%BB%B6%EF%BC%88wj42018e%EF%BC%89/" target="_blank">twitterの認証機能は、https対応ですが</a></p>
<p><a href="http://game5.jp/blog/2009/11/17/%E3%82%B5%E3%83%BC%E3%83%90%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%81%8C%E4%B8%8D%E6%AD%A3%E3%81%A3%E3%81%A6%E6%80%92%E3%82%89%E3%82%8C%E3%82%8B%E4%BB%B6%EF%BC%88wj42018e%EF%BC%89/" target="_blank">携帯で表示時にtwitterの証明書ではエラーになるようです。</a></p>
<p>なので、HTTPリクエストのヘッダーで、携帯からのアクセスかを判断して、</p>
<p>携帯からの場合は、HTTPSを、HTTPへ書き換えてあげるとうまくいきます。</p>
<p>セキュリティが弱くなるけれど、twitterで通常の携帯ログインもHTTPのよう</p>
<p>なので、とりあえず問題はないかと...。</p>
<p><br />&nbsp;とりいそぎ最低限のラインで作成してみたので、</p>
<p>また機能アップしていきたいと思います。</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>続 Struts 2入門</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/03/-struts-2.html" />
    <id>tag:pg2se.com,2010:/site//2.65</id>

    <published>2010-03-18T15:43:31Z</published>
    <updated>2010-03-18T16:21:51Z</updated>

    <summary>CodeZineで、Struts2入門(1)?(8)　の続編、 続 Struts...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="struts2" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="executeandwait" label="ExecuteAndWait" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="java" label="Java" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="struts2" label="Struts2" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="インターセプタ" label="インターセプタ" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="システム開発" label="システム開発" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="同期処理" label="同期処理" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>CodeZineで、<a href="http://codezine.jp/article/corner/47" target="_blank">Struts2入門(1)?(8)</a>　の続編、</p>
<p>続 Struts 2入門が始まりました!!</p>
<p>&nbsp;</p>
<p>Strutsは以前から利用しているので、Struts 2になった今後も是非とも</p>
<p>発展し続けていってほしいと思う。</p>
<p>自分自身でもStrtuts2でWebアプリケーションを作っているので、</p>
<p>いろいろと情報発信して、Struts2の発展に貢献できればなと思う。</p>
<p>&nbsp;</p>
<p>Strutsの時よりも、情報源が少なく感じ、なかなか活用しきれていない</p>
<p>面があるので、こういった連載が始まるのはありがたい!!</p>
<p><a href="http://codezine.jp/article/detail/4912" target="_blank">記事</a>を見てもらうほうが詳細に理解できますが、さわりだけわかれば</p>
<p>良い方は以下を参照してください。</p>
<p>&nbsp;</p>
<p><strong>続 Struts 2入門</strong></p>
<p>基本機能のおさらいから2.1系で採用された機能の説明や実装例を紹介</p>
<p>（1）<u>Struts 2の同期処理を手助けするExecuteAndWaitインターセプタ</u></p>
<p><u></u>&nbsp;</p>
<p>処理に時間がかかるActionクラスの処理状況を監視し、その結果を自動的に</p>
<p>判断するためのExecuteAndWaitインターセプタの使用例を解説。</p>
<p>&nbsp;</p>
<p>Actionクラスにはメインのロジックを記述するだけで、あとは設定のみで、</p>
<p>同期処理を実現することが可能になります。</p>
<p>&nbsp;</p>
<p>具体的な手法としては、</p>
<p>ブラウザの自動リフレッシュ機能を利用し、Actionクラス内の時間の</p>
<p>かかる処理を、自動で途中中断して、リフレッシュを設定したページを表示。</p>
<p>（Actionの実行は継続されセッションに維持される）</p>
<p>&nbsp;</p>
<p>再度リフレッシュしてサーバにアクセスすると、中断したActionの状況を</p>
<p>再度監視できるようになっている。</p>
<p>まだ処理中の場合は、再度リフレッシュページへ、処理が完了した場合は</p>
<p>完了用のページが表示されるという仕組みです。</p>
<p>&nbsp;</p>
<p>これらを、上記のExecuteAndWaitインターセプタ（アノテーションの機能）</p>
<p>を利用することで設定をおこなうことで、簡単に利用することができます。</p>
<p>&nbsp;</p>
<p>インターセプタ（汗）</p>
<p>まだぜんぜん利用できていないので、実用できるように勉強します。</p>
<p>次回もインターセプタの機能についての記事のようです。</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>C# - NotifyIconを利用したタスクトレイでの常駐</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/03/c---notifyicon.html" />
    <id>tag:pg2se.com,2010:/site//2.64</id>

    <published>2010-03-14T14:04:24Z</published>
    <updated>2010-03-14T15:20:38Z</updated>

    <summary>業務アプリに限らず、いろいろなプログラム作成を経験していると、 タスクトレイ（通...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term=".net" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="プログラム" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="net" label=".NET" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="c" label="C#" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="notifyicon" label="NotifyIcon" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="visualstudio" label="VisualStudio" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowstate" label="WindowState" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="wndproc" label="WndProc" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="プログラム" label="プログラム" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>業務アプリに限らず、いろいろなプログラム作成を経験していると、</p>
<p>タスクトレイ（通常画面右下の時計が表示される場所）へアプリケーションを</p>
<p>常駐させて（タスクバーに出さずに他の作業の邪魔にならないように）動かしたい</p>
<p>事は必ず１度や2度はあるのではないかと思う。</p>
<p>&nbsp;</p>
<p>C#（.Net Framework）では、タスクトレイへアプリケーションを格納するための</p>
<p>クラスが標準で備わっている。それが、タイトルにもある、NotifyIconである。</p>
<p>使い方はいたって簡単であり、タスクトレイへの常駐だけでなく、アイコンの設定、</p>
<p>バルーン表示機能（吹き出しのようなメッセージが一定時間表示される機能）や、</p>
<p>ヒントメッセージ、コンテキストメニューの設定がとても簡単にできるが、</p>
<p><u><strong>細かい動きを気にすると、少しテクニックが必要になるので書いておきます。<br /><br /></strong></u>※細かい動きと言っても、常駐アプリケーションを使用する場合には大抵必要になる</p>
<p>だろう動きだと思うので、調べると結構同様の対応策が検索できる。</p>
<p>&nbsp;</p>
<p>まずは、NotifyIconの使い方も含め、</p>
<div class="code">
<p>１．NotifyIconをフォームに張り付ける。<br /></p>
<p>２．NotifyIconのVisibleプロパティをtrueにし、Iconプロパティに表示したいアイコンを<br />　　指定すると、これだけでアプリケーション実行時にタスクトレイにアイコンが表示</p>
<p>　　される。また、タスクバーにアプリケーションのタスクを表示させないためには、</p>
<p>　　ShowInTaskbarプロパティをflaseに設定します。<br /></p>
<p>３．Titleプロパティの内容が、ヒントメッセージになり、BalloonTip?プロパティを設定</p>
<p>　　し、ShowBalloonTipメソッドでバルーンを一定時間表示できます。<br /></p>
<p>４．ここまでは、簡単な設定だけでうまくいくのですが、アプリケーションのウィンドウは</p>
<p>　　最小化するとタスクバーには表示されないのですが、デスクトップ領域に表示されて</p>
<p>　　しまいます。また、閉じるボタンを押した際にアプリケーションが終了するのではなく、</p>
<p>　　画面は消えるが、タスクトレイには常駐されたままにしたいというのが一般的な機能</p>
<p>　　でしょう。<br /></p>
<p>５．結論から言うと、WndProc　というメッセージの処理をつかさどるメソッドをオーバ</p>
<p>　　ライドすると自由にアプリケーションの動作を制御することが可能なので、</p>
<p>　　この方法がベストでしょう。ただ今回は、極力簡単で分かりやすい方法で</p>
<p>　　できないかを探しており、少し動作的に微妙な点はあるが、メッセージを使用せず、</p>
<p>　　WindowStateプロパティを制御するだけでもうまく動かすことはできた。<br /></p>
<p>６．WndProcの制御も覚えれば簡単なので、ハードルは高くないと思われるが、今回は</p>
<p>　　せっかくなので両方の方法のサンプルを書いておきます。</p></div>
<p>&nbsp;</p>
<p><strong>コードサンプル</strong></p>
<p><strong><br /></strong>前提条件</p>
<p>・フォームにNotifyIcoonコントロールを張り付ける</p>
<p>・NotifiIconのVisibleをtrue、ShowInTaskbarプロパティをfalse、Iconプロパティを設定</p>
<p>&nbsp;</p>
<p>a）WndProcを使用する方法</p>
<div class="code">
<p>&nbsp;&nbsp;&nbsp; public partial class Form1 : Form<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private int&nbsp;&nbsp;&nbsp; WM_SYSCOMMAND = 0x112;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private IntPtr SC_MINIMIZE&nbsp;&nbsp; = (IntPtr)0xF020;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public Form1()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; InitializeComponent();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; protected override void WndProc(ref Message m)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//最小化されたときにフォームを非表示にする<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ((m.Msg == WM_SYSCOMMAND) &amp;&amp; (m.WParam == SC_MINIMIZE))<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Hide();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//上記以外はデフォルトの処理をおこなう<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; base.WndProc(ref m);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void notifyIcon1_DoubleClick(object sender, EventArgs e)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//タスクトレイのアイコンダブルクリックでフォームを表示、アクティブ化<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Show();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Activate();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void Form1_FormClosing(object sender, FormClosingEventArgs e)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//フォームを閉じる時、タスクトレイに表示されている場合は閉じずに非表示<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (notifyIcon1.Visible)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.Cancel = true;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Hide();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//NotifyIconのコンテキストメニューに追加した「閉じる」メニュークリックイベント&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void toolStripMenuItem1_Click(object sender, EventArgs e)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//NotifyIconのコンテキストメニューで閉じるメニューを実行した場合<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//NotifyIconを非表示にしてアプリケーションを終了する<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; notifyIcon1.Visible = false;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Application.Exit();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; }<br /></p></div>
<p>&nbsp;</p>
<p>ｂ）WindowStateプロパティを使用する方法</p>
<p><u>→この方法の場合は、あくまで最小化の処理が発生していることになるので、</u></p>
<p><u>最小化のアニメーションが表示されてしまう、再表示する場合に、フォームの状態を</u></p>
<p><u>再設定するため、画面がちらつく場合があるなど微妙に動作が気になる部分も残る。<br /><br /></u>
<div class="code">&nbsp;&nbsp;&nbsp; public partial class Form1 : Form<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //ウィンドウの状態を保存するためのフィールド<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private FormWindowState windowState; 
<p></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public Form1()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; InitializeComponent();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; windowState = WindowState;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void MainForm_ClientSizeChanged(object sender, EventArgs e)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //ウィンドウが最小化された場合はフォームを非表示<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (this.WindowState == FormWindowState.Minimized)&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Hide();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //最小化以外の場合はウィンドウの状態を保存しておく<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; windowState = WindowState;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void notifyIcon1_DoubleClick(object sender, EventArgs e)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //ウィンドウを表示、保存しておいた状態に戻し、アクティブ化する<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Show();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.WindowState = windowState;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Activate();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void Form1_FormClosing(object sender, FormClosingEventArgs e)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //フォームを閉じる時、タスクトレイに表示されている場合は閉じずに非表示<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (notifyIcon1.Visible)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.Cancel = true;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.Hide();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //NotifyIconのコンテキストメニューに追加した「閉じる」メニュークリックイベント&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; private void toolStripMenuItem1_Click(object sender, EventArgs e)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //NotifyIconのコンテキストメニューで閉じるメニューを実行した場合<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //NotifyIconを非表示にしてアプリケーションを終了する<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; notifyIcon1.Visible = false;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Application.Exit();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; }<br /></p></div>]]>
        
    </content>
</entry>

<entry>
    <title>Google App Engine for Java [実践]クラウドシステム構築</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2010/02/google-app-engine-for-java-1.html" />
    <id>tag:pg2se.com,2010:/site//2.63</id>

    <published>2010-02-11T08:39:14Z</published>
    <updated>2010-02-11T09:34:49Z</updated>

    <summary><![CDATA[  &nbsp;Google App Engine for Java「実践」クラ...]]></summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="その他" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="システム開発" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="本" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="googleappengine" label="Google App Engine" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="java" label="Java" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowsazure" label="Windows Azure" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="アプリケーションサーバ　" label="アプリケーションサーバ　" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="クラウド" label="クラウド" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6179860%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13272743%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7741%2f77413985.jpg%3f_ex%3d128x128&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7741%2f77413985.jpg%3f_ex%3d80x80" /></a> </p>
<p>&nbsp;<a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6179860%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13272743%2f" target="_blank">Google App Engine for Java「実践」クラウドシステム構築</a> </p>
<p>&nbsp;</p>
<div class="code">
<p>著者：　株式会社グルージェント</p>
<p>発行日：　２００９年１０月１０日</p>
<p>発行者：　片山　巌</p>
<p>発行所：　株式会社技術評論社</p>
<p>310ページ</p>
<p>2,480円＋税</p></div>
<p>&nbsp;</p>
<p><strong>&nbsp;内容</strong></p>
<p>Googleのスケーラビリティを案件で使い切る。活用の秘訣は、「制約」を正しく</p>
<p>理解すること。割り当てと制限、BigTableによるDB構築、課金のしくみ、</p>
<p>Google Apps、GDataとの連携、Memcache、Mail・・・API活用</p>
<p>&nbsp;</p>
<p><strong>ポイント</strong></p>
<p>Window Azureサービスも開始され、クラウドサービスもビジネスだけではなく、個人的な</p>
<p>利用についても十分現実的なものになっていきている。Windows Azureも魅力的であるが</p>
<p>まだまだ情報も少なく、個人的に試してみるのは、まだ先かなぁと思う。</p>
<p>&nbsp;</p>
<p>そんな中、やはり無料で使用でき、導入が容易、機能も豊富なサービスといえば、</p>
<p>Google　App Engine　for　Javaでしょう。特にJava Webアプリケーションサーバの</p>
<p>実行環境が無料で利用できるというのは、Javaユーザにとっては、特にありがたい</p>
<p>でしょう（レンタルサーバでもJavaの実行環境が提供されるのは稀なので）</p>
<p>一定の使用量を超えると課金になるが、そこそこヘビーなアプリケーションでなければ、</p>
<p>制限を超えることはないと思う。ぜひ一度試してください。</p>
<p>&nbsp;</p>
<p>本書では、こういった、サービスの基本的な内容、課金について、導入手順などはもちろん、</p>
<p>サービスの各機能の使用方法のポイントを、わかりやすく説明されているので、このサービス</p>
<p>の素晴らしさが実感できると思う。</p>
<p>&nbsp;</p>
<p>とりあえず、触ってみたいという方は、Eclipse環境で導入可能なので以下参照してください。</p>
<p><strong><a href="http://pg2se.com/site/2009/07/google-app-engine-for-java.html">http://pg2se.com/site/2009/07/google-app-engine-for-java.html</a></strong></p>
<p><strong></strong>&nbsp;</p>
<p><strong>内容詳細</strong></p>
<div class="code">
<p><strong>第１章　クラウド時代のシステムインテグレーション</strong></p>
<p>1.1　クラウドコンピューティング</p>
<p>1.2　Google App Engine</p>
<p>1.3　Google App Engine　for　Java</p>
<p>&nbsp;</p>
<p><strong>第２章　制約</strong></p>
<p>2.1　Quota(割り当て)とLimit(制限)</p>
<p>2.2　Java APIに対する制約</p>
<p>&nbsp;</p>
<p><strong>第３章　クラウド時代のシステムインテグレーション</strong></p>
<p>3.1　GAEアカウントの作成とデプロイの準備</p>
<p>3.2　開発環境の構築</p>
<p>3.3　アプリケーションの作成とデプロイ</p>
<p>3.4　アプリケーションの設定</p>
<p>3.5　アプリケーションの管理</p>
<p>&nbsp;</p>
<p><strong>第４章　データストア</strong></p>
<p>4.1　BigTable</p>
<p>4.2　JDOによるデータストアの操作</p>
<p>4.3　インデックス</p>
<p>4.4　トランザクション</p>
<p>4.5　JDO以外のデータストアAPI</p>
<p>4.6　データストア設計上の注意点</p>
<p>&nbsp;</p>
<p><strong>第５章　サービスAPI</strong></p>
<p>5.1　Memcache　API</p>
<p>5.2　URLフェッチ　API</p>
<p>5.3　Images API</p>
<p>5.4　Mail API</p>
<p>&nbsp;</p>
<p><strong>第６章　テスト</strong></p>
<p>6.1　ユニットテスト</p>
<p>6.2　ローカル環境でのテスト</p>
<p>6.3　実環境でのテスト</p>
<p>6.4　パフォーマンスの確認</p>
<p>&nbsp;</p>
<p><strong>第7章　GAEが提供するサービスとの連携</strong></p>
<p>7.1　GAEが連携可能なGoogleアプリケーション</p>
<p>7.2　アカウント認証サービスとの設定</p>
<p>7.3　Google Calendarとの連携</p>
<p>7.4　GAE/Jアプリケーションを独自ドメインで運用</p>
<p>7.5　Secure Data Connector</p>
<p>&nbsp;</p>
<p><strong>第8章　追加リソースの購入</strong></p>
<p>8.1　Billingの体系</p>
<p>8.2　Billingの設定</p>
<p>8.3　課金量の予測</p>
<p>&nbsp;</p></div>]]>
        
    </content>
</entry>

<entry>
    <title>Redmine - もっと手軽にプロジェクト管理</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2009/11/redmine--.html" />
    <id>tag:pg2se.com,2009:/site//2.61</id>

    <published>2009-11-07T18:31:54Z</published>
    <updated>2009-11-07T18:34:08Z</updated>

    <summary><![CDATA[  &nbsp;Redmineーもっと手軽にプロジェクト管理！  &nbsp; ...]]></summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="Ruby" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="その他" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="システム管理" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="本" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="bts" label="BTS" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="its" label="ITS" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="redmine" label="Redmine" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="システム運用" label="システム運用" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="システム管理" label="システム管理" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="プロジェクト管理" label="プロジェクト管理" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="本" label="本" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6130048%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13233687%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432730.jpg%3f_ex%3d128x128&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432730.jpg%3f_ex%3d80x80" /></a> </p>
<p>&nbsp;<a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6130048%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13233687%2f" target="_blank">Redmineーもっと手軽にプロジェクト管理！</a> </p>
<p>&nbsp;</p>
<div class="code">
<p>&nbsp;著者：　倉貫 義人　栗栖 義臣　並河 祐貴　前田 直樹</p>
<p>発行日：　２００９年８月１日</p>
<p>発行人：　土田 米一</p>
<p>発行所：　株式会社インプレスジャパン</p>
<p>231ページ</p>
<p>2,100円＋税</p></div>
<p>&nbsp;</p>
<p><strong>内容</strong></p>
<p>プロジェクト管理入門から、Redmine導入・運用・プラグイン開発まで</p>
<p>Excel派もTrac派も大注目！使いやすい、覚えやすい、プロジェクト管理の効率が</p>
<p>ぐ?んとUP↑　１．導入・設定　２．チケット登録　３．すぐ見える化</p>
<p>&nbsp;</p>
<div class="code">
<p>Chapter1　プロジェクト管理をもっと楽に！楽しく！</p>
<ul>
<li>Redmineでプロジェクト管理を変える！</li>
<li>導入と活用のキーポイントを紹介</li></ul>
<p>&nbsp;</p>
<p>Chapter2　Redmineの使いどころ・勘どころ</p>
<ul>
<li>導入の前後でどうかわる？導入効率がよくわかる</li></ul>
<p>&nbsp;</p>
<p>Chapter3　どうやって導入する？[Windows/Linux/Amazon EC2編]</p>
<ul>
<li>Amazon EC2ならインストールなしで、すぐに運用できる！</li>
<li>WindowsやLinuxへのセットアップ方法も紹介</li></ul>
<p>&nbsp;</p>
<p>Chapter4　プロジェクトメンバーはどう使う？</p>
<ul>
<li>メンバーすべてがカンタンに使いこなせる！</li>
<li>ユーザーの登録から、プロジェクト／チケットの作成、SCMとの連携まで</li></ul>
<p>&nbsp;</p>
<p>Chapter5　システム管理者はどう設定する？</p>
<ul>
<li>標準設定はここまで変えられる！</li>
<li>ロール、プロジェクト、チケット、サイト全体などをカスタマイズ</li></ul>
<p>&nbsp;</p>
<p>Chapter6　どう工夫して運用する？</p>
<ul>
<li>万が一に備えて、バックアップは必須！</li>
<li>性能もバージョンアップも考えて、しっかり運用</li></ul>
<p>&nbsp;</p>
<p>Chapter7　プラグイン、動追加する？どう作る？</p>
<ul>
<li>より使いやすく、さらに管理しやすく！</li>
<li>さまざまなプラグインを紹介。開発方法hも解説</li></ul></div>
<p>&nbsp;</p>
<p><strong>ポイント</strong></p>
<p>&nbsp;Redmineは、システム開発・運用時にプロジェクト管理で活用することができる、</p>
<p>ITS（Issue Tracking System）：課題管理システムです。</p>
<p>以前は開発時のバグ管理や、運用時のサポートツールとして、</p>
<p>BTS（Bug Tracking System）が利用されてきたが、現在では様々な機能が</p>
<p>追加され、プロジェクト管理全般で利用することができるプロジェクト管理ツール</p>
<p>にまで発展してきている。</p>
<p>&nbsp;</p>
<p>もちろんRedmineでも、BTSとしてだけでなくプロジェクトの概要・活動・ロードマップ</p>
<p>を管理したり、チケット（タスク管理の最小単位）の作成、ニュース・フォーラムの登録、</p>
<p>文書・ファイルの管理、Wiki、ソース管理連携機能などの多くの機能を備えている。</p>
<p>&nbsp;</p>
<p>Redmineは、ITSの中でも最も後発に出現したシステムの一つであり（２００９年現在）</p>
<p>現在、最も評価も高く、高機能なシステムといえるでしょう。</p>
<p>デファクトなシステムの移り変わりとしては、Bugzilla→Mantis→Trac→Redmineと</p>
<p>なってくるのではないでしょうか？</p>
<p>&nbsp;</p>
<p>さて、本書の内容ですが、上記のようなITS・プロジェクト管理についての概要から</p>
<p>始まり、インストール方法、各機能の操作説明、運用時のポイント、プラグインに</p>
<p>ついてという流れになっています。</p>
<p>&nbsp;</p>
<p>ある程度、BTS・ITSについて知識があり、オープンソフトウェアのインストールの</p>
<p>経験があれば、概要とインストール方法については、十分Webで調べられる範囲</p>
<p>である。また操作方法についても、基本は直感的に分かる範囲の説明がダラダラ</p>
<p>と書かれているという感じです。調査のための時間短縮にはなると思います。</p>
<p>&nbsp;</p>
<p>Webでの情報が少ない部分としては、最後の２つの章、どう工夫して運用する？</p>
<p>と、プラグインの活用についてです。こちらは、実際にシステムを業務で利用する</p>
<p>する際に必要になってくる、データのバックアップの方法や運用する、</p>
<p>アプリケーションサーバの変更方法やクラスタリングについて、Redmineの</p>
<p>バージョンアップについてが詳しく書かれています。</p>
<p>Redmineは、ある程度は設定でカスタマイズは可能ですが、Ruby On Railsで</p>
<p>開発されているので、ソースレベルでのカスタマイズが非常に簡単にすることが</p>
<p>可能です。</p>
<p>私も、実際の業務でRedmineを使用しており、項目の並びや、表示非表示、</p>
<p>運用に合わせた画面のリンクの追加、プロジェクト選択時の初期表示タブの変更</p>
<p>など、ソースレベルでどんどん変更し運用しやすいようにカスタマイズしています。</p>
<p>※Ruby On Rails は未経験ですが、MVCモデルがわかれば容易にソースを</p>
<p>変更してカスタマイズできると思います。</p>
<p>最後に、ソースでのカスタマイズだけでなく、プラグインを利用することでの機能</p>
<p>追加の方法や、プラグイ自体の作成方法についても簡単に説明されています。</p>
<p>&nbsp;</p>
<p>本書以外にも、Redmineの解説書は以下のものが発売されています。</p>
<p>&nbsp;</p>
<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f5918848%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13091059%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7980%2f79802137.jpg%3f_ex%3d80x80&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7980%2f79802137.jpg%3f_ex%3d64x64" /></a>&nbsp;</p>
<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f5918848%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13091059%2f" target="_blank">入門Redmine</a> </p>
<p>&nbsp;</p>
<p>似たような内容だとは思いましたが、発売日が新しいので私は、</p>
<p>&nbsp;<a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6130048%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13233687%2f" target="_blank">Redmineーもっと手軽にプロジェクト管理！</a> の方を選択しました。</p>
<p>&nbsp;</p>
<p>リンク：　<a href="http://redmine.jp/">Redmine.JP - 日本語情報サイト</a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>Windows 7 新時代 - Vista から進化した新しいユーザー・インターフェイス</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2009/10/windows-7---vista.html" />
    <id>tag:pg2se.com,2009:/site//2.59</id>

    <published>2009-10-30T00:39:45Z</published>
    <updated>2009-10-30T00:43:48Z</updated>

    <summary>Windows7がCMで放送され注目を浴びていますが、IT業界で働く者にとっても...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="Windows" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="delphi" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="その他" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="delphi" label="Delphi" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="os" label="OS" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows" label="Windows" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowsvista" label="Windows Vista" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowsxp" label="Windows XP" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="アプリケーション" label="アプリケーション" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="開発" label="開発" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>Windows7がCMで放送され注目を浴びていますが、<br />IT業界で働く者にとっても、新しいOSの技術・機能を<br />理解し学んでいくことは大切です。<br /><br />Vistaから進化した新しいユーザー・インターフェイス<br /><a href="http://www.atmarkit.co.jp/fwin2k/win7/04newui/04newui_01.html">http://www.atmarkit.co.jp/fwin2k/win7/04newui/04newui_01.html</a><br /><br /><br />特に、Windows7では、見た目はVistaと大きな違いがない印象が<br />あるかもしれませんが、細かなところでたくさんの部分がブラッシュ<br />アップされているだけでなく、機能強化、機能追加されています。<br /><br />パフォーマンスもVistaよりも断然良くなって(XPと比べても遜色なくなって)<br />いるので、今後、XPに代わるOSとして普及が予測されるのではないでしょうか？<br /><br />Windows7の特徴を少し抜粋すると、<br /><br />・ジャンプリスト<br />・新しいタスクバー<br />・新しいアプリケーションの切り替え／整列<br />・新しいアプリケーションの最大化／最小化<br />・ウィンドウのスナップ／シェイク<br />・デスクトップの透明化<br />・ガジェットの自由な配置<br />・通知アイコンの強化／通知メッセージの共有化<br />・UACレベルの切り替え<br />・ライブラリ機能<br /><br />となっています。<br /><br /><br />IT業界に視点を置くと、こういったOSの進化に、開発する<br />アプリケーションをどのように進化させていくか、連携させて<br />いくかを考え、付加価値の高い商品を生み出さないと、<br />どんどんと時代の波に取り残されることになります。<br /><br />開発ツールのバージョンアップの中でも、こういったOSの進化に<br />追随する機能がたくさん盛り込まれています。<br /><br />例えば、Delphiでは、Delphi2009で完全にユニコード対応になり、<br />ジェネリクス、無名メソッドなどの新しい言語仕様、Office2008で<br />採用されている新しいインターフェイスに対応した、リボンコントロール<br />が追加されたり、今秋発売された、Delphi2010では、Windows7の<br />シェイク機能を意識した、ジェスチャーコントロール（マウスの動きに<br />合わせてイベントを発生させる）などが導入されています。<br /><br />新しい技術の全てを理解し、開発するアプリケーションに取り入れる<br />必要はありませんが、少なくとも、開発するアプリケーションが陳腐化<br />しないようにバージョンアップ、メンテナンスをおこない、いつでも、<br />新しい技術を取り入れられるようにスケーラビリティを確保することが<br />大切ではないでしょうか？<br /><br />そのためにも普段からの技術力向上のための取り組みは必須です。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>C# - 静的クラス</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2009/10/c--.html" />
    <id>tag:pg2se.com,2009:/site//2.58</id>

    <published>2009-10-26T14:37:19Z</published>
    <updated>2009-10-26T17:09:34Z</updated>

    <summary>オブジェクト指向と言いつつ、クラスをインスタンス化させたくない場面は よくあるこ...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term=".net" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="プログラム" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="c" label="C#" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="visualstudio" label="VisualStudio" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="インスタンス" label="インスタンス" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="プログラム" label="プログラム" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="静的クラス" label="静的クラス" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="静的フィールド" label="静的フィールド" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="静的メソッド" label="静的メソッド" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>オブジェクト指向と言いつつ、クラスをインスタンス化させたくない場面は</p>
<p>よくあることです。</p>
<p>&nbsp;</p>
<p>私の経験上では主に２つ。</p>
<p>&nbsp;</p>
<ol>
<li>ユーティリティクラス<br />他の色々なクラスから共通で利用されるメソッドを実装する。<br />共通関数群のような使い方をするが、そのたびにクラスを<br />インスタンス化して利用するのはコードもわかりにくくなるし、<br />そもそもオブジェクトとして利用する意味がない。<br /><br />この場合、Java等でも同様だと思うが、staticなメソッドを定義し<br />インスタンス化せずに手軽に共通メソッドを利用できるようにする。<br />その際、インスタンス化自体が無意味なので、コンストラクタを<br />private　で宣言するのが一般的です。<br /><br /><br />
<div class="code">public class StringUtil<br />{<br />&nbsp;&nbsp;&nbsp; private StringUtil<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //インスタンス化不可<br />&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; public static Find(string source, string search)<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return ...<br />&nbsp;&nbsp;&nbsp; }<br />} </div><br /><br /></li>
<li>シングルトンクラス（シングルトンパターン）<br />オブジェクトをシングルトンにしたい場合に使用する。<br />シングルトンとはアプリケーション内であるクラスのインスタンスは<br />唯一であることを保証するクラスのこと(例：プリンタスプーラなど)<br /><br />クラスが内部的にそのクラスのオブジェクトをひとつだけインスタンス化し、<br />インスタンスが必要な場合にかならず、唯一のオブジェクトへの参照を<br />返すという仕組みである。<br /><br />
<div class="code">public class Singleton<br />{<br />&nbsp;&nbsp;&nbsp; private static obj = new Singleton();<br /><br />&nbsp;&nbsp;&nbsp; private Singleton<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //インスタンスの取得は、GetInstanceメソッドで<br />&nbsp;&nbsp;&nbsp; }<br /><br />　　public static Singleton GetInstance<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return obj;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}</div><br /><br /></li>
</ol>
<p>C#2.0からは、上記のように、無理やりコンストラクタを、privateにして</p>
<p>インスタンス化できないようにするという、よく考えると無理やりな手法</p>
<p>ではなく以下のようにスマートに記述できるようになった。<br /><br />class定義の前に、staticを付加すると、そのクラスは自動的に静的な</p>
<p>クラスとなり、以下のような特徴を持つようになる。</p>
<p>&nbsp;</p>
<ul>
<li>静的メンバのみを含みます。</li>
<li>インスタンス化できません。</li>
<li>シールされます。</li>
<li>インスタンスコンストラクタを含むことができません<br /></li></ul>
<p>コンストラクタを記述しても言語レベルでエラーが検出され、</p>
<p>コンパイルすることができなくなります。<br /></p>
<p>このクラスを利用し、静的フィールド、静的メソッドだけを使用した</p>
<p>ユーティリティクラスやシングルトンの仕組みも簡単に実装できます。 
<p></p>]]>
        
    </content>
</entry>

<entry>
    <title>独習UML　第４版</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2009/10/uml.html" />
    <id>tag:pg2se.com,2009:/site//2.57</id>

    <published>2009-10-05T14:29:44Z</published>
    <updated>2009-10-05T15:28:27Z</updated>

    <summary><![CDATA[  &nbsp;独習UML第4版  &nbsp; 著者：テクノロジックアート 発...]]></summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="UML" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="システム設計" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="システム開発" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="本" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="uml" label="UML" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="オブジェクト指向" label="オブジェクト指向" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="システム設計" label="システム設計" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="システム分析" label="システム分析" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="パターンウィーバー" label="パターンウィーバー" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6035806%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13171526%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7981%2f79811854.jpg%3f_ex%3d128x128&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7981%2f79811854.jpg%3f_ex%3d80x80" /></a> </p>
<p>&nbsp;<a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6035806%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13171526%2f" target="_blank">独習UML第4版</a> </p>
<p>&nbsp;</p>
<div class="code">
<p>著者：テクノロジックアート</p>
<p>発行日：２００９年４月９日</p>
<p>監修：長瀬 嘉秀・橋本 大輔</p>
<p>発行人：佐々木 幹夫</p>
<p>発行所：株式会社 翔泳社</p>
<p>371ページ</p>
<p>3,600円＋税</p></div>
<p>&nbsp;</p>
<p><strong>ポイント</strong></p>
<p>２００９年１０月現在で、UML学習について比較的新しい書籍です。</p>
<p>UML２．ｘについての記述も多く取り入れられています。</p>
<p>UMLが取り上げられてからかなりの時間が経っていますが、UMLと</p>
<p>いう言葉や、UMLについてある程度の知識を持った技術者は多いと</p>
<p>思いますが実際の開発の現場で利用している、活用できている方は</p>
<p>少ないのではないでしょうか？</p>
<p>&nbsp;</p>
<p>私の考えでは、実際にUMLを使用しなかったとしても、UMLの内容を</p>
<p>理解し、習得することで、システム設計の手法や、オブジェクト指向に</p>
<p>対する理解など、システム開発に関する多くのことが学べスキルアップ</p>
<p>できることは間違いないです。もちろん実際にUMLを使用した開発にも</p>
<p>役立ちますし、自らUMLでの設計を取り入れた開発にチャレンジする</p>
<p>のも良いと思います。</p>
<p>&nbsp;</p>
<p>全てではなくとも、ユースケース図、クラス図、シーケンス図など、</p>
<p>部分的にドキュメントとして作成し活用できるのもUMLの特徴です。</p>
<p>&nbsp;</p>
<p>この書籍では、第１部で、基礎知識（各図の書き方、活用方法、</p>
<p>UML２．ｘでの変更点）が簡潔にまとめられており、初心者にも</p>
<p>十分理解できる内容になっています。</p>
<p>また、UMLを業務で活用したいと考えている方には、第２部の</p>
<p>"UMLの適用"がとても役立ちます。</p>
<p>実際に仮想のシステムの開発というストーリーで、分析から、</p>
<p>設計、展開まで現場目線で詳細に解説されていますので、</p>
<p>どのようにUMLを実際の現場で利用するかよく分かっていない</p>
<p>場合の参考になるでしょう。</p>
<p>&nbsp;</p>
<p><strong>内容</strong></p>
<div class="code">
<p>UML２．ｘ準拠「はじめての学習」にも、「体系立った習得」にも最適！！</p>
<p>信頼の定番メソッド＋詳説で基礎から実践まで徹底理解！！</p>
<p>３ステップだからよく分かる（１．解説　２．例文　３．練習問題）</p>
<p>&nbsp;</p>
<p>UML（Unified Modeling Languageとは、システムモデルの表記法です。</p>
<p>本書は、UML２．ｘの基礎概念と実践的な運用方法を無理なく身に付つける</p>
<p>ことができる構成になっています。</p>
<p>&nbsp;</p>
<p><strong>ステップ１</strong>　丁寧な解説で、１人でもスイスイ学習</p>
<p>UMLの基礎からオブジェクト指向の考え方、各種図形の描画方法、実務での</p>
<p>活用方法に至るまで、初学者の観点からていねいに解説しているため、途中</p>
<p>でつまづくことなく学習することができます。</p>
<p>&nbsp;</p>
<p><strong>ステップ２</strong>　章末の「理解度チェック」で学習内容を確認</p>
<p>各章の最後に「理解度チェック」を収録。「どこで」「なにが」理解できなかった</p>
<p>かを明らかにし、弱点を克服することができます。</p>
<p>&nbsp;</p>
<p><strong>ステップ３</strong>　付属CD-ROMのツールで実力をつける</p>
<p>コンポジット構造図やタイミング図、相互作用概要図といった、UML２．０</p>
<p>以降に追加されたダイアグラムなどに対応したパターンウィーバー２．３</p>
<p>CE版で、学習の成果を活かして図形を描画することができます。</p></div>
<p>&nbsp;</p>
<p><strong>目次</strong></p>
<div class="code">
<p>第１部　UMLの基礎知識</p>
<ul>
<li>第１章　UMLとは</li>
<li>第２章　オブジェクト指向とは</li>
<li>第３章　ユースケース図</li>
<li>第４章　オブジェクト図</li>
<li>第５章　クラス図</li>
<li>第６章　コンポジット構成図</li>
<li>第７章　コンポーネント図</li>
<li>第８章　シーケンス図</li>
<li>第９章　コミュニケーション図</li>
<li>第１０章　タイミング図</li>
<li>第１１章　相互作用概要図</li>
<li>第１２章　ステートマシン図</li>
<li>第１３章　アクティビティ図</li>
<li>第１４章　配置図</li>
<li>第１５章　パッケージ図</li>
<li>第１６章　UMLの基礎概念</li></ul>
<p>第２部　UMLの適用</p>
<ul>
<li>第１７章　現状業務（AsIs）の分析</li>
<li>第１８章　現状業務の改善（ToBe）</li>
<li>第１９章　要求分析</li>
<li>第２０章　システム分析</li>
<li>第２１章　システム設計（システム全体の俯瞰とアーキテクチャの決定）</li>
<li>第２２章　システム設計（ユースケースの実現）</li>
<li>第２３章　システム設計（システム全体の構造決定）</li>
<li>第２４章　プラットフォームへの展開</li></ul>
<p>付録</p>
<ul>
<li>理解度チェック解答集</li>
<li>パターンウィーバーについて</li></ul></div>
<p>&nbsp;</p>
<p>&nbsp;※UMLの概要だけを理解したいのであれば、類似のこちらの</p>
<p>書籍も良いのではないでしょうか？価格も安めです。</p>
<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4379282%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12047670%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8163%2f81634207.jpg%3f_ex%3d80x80&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8163%2f81634207.jpg%3f_ex%3d64x64" /></a> </p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>Windows 7 完全移行マニュアル</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2009/09/windows-7.html" />
    <id>tag:pg2se.com,2009:/site//2.55</id>

    <published>2009-09-26T13:42:07Z</published>
    <updated>2009-09-26T14:01:33Z</updated>

    <summary>Windows７（ウィンドウズ・セブン）の一般発売日が日本語を含み、 ２００９年...</summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term="Windows" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="その他" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="ニュース" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="リリース" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="製品" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowsvista" label="Windows Vista" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windowsxp" label="Windows XP" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="データ" label="データ" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="移行" label="移行" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="環境" label="環境" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p>Windows７（ウィンドウズ・セブン）の一般発売日が日本語を含み、</p>
<p>２００９年１０月２２日、１４ヶ国語対応で同時発売となっている。</p>
<p>&nbsp;</p>
<p>初期の開発コードネームは「Blackcomb」と呼ばれており、</p>
<p>のちに「Vienna」]、さらに「Windows 7」に改められている。</p>
<p>社内開発コード名がそのまま製品版の名称として採用された。</p>
<p>&nbsp;</p>
<p>７（セブン）の由来は想像が容易かもしれないが、</p>
<p>Windows 1.0 / Windows 2.0 / Windows 3.x / 4.x (95, 98, 98 SE, Me)</p>
<p>5.x (Windows 2000, Windows XP) / 6.0 ( Windows Vista ) に続く</p>
<p>７番目のクライアント向けのメジャーリリースだからである。</p>
<p>&nbsp;</p>
<p>しかし、Windows 7はWindows Vistaを基に改良されていることから、</p>
<p>バージョン番号としては、正式には6.1となっている。</p>
<p>Vistaと同様、Windows 7も個人向けおよび法人向けの両バージョン、そして</p>
<p>リテールパッケージ版には32ビットと64ビットの両バージョン同梱で出荷される。</p>
<p>&nbsp;</p>
<p>今回は、Windows７購入後の環境の移行作業ついての詳細な記事が掲載されて</p>
<p>いたので紹介します。</p>
<p>&nbsp;</p>
<p><a href="http://www.atmarkit.co.jp/fwin2k/win7/02win7mig/02win7mig_01.html"><strong>XP／Vista→Windows 7 完全移行マニュアル</strong></a></p>
<p><strong></strong>&nbsp;</p>
<p>&nbsp;残念ながら、Windows XPからWindows 7への上書きアップグレードは</p>
<p>サポートされていないようなので、手動による移行作業が必要になる。</p>
<p>&nbsp;</p>
<p>また、Vistaからユーザ別のドキュメント等のファイルの保存場所が変更に</p>
<p>なっているため、いざ環境の移行作業をしようとした際に戸惑うのではない</p>
<p>でしょうか？</p>
<p>&nbsp;</p>
<p>事前に上記の記事を読んで、概略でも理解しておきたいです。</p>
<p>&nbsp;</p>]]>
        
    </content>
</entry>

<entry>
    <title>絶対現場主義　Visual C#　実践講座</title>
    <link rel="alternate" type="text/html" href="http://pg2se.com/site/2009/09/visual-c.html" />
    <id>tag:pg2se.com,2009:/site//2.54</id>

    <published>2009-09-23T14:24:16Z</published>
    <updated>2009-09-23T15:23:53Z</updated>

    <summary><![CDATA[  絶対現場主義Visual C＃実践講座  &nbsp; 著者：丸岡 孝司&n...]]></summary>
    <author>
        <name>kato(s)</name>
        
    </author>
    
        <category term=".net" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="システム開発" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="プログラム" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="本" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="net" label=".NET" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="c" label="C#" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="visualstudio" label="Visual Studio" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="フレームワーク" label="フレームワーク" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="開発" label="開発" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://pg2se.com/site/">
        <![CDATA[<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4502683%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12112976%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8997%2f89977197.jpg%3f_ex%3d128x128&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8997%2f89977197.jpg%3f_ex%3d80x80" /></a> </p>
<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f4502683%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f12112976%2f" target="_blank">絶対現場主義Visual C＃実践講座</a> </p>
<p>&nbsp;</p>
<div class="code">
<p>著者：丸岡 孝司&nbsp;</p>
<p>発行日：２００７年７月２５日</p>
<p>発行者：黒田 康夫</p>
<p>発行所：株式会社ラトルズ</p>
<p>411ページ</p>
<p>2,600円＋税</p></div>
<p>&nbsp;</p>
<p><strong>内容</strong></p>
<div class="code">
<p>開発の現場から生まれた実践テクニック＆TIPS集。</p>
<p>"Visual　C#　プログラミング"という大海原をひとりゆくプログラマのために。</p>
<ul>
<li>Chapter1　.NET FrameworkとC#プログラミング<br />Visual Studioの使い方、C#コーディング方法、C#のデータ型、制御構造<br />などの言語仕様に関するテクニックやTIPSを収録。<br /><br /></li>
<li>Chapter2　Windowsアプリケーション<br />Windowsフォームやコントロールを使用した、Windowsアプリケーション<br />作成のテクニックやTIPSを収録。<br /><br /></li>
<li>Chapter3　データベース処理<br />.NET　Frameworkにおけるデータベース処理に関するテクニックやTIPS<br />を収録。<br /><br /></li>
<li>Chapter4　Webとネットワーク<br />.NET　Frameworkにおけるネットワーク処理について簡単に紹介。<br /></li></ul></div>
<p><strong></strong>&nbsp;</p>
<p><strong>ポイント</strong></p>
<p>職場で一緒に仕事している人からのお勧めの一冊。借りました。</p>
<p>現在、C#のプロジェクトを一から作り始めて進行中なので、フレームワーク</p>
<p>作りの参考にしました。</p>
<p>&nbsp;</p>
<p>タイトル　"絶対現場主義"　にもあるように、実際に現場で開発をする人たち</p>
<p>にとって役立つ内容となっています。</p>
<p>&nbsp;</p>
<p>特に、C#プロジェクトはまだあまり経験がないけど、こんな感じでいいのかなぁ</p>
<p>とか、Javaのプロジェクトは経験したけど、C#ではどうするべきか・・・(悩)とか、</p>
<p>昔ながらのVBスタイルのプログラムは書けるけど、C#ってオブジェクト指向が</p>
<p>ベースだし、クラスとか、継承とか、カプセル化もいまいち良くわかんないよなぁ</p>
<p>とか・・そんな悩める人たちの手助けになると思います。</p>
<p>&nbsp;</p>
<p>書き方も、従来の単純な解説書やリファレンス、TIPS集などとは違い、いちいち</p>
<p>現場目線での解説（こういう背景だからこんな疑問が発生し、こう解決すれば</p>
<p>良いのでは？スタイルでの記述）がされており非常に読みやすくなっています。</p>
<p>例示されているシーンも、一度は誰もが悩んできたであろう内容で納得できます。</p>
<p>（その分、普通のTIPS集では１ページで書かれている内容が３?５ページかけて</p>
<p>解説されていたりしますが・・）</p>
<p>&nbsp;</p>
<p>特に、Windowｓアプリケーションでは、開発のフレームワークをどうするべきかや、</p>
<p>コントロールの拡張方法、共通化などについても詳しく書かれていますので、</p>
<p>実際のプロジェクトの参考にできると思います。</p>
<p>&nbsp;</p>
<p>最後に、Webアプリケーションの事については紹介として少しだけ解説されて</p>
<p>いますが、つい先日、この書籍の、"Webアプリケーション編"が出版されたよう</p>
<p>ですので、紹介だけしておきます。※私は.NETだと、APS.NET MVCの方に</p>
<p>興味があるため、こちらの書籍（MVCについては触れられていなさそう？）</p>
<p>なので購入するかどうかは今のところ未定です。</p>
<p>&nbsp;</p>
<p><a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6132404%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13236063%2f" target="_blank"><img border="0" src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8997%2f89977244.jpg%3f_ex%3d80x80&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8997%2f89977244.jpg%3f_ex%3d64x64" /></a></p>
<p>&nbsp;<a href="http://hb.afl.rakuten.co.jp/hgc/09c4a208.b62e2a35.09c4a209.8de5493b/?pc=http%3a%2f%2fitem.rakuten.co.jp%2fbook%2f6132404%2f&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13236063%2f" target="_blank">絶対現場主義Visual C＃実践講座（Webアプリケーション編）</a> </p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;</p>]]>
        
    </content>
</entry>

</feed>
