<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>kimada&apos;s weblog</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/" />
    <link rel="self" type="application/atom+xml" href="http://www.fourmeisters.com/blog/kimada/atom.xml" />
    <id>tag:www.fourmeisters.com,2009-05-28:/blog/kimada//5</id>
    <updated>2009-06-23T03:18:59Z</updated>
    <subtitle>抜本塞源的に考えよう。</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Commercial 4.25</generator>

<entry>
    <title>Oracle JDBCのスクロール可能なResultSetに注意</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2009/06/oracle-jdbcresultset.html" />
    <id>tag:www.fourmeisters.com,2009:/blog/kimada//5.328</id>

    <published>2009-06-23T02:33:32Z</published>
    <updated>2009-06-23T03:18:59Z</updated>

    <summary>JDBC2.0から、スクロール可能なResultSetがサポートされています。そ...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="JDBC" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Java EE" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Oracle" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="カテゴリを追加" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="jdbc" label="JDBC" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="oracle" label="Oracle" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="resultset" label="ResultSet" 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://www.fourmeisters.com/blog/kimada/">
        <![CDATA[JDBC2.0から、<a href="http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/guide/jdbc/getstart/resultset.html#1012149">スクロール可能なResultSet</a>がサポートされています。それによって、<a href="http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/sql/ResultSet.html">ResultSet</a>から、データをフェッチするときに、開始位置を指定したり、カーソルの移動を逆方向にすることができます。
<p>
このように便利な機能なのですが、Oracleで使用するときには、注意する必要があります。たまたまそのことを思い出したので、特に目新しいネタではないかもしれませんが、自分のメモを兼ねて、書いておこうと思います。
<p>
<a href="http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/sql/ResultSet.html">ResultSet</a> からデータをフェッチする場合、<a href="http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/sql/ResultSet.html#setFetchSize(int)">setFetchSize(int)</a>メソッドの規則に定められた行数のデータが、DBサーバから取得されるという前提で、プログラミングします。ところが、Oracleで「スクロール可能なResultSet」を使った場合、その<a href="http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/sql/ResultSet.html">ResultSet</a>で対象となるデータが、一度に全件クライアント側にキャッシュされてしまいます。したがって、バッチ処理のように、大量のデータが対象になっていると、<a href="http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/lang/OutOfMemoryError.html">OutOfMemoryError</a>が発生する可能性があるので注意が必要です。
<p>
以下に、そのことについて書かれた、Oracle社のドキュメントへのリンクを示しますので、詳細はそちらをご参照ください。<br/>
<a href="http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/java.102/B19275-03/resltset.htm#sthref1453">Oracle Database JDBC開発者ガイドおよびリファレンス 10g リリース2（10.2）</a><br/>
<a href="http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dvd/java.111/E05720-02/resltset.htm#CIHCHBJB">Oracle Database JDBC開発者ガイドおよびリファレンス 11g リリース1（11.1）</a>]]>
        
    </content>
</entry>

