MacとJavaと映画と


最近のエントリー
BBQ


最近のレスポンス
ありがとうございました
参考にしてくださってありがとうございます...

ありがとうございました
ディスク拡張で検索して、ここへたどり着き...

Re: BEA JRockit 無償版 静かに消される?
まぁ、6月からスウェーデンは BEA じゃないからな。来週位に Oracle のサイトを探してみそ。

Google Maps for WordPressのIE表示、対策できました!
先日より記事にしていました、プラグイン『...

Re: JConsole で JBoss の MBean を監視
細かい調整面倒なので2カラムにして対応し...

Re: JConsole で JBoss の MBean を監視
IE! そんなブラウザもありましたね! ありがとうございます。確認してみまーす

Re: JConsole で JBoss の MBean を監視
日記の内容と関連してなくてアレだけど、磯...

Google Maps for WordPressのIE表示対策の参考にできるかも
侍ズム | Samuraism - Google Maps 簡単貼り付け 先日、『Google Maps for WordPress 試してみました が…』の記事で紹介した 侍ズム の記事にトラックバックをさせていただいた...

[Java]BEA JRockitが単体ダウンロード不可に
参照サイト 侍ズム | Samuraism - Oracle、BEA 買収後早くもクローズド戦略に? - BEA JRockit 単体ダウンロード不可 JRockitが・・・・ - maachangの日記 いちおう最新バージョンはまだ手に入るみた...

Google Maps for WordPress 試してみました が…
ブログに地図が貼れると良いなぁ…と思って いろいろとプラグインをあさってみています...
11月 2006
    1  2  3  4 
 5  6  7  8  9  10  11 
 12  13  14  15  16  17  18 
 19  20  21  22  23  24  25 
 26  27  28  29  30   
10  |  今日  |  12





はてなブックマーク数

あわせて読みたい


follow yusukey at http://twitter.com


Second Life とは仮想世界の中での生活を楽しむ一種のゲームです。
ユーザに与えられるのはその世界そのもので、中で何をするのかは自由。
ただ、ゲームの中には実際に経済があって、ゲーム内で使う通貨Linden を現実世界のお金で買って(現在$1=271Lindens)生活します。
で、何が話題になっているかというと、CopyBot と呼ばれる仮想世界内で物体を複製するプログラムが現れたそうです。
- CNET.com - 'Second Life' faces threat to its virtual economy

当然物が無尽蔵に増えれば仮想世界内の経済もバランスがとれなくなります。
さらに問題なのは Second Life を運営(経営?)する Linden Lab が、この問題に対して有効な対応策を編み出せるかどうかハッキリしていないことです。
現在のところはこの手のツールを使ったアカウントは抹消するということで沈静化を試みているみたいです。
米国では数々のリアルワールドの会社が仮想世界内に出店し始めて、ビジネスモデルを構築しようと奮闘している段階らしいのでなにかと混乱を呼んでいるようです。

なんだか冗談のようですが・・。

タグ :

・ Java 屋が触る C# / その1 - Visual Studio Express で Hello World
Java屋が触る C# / その2 - コマンドラインでコンパイル・実行
その3 - Mono のインストール・実行

C# は Microsoft が主導して規格制定している Java によく似た言語です。
コンパイルされたクラスは Windows ネイティブではなく、.NetFramework 上で動作するための中間コードになります。
最近では Windows 以外の環境で .Net のコードを動作させる環境 - Mono が盛り上がっており、マルチプラットフォームのアプリケーションを開発する基盤として Java に次ぐ選択肢となり得ます。
それどころか Mono の上で Java や Python, Ruby を動かすこともできるようです。
言語に依存しない実行環境である .NetFramework の特徴をうまく利用していますね。
- http://www.mono-project.com/Languages

Mono の上で Eclipse を動かしているというスクリーンショットもあります。Java との互換性は相当進んでいるのではないでしょうか。


Mono を使ったマルチプラットフォームアプリケーションとしてはimeemがあります。
これは "Social Media" を謳うアプリケーションで、基本は Yahoo! Messenger、Windows Live Messenger、AIM といった各プロトコルに対応するチャットクライアントです。
面白いのはチャットクライアントをベースに写真や動画を共有することができたり、友達の友達、といった形で辿ったりすることができる新しいコンセプトのツールです。
もともと Windows 用に作ったアプリケーションですが、Mac 版を1から作らなくて済むよう Mono を利用してコードの大幅な共通化を図っているとのことです。
ダウンロードして動かしてみれば分かりますが、Cocoa のネイティブアプリケーションと変わらないルック&フィールで自然に動きます。

Mac OS X 上で動く imeem


というわけで、個人的に注目していたのですが、なかなか手がつけられないでいました。
そんなところ、ちょうど最近仕事で C# の API を触る機会があり、さらに Paralles Desktop 上で Windows XP が快適に動くという状況なので C# プログラミングを楽しんでみることにしました。
Java エンジニアの視点で、今回はひとまず Hello World を実行するところまでやってみたいと思います。

・Visual Studio Express のインストール
Visual Stuidio Express は Microsoft が提供する無償のプログラミング環境で、商用利用もできるそうです。

まず、ダウンロードしたのは CD イメージ。
- Visual Studio 2005 Express Edition - CD イメージからのインストール方法

上記ページには CD イメージを焼かずに Windows で直接マウントする方法が書かれていますが、今回は Mac 側に iso イメージをダウンロードして Parallels Desktop で指定してマウントしました。
インストール自体は特に迷うことなく簡単にできました。


・Hello World の作成
とりあえず Hello World を作ります。GUIを持たないアプリケーションを作るには[ファイル>新しいプロジェクト>コンソール アプリケーション] を選択します。
すると、以下のようなアプリケーションの雛形が作成されました。

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
 class Program
 {
  static void Main(string[] args)
  {
  }
 }
}


Java との大きな違いは import が using に、package が namespace に、クラス名だけじゃなくメソッド名も大文字になっているといったところでしょうか。
Hello World とコンソールに表示させるのは簡単。
以下のメソッドを Main メソッドに追加するだけです。
System.Console.WriteLine("Hello World");
太古の昔にどこかの雑誌で読んだ記事の記憶を頼りに、特にリファレンスを見ることなく書けてしまいました。

実行ボタンを押すと・・・一瞬コマンドプロンプトが表示されたかと思うとすぐ消えてしまいますが、一応動いているようです。
あまりに一瞬なのでスクリーンショットは撮れませんでした。

Visual Studio で Hello World

とりあえず C# に触れることが出来ました。
最後に比較のため、C# と Java の同等のコードを載せます。

- C# のコード: Program.cs
namespace ConsoleApplication1
{
 class Program
 {
  static void Main(string[] args)
  {
   System.Console.WriteLine("Hello World");
  }
 }
}

デフォルトで宣言されていた using System; は省略してもコンパイルできました。
Java でいう java.lang.* のパッケージと同じく暗黙的に使えるようになっているようです。

- Java のコード: Program.java
package ConsoleApplication1;

 class Program
 {
  public static void main(String[] args)
  {
   System.out.println("Hello World");
  }
 }
}


なぜだかよく分かりませんが C# は Main メソッドは public でなくても良いようです。

次回はたぶんコマンドプロンプトからコンパイル・実行する方法を調べてみます。

タグ : , , ,