<entry>
    <title>kimada&apos;s tributary weblogを始めました。</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2009/05/kimadas-tributary-weblog.html" />
    <id>tag:www.fourmeisters.com,2009:/blog/kimada//5.326</id>

    <published>2009-05-29T02:51:33Z</published>
    <updated>2009-05-29T03:29:18Z</updated>

    <summary>ちょっと思いついた比較的軽めの話題について、気軽に書き込んで行くためのミニブログ...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="announcement" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="tributary" label="tributary" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="tumblr" label="tumblr" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[<p>ちょっと思いついた比較的軽めの話題について、気軽に書き込んで行くためのミニブログを、<a href="http://www.tumblr.com" title="tumblr">tumblr</a> で始めてみました。</p>

<p><a href="http://tributary-kimada.tumblr.com/">kimada's tributary weblog</a></p>

<p>タイトルのtributaryという単語は、このブログを本流と例えた場合の、「支流」というのイメージしたものです。</p>

<p><a href="http://www.tumblr.com" title="tumblr">tumblr</a>は、アカウントを作って、その瞬間に始められるので、まだ、ブログを持っていない方が、ちょっと試してみようという感じで、やってみるのもいいかもしれませんね。</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Adobe AIRのアーキテクチャ選択について</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2009/05/adobe-air.html" />
    <id>tag:www.fourmeisters.com,2009:/blog/kimada//5.321</id>

    <published>2009-05-28T05:00:39Z</published>
    <updated>2009-05-28T06:07:32Z</updated>

    <summary>現在、多くのWebアプリケーションは、Ajaxと呼んでいる、一連の高度なJava...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Adobe AIR" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Ajax" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="JavaScript" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="RIA" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="開発プロセス" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="adobeair" label="Adobe AIR" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="adobeflex" label="Adobe Flex" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ajax" label="Ajax" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ria" label="RIA" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[現在、多くのWebアプリケーションは、Ajaxと呼んでいる、一連の高度なJavaScriptの応用技術によって、リッチなユーザインタフェースを持っています。クライアント側でのプログラミングを行わず、プレーンなHTMLだけで構成されているものはほとんどなくなって来ています。そんな中、ここ最近は、さらに進化した、クライアントサイドのデスクトップアプリケーションとして動作するRIA技術が、注目されています。
<p>
RIA技術の代表的なものとしては、以下の3つが挙げられます。
<ul>
	<li>Adobe AIR</li>
	<li>JavaFX</li>
	<li>Microsoft Silverlight</li>
</ul>
この中で、Adobe AIRについて、ちょっと調べてみました。とりあえず、AIRを選定した理由にはあまり深い意味はなく、これまでのWebアプリケーション開発技術をそのまま引き継いだものなので、JavaEE系を始めとする、多くのWebアプリケーション開発者が、比較的入りやすいのではないかといったところです。
<p>
Adobe AIRのアーキテクチャを分類すると、以下の3パターンに分けることができます。
<ul>
	<li>Ajaxベース</li>
	<li>Flexベース</li>
	<li>Flashベース</li>
</ul>
この中で採用するアーキテクチャを選択する場合、企業向けのアプリケーションを開発しているJavaEE系の開発者の場合は、まず、直感的にAjaxベースにすることが多いでしょう。「Ajaxベース」の技術要素を整理すると、以下のような感じです。

<ul>
	<li>開発言語<br/>
             HTML + CSS + JavaScript</li>
        <li>実行環境<br/>
              Adobe AIRランタイムに組み込まれている、WebKit HTMLエンジン上で動作する。</li>
	<li>開発環境<br/>
        <ul>
	    <li>無料で使えるもの
            <ul>
	    <li>Adobe AIR SDK + テキストエディタ</li>
            <li>Aptana Studio(Eclipse + Aptana用Adobe AIRエクステンション)</li>
            </ul></li>
	    <li>有料のもの
            <ul>
	    <li>Adobe Dreamweaver CS3＋Adobe AIR Extension for Dreamweaver CS3</li>
            </ul></li>
        </ul>
	</li>
</ul>	
	
ここから見ると、従来のブラウザ上で実行されていた、Ajaxアプリケーション開発のスキルが生かせるという印象を持つことができます。あと、無料で使える開発環境でも、今までの開発作業と、あまり変わらずに行けそうな感覚もありますね。
<p>
では、「Flexベース」の方はどうでしょうか。こちらも、同じ観点で技術要素を整理してみます。
<ul>
	<li>開発言語<br/>
             MXML + ActionScript</li>
        <li>実行環境<br/>
              Adobe AIRランタイムに組み込まれている、Adobe Flash Player 9の仮想マシンで動作する。</li>
	<li>開発環境<br/>
        <ul>
	    <li>無料で使えるもの
            <ul>
	    <li>Flex 3 SDK + テキストエディタ</li>
            </ul></li>
	    <li>有料のもの
            <ul>
	    <li>Adobe Flex Builder 3 Professional(Adobe Flex Builder 3.0.2 Professional Eclipse Plug-in)</li>
            </ul></li>
        </ul>
	</li>
</ul>	

FlexはふつうのGUIアプリケーションを、Flashコンテンツとして開発するためのフレームワークです。コンパイルすると、MXMLもActionScriptに変換され、最終的にはSWFファイルとなります。<br/>
すでにFlexでアプリケーション開発を経験しているのであれば、迷わずこちらを選択するでしょう。<br/>
未経験の場合は、MXML、ActionScriptという「独自言語」を習得しなければならないことが気になるところかと思います。それに関しては、HTML、XML、JavaScriptがわかっていれば、容易に習得できるので、あまり重要な条件ではないでしょう。<br/>
そういうことだけでなく、例えば、以下のようなことも考えた上で、総合的に判断することが必要です。
<ul>
	<li>現在、Ajaxベースで、効率の良い開発ができているか?<br/>
WebアプリケーションのAjaxに比べて、明らかにJavaScriptのコーディング量は多くなるので、そのあたりのことも考慮しておくべき。稼働環境が、AIRランタイムのWebKitエンジンに限定されるので、
<ul>
	<li>クロスブラウザの考慮が必要ない</li>
	<li>AIRやFlushで用意されているAPIが使える。</li>
</ul>
といった部分によって、開発しやすくなる部分はあると思われる。</li>
         <li>要件として、Flashの機能が必要かどうか?<br/>
クールなGUIが要求され、それがFlashだと作りやすいのであれば、無理にAjaxでがんばるのは考えもの。</li>
         <li>新しい技術にチャレンジする状況かどうか?<br/>
これには、プロジェクトの状況や、会社の方針、開発者の想いなど、いろいろな要素があるが。。。</li>
         <li>有償の開発環境を導入できるか?<br/>
Flexの場合、SDK + テキストエディタベースで開発するには、熟練が必要と考えられる。Flex Builderを使った方が、効率よく開発できる。</li>
</ul>
<p>
すでに、Ajaxベースの開発で、高い技術を持ち、Flushテクノロジーを使わずに機能が実現できるのあれば、「Ajaxベース」を採用するのが自然な流れです。どうしてもFlushは採用できないという事情がある(AIRを前提で、そんなものはないと思いますが。。。)以外の場合には、楽に簡単にできそうな面があるのなら、Ajaxで無理をすることばかりを考えず、Flexの採用を検討してみてもいいかもしれません。
<p>
新しい技術にチャレンジする時は、できること、やりたいこと、必要なこと、コストなど、いろいろな角度から見て判断することが重要ですね。]]>
        
    </content>
</entry>

<entry>
    <title>ウォーターフォール型プロセスについて考えてみた</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2009/05/post-5.html" />
    <id>tag:www.fourmeisters.com,2009:/blog/kimada//5.317</id>

    <published>2009-05-12T05:50:14Z</published>
    <updated>2009-05-12T06:06:53Z</updated>

    <summary>システム開発プロセスについての話の中で、ウォーターフォール型 vs. アジャイル...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Java EE" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="開発プロセス" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="javaee" label="JavaEE" 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://www.fourmeisters.com/blog/kimada/">
        <![CDATA[<p>システム開発プロセスについての話の中で、ウォーターフォール型 vs. アジャイル型という観点で議論されることは、よくあることです。その場合、ウォーターフォール型を、単なる思想とか文化として捉えられていることが多いように感じます。</p>

<p>ウォーターフォール型プロセスの誕生の背景的なことが、こちらに説明されています。<br />
<a href="http://www.atmarkit.co.jp/aig/04biz/waterfall.html">ウォーターフォール・モデル</a></p>

<p>当時は、そのときの環境に適したプロセスとして、採用され、広まっていったものと考えられます。<br />
個人的には、当時の開発環境が、1つの大きなポイントだったのではないかと推測します。<br />
1980年代くらいまでは、メインフレームが開発環境の中心でした。メインフレームで運用されるアプリケーションだけでなく、ワークステーション上で実行されるプログラムも、メインフレームでクロスコンパイルすることもありました。なので、多くの開発者が、1つのホストコンピュータを共同利用して作業を進めていました。<br />
ところが、端末はすべての開発者に1つずつ行き渡っているわけではなく、限られた数しか用意できませんでした。そのような環境下では、よほどの理由がない限り、一人の開発者が占有するなどということは許されませんでした。端末は、「作業場所」であり、ものを考える場所ではなかったのです。<br />
では、ものをじっくり考える場所はどこかというと、「机上」です。「机上」の作業だけで、ある程度精度の高い設計ができていることが前提で、開発プロセスが策定されていました。ソースコードまでも、紙に書く場合がありました。<br />
このような環境の中では、必然的にウォーターフォール型になるように思います。すでに、基本アーキテクチャは決まっており、開発という側面では、技術は安定していました。それにより、技術的リスクがあまりなかったということも背景としてあったと思います。</p>

<p>そのような状況からの変化が始まったのは、90年代前半くらいからかなと記憶しています。「ダウンサイジング」「クライアント/サーバ」「EUC(End User Computing)」などのキーワードとともに、それまでメインフレームでしか動かせなかったアプリケーションが、ワークステーションやPCという、ユーザに近いところに降りてきました。当然、基本アーキテクチャは大きく変わりました。それまで、書類が並んでいた「机上」に個人専用のPCが置かれ、インターネットを通じて、さまざまな情報にアクセスできるようになりました。言うまでもないですが、前段で述べたときとは、かなり環境は違います。<br />
私の観点では、主要な変化として捉えるべき点は、以下のようなものだったかなと思います。<br />
<ul><br />
	<li>各自が専用のPCを持つことによって、考えながら開発することができるようになった。</li><br />
	<li>技術トレンドの変化が激しくなり、「初物」に出会う確率が高くなった。</li><br />
	<li>マルチベンダー化により、1つのことを実現するための選択肢が増えた。</li><br />
</ul><br />
当たり前の話ですが、このあたりの開発では、「R&D」や「プロトタイピング」といった「トライ & エラー」を経由せずに、「机上」の理論だけで作業を進めて行くことは、不可能であり、やりにくいということは明白ですね。こういった環境の中では、仮にウィータフォール的にスケジュールが策定されていたとしても、実態はアジャイルっぽくなるのが必然ですね。</p>

<p>前置きがちょっと長くなってしまいましたが、ここで言いたかったのは、ウォーターフォール型 vs. アジャイル型というのを、単純に思想とか文化として考えたり、どちらか一方に偏るのではなく、必要に応じてやりやすい最適な方法を選ぶことが重要だと言うことです。<br />
現在、企業システムの世界は、JavaEEによって基本アーキテクチャがかなり安定して来ており、90年代や00年代前半に比較すると、「初物」に出会う機会もかなり少なくなってきました。それでも、メインフレームの時代にくらべると、「トライ & エラー」が必要な場面は多いと思います。<br />
ウォーターフォール型だけではやりにくい部分があるのは明白です。現実的に、最もやりやすいと思われる方法を検討し、柔軟に計画を策定することを考えて行くことが適切なのでしょう。</p>]]>
        
    </content>
</entry>

<entry>
    <title>アップルの革新的なApp Storeからのダウンロード、わずか9ヶ月で10億本を突破</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2009/05/app-store910.html" />
    <id>tag:www.fourmeisters.com,2009:/blog/kimada//5.315</id>

    <published>2009-05-11T05:00:49Z</published>
    <updated>2009-05-11T05:17:05Z</updated>

    <summary>ちょっと前のことになりますが、ゴールデンウィーク直前の4/24に、アップルから、...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="MacOSX" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="NEWS" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="iPhone" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="appstore" label="AppStore" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="iphone" label="iPhone" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[ちょっと前のことになりますが、ゴールデンウィーク直前の4/24に、アップルから、このような発表がありました。
<p>
<a href="http://www.apple.com/jp/news/2009/apr/24appstore.html">アップルの革新的なApp Storeからのダウンロード、わずか9ヶ月で10億本を突破</a>
<p>
この記事の中ではもう一つ、以下のような数字が出ています。
<p>
<blockquote>
現在、画期的なApp Storeでは35,000本以上のアプリケーションが世界77カ国のお客様に提供されており、デベロッパには、世界中の何千万ものiPhone™およびiPod touchユーザにリーチする機会を提供しています。
</blockquote>
<p>
1ユーザが平均で50本ダウンロードしていると仮定した場合でも、単純計算で2000万ユーザという数字になるので、「何千万ものユーザ」というのは、決して大げさではないでしょう。<br>
ニンテンドーDSは、初代が発売開始から1年で、1637万台ということなので、それと比べても遜色ない数字ですね。
<p>
<a href="http://www.nintendo.co.jp/corporate/release/2009/090311.html">ニンテンドーDSシリーズ１億台販売</a>
<p>
ただ、これはあくまでも、世界レベルでの比較です。日本国内に限定した場合は、また違うでしょう。<br>
あと、AppStoreには「無料のアプリケーション」も多くリリースされており、それらがこの10億本という数字を底上げしてる可能性もあります。<br>
このように単純比較はできないですが、勢いがあることは事実だと思います。
<p>
私も、昨年の秋くらいから、iPhoneアプリケーションの開発に参加しています。そんなわけで、インターネット上で、いろいろなIPhoneアプリケーションデベロッパーの方々のブログなども、よく読ませていただいてます。そこから感じるのは、こんなにさまざまなタイプのデベロッパーが1つのプラットフォーム上に集まっているというのは、今までに例がないのではということです。<br>
たぶん、自らやってみたいと思う人々が、積極的かつ、自然に集まった結果なんでしょうね。<br>
(「業務命令」で、仕方なくiPhoneアプリケーション開発をやっている人は少ないんじゃないかと感じてます)
<p>
そして、半年ほど前になりますが、AppStoreから、無料のアプリケーションを1本リリースしました。<br>
自分のアプリが、海外の見知らぬ人からダウンロードされたり、どこかのブログや雑誌で取り上げてもらったりといった、今までになかった新しい経験ができました。でも、現時点では、今後自分たちのビジネスに、どのように結びつけることができるかについては、まだ未知数です。<br>
ただし、この勢いは見逃してはいけないと思うので、これからもウォッチして行きたいと思います。
<p>
当然ながら、自分もiPhoneユーザの一人なので。。。]]>
        
    </content>
</entry>

<entry>
    <title>プログラミングって、単純作業だと思いますか？</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2009/04/post-4.html" />
    <id>tag:www.fourmeisters.com,2009:/blog/kimada//5.307</id>

    <published>2009-04-06T09:03:11Z</published>
    <updated>2009-04-06T09:26:23Z</updated>

    <summary>大規模なSIプロジェクトでは、人海戦術に頼らざるを得ない場面が少なからずあるので...</summary>
    <author>
        <name>kimada</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="java" label="Java" 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://www.fourmeisters.com/blog/kimada/">
        <![CDATA[大規模なSIプロジェクトでは、人海戦術に頼らざるを得ない場面が少なからずあるので、開発作業を単純化し、要員確保をしやすくするといったアプローチが必要になります。<br>
従来は、「SE」と「プログラマ」という分業体制の中で、「SE」が「詳細に記述された仕様書」を作って、「プログラマ」に渡すことを前提に、プログラミングを「単純作業」として捉えていた部分があったと思います。今でもその風潮は根強く残っていることがあるようですが、はたして、それでいいのでしょうか?
<p>
Javaのようなオブジェクト指向言語で開発する場合、そんなレベルの仕様書を、机上で頭の中で考えただけで書くことは、ほぼ不可能に近いと思います。というよりも、そこまで書けるのであれば、その人が実装までしてしまう方が効率がよいことは自明の理です。でも、この時点で、旧来のプログラミングが単純労働であるという前提は崩れてしまっていますね。
<p>
とはいっても、作業を単純化(シンプルに)することで、生産性の向上が期待できるので、何とか実現したいところです。
そこで、「SE」という立場の人たちの仕事として、プロジェクトの目的に合ったシステムアーキテクチャを考えることが重要になってきます。そのときに考えるべきことは、ビジネスロジック開発担当者が、エラーハンドリングやトランザクション管理などといった、制御ロジックから解放され、ビジネスロジックの実装に集中できるような、「シンプルでわかりやすい」環境を作ることです。重要なのは、単純化の真の目的は、考えることを減らすのではなく、本来考えてほしい部分に注力できるようにすることです。<br>
そのために必要なライブラリやフレームワークは、既存の製品だけでは不十分なので、自前で開発しなければならないものが出てきます。当然、そのためのプログラミングもすることになります。<br>
そういったことを考える中で、ビジネスロジック開発担当者に、何をしてもらえばいいのかも見えてくるので、どういった仕様書を作れば、効率よく作業を進めて行けるのかも明らかになるでしょう。
<p>
このように、事前の環境整備や準備をして複雑さを緩和することによって、開発作業はシンプルなものにすることができます。<br>
旧来のような「SE」と「プログラマ」という分業体制を前提に、安易に「上から目線」で「プログラミングは単純作業である」とは、言えないのです。]]>
        
    </content>
</entry>

<entry>
    <title>モバイルバージョンを作ってみました</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/10/post-3.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.288</id>

    <published>2008-10-24T23:03:54Z</published>
    <updated>2008-10-24T23:41:00Z</updated>

    <summary>MoFuseというサービスを使って、このブログのモバイルバージョンを作ってみまし...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="miscellaneous" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="iphone" label="iPhone" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="mofuse" label="MoFuse" 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://www.fourmeisters.com/blog/kimada/">
        <![CDATA[<a href="http://www.mofuse.com/">MoFuse</a>というサービスを使って、このブログのモバイルバージョンを作ってみました。(最近、全く更新が止まっているのに、意味あるのかって思うかもしれませんが......)<br>
このページの右下にある、
<p>
<div>
<a href="http://kimada.mofuse.mobi"><img src="http://api.mofuse.com/images/badges/badge_atoms_blue.png" border="0"/></a>
</div>
<p>
をクリックすると、そちらに切り替わります。<br>
一般の携帯電話と、iPhoneに対応されているようです。
例えば、iPhoneからの場合、以下のような感じで表示されます。
<div>
<script type="application/javascript">var mf_siteid="kimada";</script><script type="application/javascript" src="http://api.mofuse.com/iphone_embed.js"></script>
</div>
そのサイトのRSSの情報から、モバイル用のページを自動生成してくれているようですが、無料サービスなので、生成されたページには広告が挿入されます。その他、自分でページの追加やロゴの挿入などのカスタマイズもできるようです。
<p>
興味がある方は、覗いてみてください。]]>
        
    </content>
</entry>

<entry>
    <title>[Tips] Apple Mailのメッセージヘッダーを英語に</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/07/tips-apple-mail-1.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.250</id>

    <published>2008-07-05T14:41:22Z</published>
    <updated>2009-03-05T12:36:10Z</updated>

    <summary>Mail.appを使っていて、ずっと気に入ってないことが1つありました。メッセー...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Apple Mail" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="apple" label="Apple" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="macosx" label="MacOSX" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="mail" label="Mail" 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://www.fourmeisters.com/blog/kimada/">
        <![CDATA[Mail.appを使っていて、ずっと気に入ってないことが1つありました。メッセージヘッダーが日本語化されてしまっていることです。<br>
メッセージを表示している画面ではいいのですが、転送するときにも、引用されたメッセージのヘッダーのキーが日本語になっているのは、いただけませんね。「Begin forwarded message」が英語なところも、アンバランスだし。。。

<blockquote>
<pre>
Begin forwarded message:

&gt; 差出人: XXXXX XXXXX <xxxxx@xxxxx.com>
&gt; 日時: yyyy年mm月dd日 hh:MM:ss:JST
&gt; 宛先: XXXX XXXX <xxxxx@xxxxx.com>,......
&gt; 件名: XXXXXXXXXXXXXXXXXXXXXXX
........
</pre>
</blockquote>
<p>
もしも、英語で海外の人とメールをやりとりしている場合、この部分が必ず文字化けしてしまいますよね。とりあえず、Mail.appのプリファレンスの設定では、ここを英語にするための設定はないようです。そこで、アプリケーションのリソースを変更してみようといろいろ探ってみたところ、目的のものを見つけることができたので、自分自身のメモを兼ねて、以下にまとめました。
<p>
<u>注: この操作の危険度はそれほどないと思いますが、Appleよってサポートされているわけではなく、正式な手順でもないので、もしも試す場合は、オリジナルファイルのバックアップを保存しておくなど、あくまでも自己責任でお願いします。</u>
<p>
<ul>
<li>対象ファイル
<p>
<blockquote>/System/Library/Frameworks/Message.framework/Versions/B/Resources/Japanese.lproj/Message.strings</blockquote>
<p>
<li>ファイルの編集<br>
上記のファイルを、どこか書き込み権限のあるフォルダにコピーし、Xcodeを使って開き、コメントに"header of a message"と書かれている要素の値を、英語に変更する。
<p>
<blockquote>
<pre>
<u>編集例</u>
/* String used when displaying the From header of a message in the main window. 
This value is only ever used for display and will not be part of any outgoing email. */
// "From" = "差出人";
"From" = "From";
</pre>
</blockquote>
<p>
<li>編集したファイルを、元のファイルに上書きする。
<li>日付の書式に、漢字が含まれないようにする。<br>
「システム環境設定」の[言語環境] - [書式]で日付の[カスタマイズ]を選択し[長]の書式に漢字が含まれないように変更する。
<li>マシンを再起動する。
</ul>
<p>
設定が成功した場合、転送の引用メッセージのヘッダーには、以下の例のように、自分で設定した文字列が表示されます。
<p>
<blockquote>
<pre>
Begin forwarded message:

&gt; From: XXXXX XXXXX <xxxxx@xxxxx.com>
&gt; Date: yyyy/mm/dd hh:MM:ss:JST
&gt; To: XXXX XXXX <xxxxx@xxxxx.com>,......
&gt; Subject: XXXXXXXXXXXXXXXXXXXXXXX
..........
</pre>
</blockquote>
<p>
将来のアップデートで、このあたりの設定がプリファレンスで簡単にできるようになることを期待しています。(そもそも、メッセージヘッダーの日本語化自体が必要ないと思うのは、私だけでしょうか。。。)]]>
        <![CDATA[<p>
<strong><u>3/5追記</u></strong>
<p>
もっといい方法を、コメントで教えていただいたので、追記します。<br>
スーパユーザにならないと変更できないファイルをいじるより、安全で確実な方法があります。
詳しくは、<a href="http://oshiete1.goo.ne.jp/qa4447873.html">こちら</a>を参照してください。]]>
    </content>
</entry>

<entry>
    <title>iPhone is coming soon...</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/06/iphone-is-coming-soon.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.231</id>

    <published>2008-06-04T12:16:58Z</published>
    <updated>2008-06-04T12:32:54Z</updated>

    <summary>ついに、日本にも、iPhoneがやってくるようですね。 「iPhone」について...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="iPhone" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="iphone" label="iPhone" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="macosx" label="MacOSX" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[ついに、日本にも、iPhoneがやってくるようですね。<br>
<p>
<a href="http://www.softbankmobile.co.jp/ja/news/press/2008/20080604_01/">「iPhone」について</a>
<p>
<blockquote>この度、ソフトバンクモバイル株式会社は、今年中に日本国内において「iPhone」を発売することにつきまして、アップル社と契約を締結したことを発表いたします。</blockquote>
<p>
高解像度のカメラや、おサイフケータイ、ワンセグなどの機能を売りとする日本の携帯電話市場の中で、どんな展開になるのか楽しみですね。<br>
個人的には、ぜひ欲しいと思いますが、現実的に考えると、今使っているものはキープしたまま、2台目として持つことになるんでしょうかね。。。]]>
        
    </content>
</entry>

<entry>
    <title>Time Machineのバックアップが遅いとき</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/05/time-machine.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.227</id>

    <published>2008-05-29T13:02:43Z</published>
    <updated>2008-05-29T13:23:51Z</updated>

    <summary>Time Machineのバックアップで、対象データが数百MBしかないのに、1時...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="MacOSX" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="leopard" label="Leopard" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="macosx" label="MacOSX" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="spotlight" label="Spotlight" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="timemachine" label="Time Machine" 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://www.fourmeisters.com/blog/kimada/">
        <![CDATA[Time Machineのバックアップで、対象データが数百MBしかないのに、1時間経っても終わらないときがあるので、かなりストレスを感じてました。ちょっと調べてみたところ、<a href="http://tips4mac.blogspot.com/2008/02/adjusting-spotlight-for-your-time.html">Adjusting Spotlight for your Time Machine backup!</a>を見つけました。
<p>
バックアップ先として指定しているHDDが、Spotlightの検索対象になっていることが原因のようです。
<p>
<blockquote>
1. Open System Preferences.<br>
2. Choose Spotlight.<br>
3. Click on the Privacy tab.<br>
4. Click on the "+".<br>
5. Navigate to your backup disk and find the folder called "Backups.backupdb".<br>
6. Click "Choose".<br>
7. That's it. The backup should now be excluded from Spotlight searches.<br>
</blockquote> 
<p>
私の場合、"Backups.backupdb"を選択するとエラーになったので、HDDのルートを選択してみたところ、うまく行きました。]]>
        
    </content>
</entry>

<entry>
    <title>WebLogic Server on Leopard</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/04/weblogic-server-on-leopard.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.191</id>

    <published>2008-04-23T14:15:13Z</published>
    <updated>2008-04-23T14:53:31Z</updated>

    <summary>Leopardの中にJDK1.4が入っていることがわかったので、WebLogic...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Java EE" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="MacOSX" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="ミドルウェア" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="java" label="Java" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="leopard" label="Leopard" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="macosx" label="MacOSX" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="weblogic" label="WebLogic" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[<a href="http://www.fourmeisters.com/blog/kimada/2008/04/available_java_versions_on_leo_1.html">Leopardの中にJDK1.4が入っていることがわかった</a>ので、<a href="http://www.beasys.co.jp/products/weblogic/server81/index.html">WebLogic Server 8.1</a>をインストールしてみました。
<p>
MacOSXにWebLogic Serverをインストールして実行することは、<a href="http://www.beasys.co.jp/index.html">BEA社</a>によるサポートも保証もされない行為であるため、具体的な手順などを紹介することは差し控えますが、結論だけ言うと、特に問題なく動かすことができました。
<p>
改めて、Java/J2EEとWebLogic Serverのポータビリティと、<a href="http://developer.apple.com/java/">AppleのJava環境</a>の互換性の高さを体感しました。
<p>
開発環境としてだけでもいいので、いつの日か、サポート対象プラットフォームに、MacOSXが加わってくれるといいなと願っています！]]>
        
    </content>
</entry>

<entry>
    <title>Available Java versions on Leopard</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/04/available-java-versions-on-leo-1.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.185</id>

    <published>2008-04-17T13:11:45Z</published>
    <updated>2008-04-17T13:34:40Z</updated>

    <summary>前回のエントリで、ちょっと情報不足があったことがわかりました。 こちらにあるよう...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="MacOSX" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[<a href="http://www.fourmeisters.com/blog/kimada/2008/04/macmac.html">前回のエントリ</a>で、ちょっと情報不足があったことがわかりました。<br>
<a href="http://www.fourmeisters.com/blog/hisama2/2008/04/java_142_for_leopard.html">こちら</a>にあるように、LeopardでJDK1.4.2も入ってたんですね。
<p>]]>
        <![CDATA[<blockquote><pre>
$ <strong>ls -l /System/Library/Frameworks/JavaVM.framework/Versions</strong>
total 48
lrwxr-xr-x  1 root  wheel    5  2  7 01:40 1.3 -> 1.3.1
drwxr-xr-x  3 root  wheel  102  1 14 14:12 1.3.1
lrwxr-xr-x  1 root  wheel    5  2  7 01:40 1.4 -> 1.4.2
lrwxr-xr-x  1 root  wheel    3  2  7 01:40 1.4.1 -> 1.4
drwxr-xr-x  8 root  wheel  272  2  7 01:40 1.4.2
lrwxr-xr-x  1 root  wheel    5  2  7 01:40 1.5 -> 1.5.0
drwxr-xr-x  8 root  wheel  272  2  7 01:40 1.5.0
drwxr-xr-x  7 root  wheel  238  2  7 01:40 A
lrwxr-xr-x  1 root  wheel    1  2  7 01:40 Current -> A
lrwxr-xr-x  1 root  wheel    3  2  7 01:40 CurrentJDK -> 1.5
</pre></blockquote>
<p>
<strong>CurrentJDK</strong>にリンクされているものが、デフォルトですね。
<p>
<blockquote><pre>
$ <strong>ls -l `which java`</strong>
lrwxr-xr-x  1 root  wheel  74  2  7 01:40 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
$ <strong>java -version</strong>
java version "1.5.0_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05-237)
Java HotSpot(TM) Client VM (build 1.5.0_13-119, mixed mode, sharing)
</pre></blockquote>
<p>
ちなみに、JDK1.4.2は、
<p>
<blockquote><pre>
$ <strong>/System/Library/Frameworks/JavaVM.framework/Versions/1.4/Commands/java -version</strong>
java version "1.4.2_16"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_16-b05-302)
Java HotSpot(TM) Client VM (build 1.4.2-85, mixed mode)
</pre></blockquote>
<p>
思い込みから、ちゃんと調べきれていなかったことを反省せねば。。。<br>
<a href="http://www.fourmeisters.com/blog/hisama2/">hisama2さん</a>に感謝。。。]]>
    </content>
</entry>

<entry>
    <title>Macでできることは、できるだけMacで。。。</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/04/macmac.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.180</id>

    <published>2008-04-09T14:54:52Z</published>
    <updated>2008-04-14T10:59:57Z</updated>

    <summary>前回、MacBookの中に、「快適な仮想空間」を作ったところまで書きましたが、ホ...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="MacOSX" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="VMware" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="仮想環境" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[<p><a href="http://www.fourmeisters.com/blog/kimada/2008/04/macbook.html">前回</a>、MacBookの中に、「快適な仮想空間」を作ったところまで書きましたが、ホストOSであるLeopardを中心にするのが、最大の目標です。まずは、私が使っているものの中で、どうしてもWindowsでしか動かせないものを挙げてみます。</p>

<ul style="list-style-type: disc">
<li>JDK1.4をベースとするもの(e.g. WebLogic 8.1)</li>
<li>Internet Explorer</li>
<li>一部のMS Office文書</li>
<li>Adobe Acrobat(PDF Writer)</li>

</ul>Office文書に関しては、ほとんどのものは、Office for Macで問題なく使えるのですが、以下のものについては、Windows版Officeでないと、正しく扱えないようです。</p>

<ul style="list-style-type: disc">
<li>VBAマクロが含まれているもの</li>
<li>複雑な描画を含むExcelワークシート</li>

</ul>PDF Writerについては、MacOSXのプレビュー機能で事足りることがほとんどですが、WebページのハイパーリンクをPDFにそのまま引き継ぎたいような場合には、Acrobatが有用なので、そのまま使いたいところです。それも、Mac版のAcrobatを新たに購入すれば、解決できそうですが。。。</p>

<p>こうやって考えてみると、Windowsがないと困る場面というのは、意外と少ないですね。私の場合は、過去の資産と、Windowsでのみ使用可能な機能を積極的に利用しているものに集約されるので、VMware上のゲストOSとしてWindowsが動くようになっていれば、まったく問題ないです。私の作業の主体も、どんどんLeopardに比重が移ってきています。</p>

<p>今回の移行は、ここ最近のインターネット技術、ハードウェア性能、仮想マシン技術などの向上によって、実現することができたと思います。それと同時に、IT環境の中でのOSの位置づけが、かなり変わって来たことを、強く感じましたし、今後もその流れは止まらないかもしれないですね。<br />
</p>]]>
        <![CDATA[<p>もちろん、企業内アプリケーションでは、まだまだ、Windowsが必須な場面は、多いと思いますが、Vistaへ積極的にバージョンアップをしようという動きが、今のところは、あまり見られないような印象があるのは気のせいでしょうか。。。。</p>]]>
    </content>
</entry>

<entry>
    <title>MacBookの中の快適な仮想空間</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/04/macbook.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.177</id>

    <published>2008-04-04T17:30:12Z</published>
    <updated>2008-04-04T17:39:48Z</updated>

    <summary>とりあえず、Windows環境を、仮想マシンとして移行する作業が完了し、私のMa...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Linux" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="MacOSX" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="VMware" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="仮想環境" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[とりあえず、Windows環境を、仮想マシンとして移行する作業が完了し、私のMacBook(Core2Duo 2.4GHz + 4GBメモリ)の上では、3つのOSが同居することとなりました。

<ul style="list-style-type: disc">
<li>ホストOS: MacOSX Leopard</li>
<li>仮想マシンA: ゲストOS=WindowsXP、メモリ: 1.25GB</li>
<li>仮想マシンB: ゲストOS=Ubuntu Linux、メモリ: 384MB</li>

</ul>これは、まるで3台のマシンをひとりで占有していると錯覚するような、楽しい環境ですが、快適に操作するためには、少しコツがいります。
<p>
<span style="text-decoration: underline;">キーボード/マウスショートカットのコンフリクトに関する問題を解決する。</span><p>
デフォルトの設定では、VMware Fusionの仮想マシンを実行している場合でも、Leopard側で設定されているショートカットキーが、ゲストOS側の操作よりも優先されます。例えば、ゲストOSがWindowsの場合、control + クリックは、連続しない項目を複数選択ですが、MacOSXでは、マウス右クリックです。
そのままでは、[control + クリック]で、Explorerで連続しない複数ファイルを選択することができません。これを回避したい場合は、以下の通り設定しておくといいでしょう。

<ul style="list-style-type: disc">
<li>Expose、Spacesなどのショートカットキーを、commandキーとの併押下などに変更する。</li>
<li>VMware Fusionの環境設定で、「Mac OS マウスショートカットを有効にする」をOFFにする。</li>

</ul><p><span style="text-decoration: underline;">Spacesをうまく活用する。</span><P>
VMware Fusion専用の操作スペースを用意することで、MacOSXとゲストOSの画面を、ワンタッチキー操作で行き来することができるようになります。まるで、一昔前のディスプレイ切換え装置を使っているようなイメージです。

ここまでの環境が作れただけでも、十分に移行した価値ありですね。あと、驚くべきは、ゲストOSのパフォーマンスです。旧PC(Centrino 1,4GHz + 2GBメモリ)にくらべて、JavaアプリケーションのAntビルドの所要時間が、30%から50%くらい速くなりました。

次回は、「Macでできることは、できるだけMacでやる」をテーマに、書いてみたいと思います。
]]>
        
    </content>
</entry>

<entry>
    <title>WindowsPCの内容を、そのままMacへ移行</title>
    <link rel="alternate" type="text/html" href="http://www.fourmeisters.com/blog/kimada/2008/04/windowspcmac.html" />
    <id>tag:www.fourmeisters.com,2008:/blog/kimada//5.169</id>

    <published>2008-04-03T13:41:07Z</published>
    <updated>2008-04-03T17:58:32Z</updated>

    <summary>Macへの移行を決断した、最も大きな「物理的」きっかけは、VMware Fusi...</summary>
    <author>
        <name>kimada</name>
        
    </author>
    
        <category term="Linux" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="MacOSX" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="VMware" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="仮想環境" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="http://www.fourmeisters.com/blog/kimada/">
        <![CDATA[<p>Macへの移行を決断した、最も大きな「物理的」きっかけは、<a href="http://www.vmware.com/products/fusion/">VMware Fusion</a>が普通に動いているのを見て、今まで使っていたPCの環境を、そのまま移行できそうだと感じたことです。それによって、「それまで行っていた仕事を、そのまま継続できる環境を維持する。」という、最も重要な要件は満たされると確信しました。<br />
実際の移行作業は、<a href="http://www.vmware.com/jp/">VMware</a>社から提供されている、<a href="http://www.vmware.com/jp/products/converter/">VMware Converter</a>という移行ツールを使って行いました。<a href="http://www.vmware.com/jp/products/converter/">VMware Converter</a>は、大きく分けると以下の3パターンの環境から、VMwareの仮想マシンに変換することができます。<br />
<ul style="list-style-type: disc"><br />
<li>動作している物理マシンを丸ごと</li><br />
<li><a href="http://www.microsoft.com/japan/windows/products/winfamily/virtualpc/default.mspx">VirtualPC</a> などの他の形式の仮想マシン</li><br />
<li><a href="http://www.symantec.com/ja/jp/norton/products/overview.jsp?pcid=br&pvid=ghost14">Symantec Ghost</a>などで作られた、フルバックアップイメージ</li></p>

</ul><a href="http://www.vmware.com/jp/products/converter/">VMware Converter</a>を使用することで、ふつうなら上記のいずれかで簡単に、仮想マシンを作成することができます。ところが、私の場合は、ちょっとの事前準備が足りず、ストレートには行うことができなかったのです。そのときの反省を踏まえ、実際にやってみたことを、簡単にまとめてみました。</p>

<p>元のPCで使用していたVMware仮想マシンの切り出し<br />
<a href="http://www.fourmeisters.com/blog/kimada/2007/12/vmware_player_ubuntu_linux_ora_1.html">以前の投稿</a> で書きましたが、Ubuntu Linux + Oracle XEという組合せの仮想マシンを使っていました。それはそのままMacBookにコピーし、<a href="http://www.vmware.com/products/fusion/">VMware Fusion</a>で単純に開くだけで、すぐに起動することができました。VMware Toolsのアップデートを促すメッセージが出るので、ヘルプドキュメントの「VMware Tools のインストールとアップデート」に従って実行すれば移行完了です。これは簡単ですね。実はそもそも、この仮想マシンを作っておいたのは、Macへの移行を簡単にするための布石だったので、その狙いはみごとにヒットしました。</p>

<p><span style="text-decoration: underline;">動作中のPC環境を丸ごと移行する方法にチャレンジ</span><br />
まずは、移行元のPCに、<a href="http://www.vmware.com/jp/products/converter/">VMware Converter</a>をインストールし、起動します。<br />
あとは、<a href="http://www.vmware.com/jp/pdf/VMware_Converter_manual_ja.pdf">VMware Converter 3.0 User's Manual</a> のP.31 [VMware Converterによるマシンのインポート]にしたがって操作していきます。</p>

<p>手順1：ソースの選択<br />
[ソースとして物理マシンを選択する]が、このパターンに該当します。</p>

<p>手順2：新規仮想マシンのデスティネーションの選択<br />
[ソース マシンとしてWorkstation仮想マシンをインポートする]で出力先などの設定を行います。</p>

<p>インポート タスク作成の終了<br />
ここまでたどり着けば、あとはそのまま終わるまで放置します。かなり時間がかかるので、金曜日の夜に実施することをお奨めします！</p>

<p>私は、出力先として、とりあえず手持ちの2.5inのUSB外付けHDDを使用したのですが、何度やっても途中でエラーが発生して、最初の週末は、移行を断念しました。そのHDDへの書き込み処理が遅延したことが原因だったようです。後日、弊社の別のメンバーが、もっと性能がいいHDDを購入し、それを使ったところ、何の問題もなく成功したようです。私も事前に用意しておけばよかったと反省しています。</p>

<p><span style="text-decoration: underline;">Workaround</span><br />
私は、普段のバックアップは、<a href="http://www.symantec.com/ja/jp/norton/products/overview.jsp?pcid=br&pvid=nsr20">Norton Save &amp; Restore</a> を使っていました。次の週末に仕切り直しで、そのバックアップイメージからコンバートすることでようやく、Windows環境の移行が完了しました。初回起動時には、以下の2つのことをやる必要があるので、注意してください。<br />
WindowsやOfficeのライセンス認証を行うことが要求される。<br />
VMware Toolsのインストールを促すメッセージが出るのでインストールする。</p>

<p>とりあえず、元のPCの中身がほぼそっくり復元することができ、物理的な要件である、業務に支障なしの状態を作れたので、第一段階終了です。<br />
次回は、「Macでできることは、できるだけMacでやる。」というテーマで行ったことを書いてみたいと思います。<br />
</p>]]>
        
    </content>
</entry>

</feed>
