タグ

ブックマーク / xtech.nikkei.com (689)

  • クロージャからProject Lambdaへ

    今回はJava SE 7で導入される機能について紹介していきます。 筆者が思うに、Java SE 7で最も議論を起こすであろう機能はクロージャです。クロージャの導入には紆余曲折がありましたが(詳しくは記事の後半で述べます)、とうとう2009年11月に正式に導入されることが決まりました。 そこで、連載ではいち早くクロージャについて取りあげることにします。 とは言うものの、現在提案されている仕様はまだたたき台レベルです。このため、今後仕様が大幅に変化する可能性があります。その点をご了承ください。 関数型とクロージャ クロージャの仕様を紹介する前に、クロージャがどういうものかということを説明しましょう。 ここでは例として、ボタンをクリックしたときのイベント処理を考えてみます。 Swingではイベントの処理をリスナを用いて行います。例えば、以下のようなコードになります。 JButton but

    クロージャからProject Lambdaへ
    t_43z
    t_43z 2010/03/01
  • 第16回 Scala 2.8の新機能 (2) --- コレクションライブラリの再実装

    SIer勤務。関数型プログラミング言語や形式手法に興味があり色々勉強中。"A Scala Tutorial for Java programmers"の和訳やScala勉強会(scala-beなど)での発表などScalaの普及活動を行っている。 現在使用されているScala 2.7系に対して、2009年後半にβ版が公開されテスト中のScala 2.8系では大きな変更や数多くの興味深い機能追加が行われています。今回は、前回に続いてScala 2.8の新機能について紹介します。 なおScala 2.8は現在も開発中です。この記事は2010/01/27にリリースされたBeta 1版のScala 2.8.0を元に執筆していますので、Scala 2.8の正式リリースまでに変更が加わる可能性があることを予めお断り致します。 前回の記事が公開された後、2010年1月27日に、Scala 2.8.0.Be

    第16回 Scala 2.8の新機能 (2) --- コレクションライブラリの再実装
    t_43z
    t_43z 2010/02/10
  • 誰でもできるアプリ開発(3)

    実機での動作確認 Androidの実機を持っている場合にはアプリケーションを実機に転送して動作可能だ。アプリケーションをUSBで転送する場合には,実機の設定メニューの「アプリケーション設定」の「開発」で「USBデバック」をチェックしておく。 また,Ubuntuと実機をつなぐ場合には,USBドライバを設定することが必要である。詳細はAndroid Developersの「開発」のパートの「On a Device:Developing on a Device」の章を確認していただきたい。 設定した後,Ubuntuと実機を接続すると,実機の上部にUSB接続のマークが表示される。もし,表示されない場合には,「/var/log/message」を確認してエラーコードが発生していないか確認してみよう。 実機を接続したまま,Eclipseでアプリケーションを実行すると,実行するデバイスを選択するメニュー

    誰でもできるアプリ開発(3)
  • もう外国語で悩まない!? リアルタイムな翻訳システムの実用化が間近

    「Where is the nearest station?」「えっ、なに?なに?I can’t speak English.」――。もう、こんな恥ずかしい思いはしなくてすむかもしれない。相手が話した言葉を自動的に翻訳し、メガネ型の表示ディスプレイなどに翻訳内容をほぼリアルタイムに表示するシステムの実用化が近いからだ。英語のほか、中国語と韓国語にも対応する。まずは、日を訪れた観光客との“通訳”として期待されている。 “通訳”となるのは、音声認識ソフトと自動翻訳ソフトを組み合わせたシステム。マイクで音声を検知し、それを自動的に翻訳して各種の表示装置に表示する。会話する双方が利用することで、例えば日語を知らない外国人観光客と、英語を知らない日人の会話が可能になる。

    もう外国語で悩まない!? リアルタイムな翻訳システムの実用化が間近
    t_43z
    t_43z 2010/02/02
    どんぐらい実用性があるんだろうか
  • Amazon EC2互換である意味

    皆さんは「Eucalyptus(ユーカリプタス)」をご存じだろうか。米Amazon Web Servicesが提供するクラウド・コンピューティング・サービス「Amazon EC2」と同じAPI(アプリケーション・プログラミング・インタフェース)で仮想マシンが管理できるインフラ環境を構築するオープンソースソフトウエアだ。社内に「Amazon EC2互換環境」があると何がうれしいのか。ユーザーの声を元に考えてみたい。 まず、Eucalyptusでいう「Amazon EC2と同じAPI」の意味を説明しよう。Amazon EC2では、仮想マシンの作成や起動、仮想ディスクイメージの作成といった管理タスクをコントロールするAPIを外部に公開している(Amazon EC2のAPIリスト)。外部の開発者はこのAPIを利用すると、Amazon EC2の仮想マシンを管理するツールを開発できる。 ストレージサー

    Amazon EC2互換である意味
  • 誰でもできるアプリ開発(2)

    アプリケーションを開発する それでは,日英翻訳アプリケーションを開発する。次のような仕様とする。 ●画面上のテキスト・ボックスに日語を入力し,「Translate」ボタンを押せば,入力した日語を英語に変換する ●画面から[Send]ボタンを押せば,他のアプリケーションに翻訳した結果を渡す ●画面上に表示されているボタン,あるいはメニュー・ボタンから操作できる。画面上の翻訳ボタンでは,入力されている言語を自動認識して翻訳するが,メニュー・ボタンでは,翻訳する言語を選択して翻訳する。Androidでは,画面上に表示されない詳細な操作をするためにメニュー・ボタンを使用する(写真2)。 ひな型の作成 ここでは,Androidのが備えるサンプル・プログラムを改良してアプリケーションを作成する。サンプル・プログラムの中で上記仕様に最も近い「Skelton Appli」を使う。 最初に,Eclips

    誰でもできるアプリ開発(2)
  • 最も働きがいのある会社ランキング、2010年首位はSAS、Googleは4位

    米経済誌「Fortune」は米国企業を対象にした「最も働きがいのある会社ベスト100」の2010年ランキングを発表した。2月8日号に掲載されたランキングの首位は、ソフトウエア・ベンダーの米SASが獲得した。米Googleは昨年に引き続き4位。昨年首位だった米NetAppは7位に順位を下げた。 SASは、福利厚生が充実している。月額410ドルの育児手当、90%適用の健康保険、疾病による無期限の有給休暇などを提供し、社員が無料で利用できる医療センター、6万6000平方フィートのフィットネスジムとプール、図書館などを設けている。収益性も優れているほか、離職率は2%と低い。米国に5487人、米国外に5579人の従業員をかかえる。同社は13年連続でベスト100に選ばれている。 Googleはここ数年、一部の手当を削減していたが、昨年、年金制度やストック・オプションに新たなプログラムを追加した。また、

    最も働きがいのある会社ランキング、2010年首位はSAS、Googleは4位
  • 第15回 Scala 2.8の新機能 (1)

    SIer勤務。関数型プログラミング言語や形式手法に興味があり色々勉強中。"A Scala Tutorial for Java programmers"の和訳やScala勉強会(scala-beなど)での発表などScalaの普及活動を行っている。 現在使用されているScala 2.7系に対して、2009年後半にβ版が公開されテスト中のScala 2.8系では大きな変更や数多くの興味深い機能追加が行われています。今回と次回はScala 2.8についての紹介を行います。 なおScala 2.8は現在も開発中です。この記事は2009/12/24版のScala 2.8.0を元に執筆していますので、Scala 2.8の正式リリースまでに変更が加わる可能性があることを予めお断り致します。 Scala 2.8 について この記事を執筆している時点(2009年12月)におけるScalaの安定版は2.7.7

    第15回 Scala 2.8の新機能 (1)
    t_43z
    t_43z 2010/01/20
  • 誰でもできるアプリ開発(1)

    Androidアプリケーションを開発する。誰でも可能なようにサンプル・プログラムを使って進める。日英翻訳アプリケーションを実際に作りながら,開発手順を学ぼう。 米Google社が開発したOSである「Android」の特徴の1つは,誰でもアプリケーションを開発して配布できることだ。Android用アプリケーションは,無料のツールを使ってJava言語で開発可能。それを「Androidマーケット」と呼ぶサイトに登録すれば,広くユーザーに利用してもらえる。無料のもので提供したり,有料として販売したりできる。2009年9月から日の開発者も有料で販売できるようになった。 開発環境の面では,2009年10月28日にリリースされた「Android SDK2.0」が注目を集めている。SDK2.0では,「マルチタッチ」のサポートなど,数多くの機能が追加されている。高機能なAndroidアプリケーションの登場

    誰でもできるアプリ開発(1)
  • 第4回 簡単なRSSリーダーを作ってみる - Androidで広がる,携帯アプリ開発の世界:ITpro

    前回までの3回で、Androidアプリケーションの開発に必要なSDKの導入方法や、Android Marketへの申請方法を一通り説明してきた。この回からは、シンプルなRSSリーダー・アプリケーションの開発を通じて、アプリ開発の実際の手法や必要な知識を紹介していく。 実践的な内容も多少含んでいることから、Java言語の基礎に加えて、Androidアプリ開発の基礎をある程度習得している読者が対象になるが、Androidアプリの自作を考える読者にとっては、参考になるだろう。 基的な開発作業の流れを中心に、アクティビティの実装部分についてもほんの触りだけだが、解説していく。 開発するRSSリーダーの概要 今回、題材として開発を進めていくRSSリーダーは、ITproがすでにAndroid Marketで公開しているニュース・リーダーの機能縮小版という位置付けのアプリである。Android端末をお

    第4回 簡単なRSSリーダーを作ってみる - Androidで広がる,携帯アプリ開発の世界:ITpro
  • 第3回 Androidアプリケーションを公開する - Androidで広がる,携帯アプリ開発の世界:ITpro

    完成したAndroidアプリケーションを世界に公開するには、Googleが運営するアプリケーション配布/販売サイトAndroid Marketにそのアプリケーションを登録する必要がある。今回の記事では、アプリケーションのパッケージングから、Android Marketにアプリケーションを登録、配布するための手続きを、順を追って解説していく。 なお、Androidアプリケーションの公開に関しては、Googleがデベロッパ向けに提供する開発ガイドにも詳しく記載されているので、参照してほしい。 Android Marketとは? Android Marketとは、Googleが提供するAndroid用アプリケーションの販売/配布サイトであり、iPhoneではApp Storeにあたる存在である。すでに世界中のデベロッパが、Android Marketで多種多様なアプリケーションを公開しており、内

    第3回 Androidアプリケーションを公開する - Androidで広がる,携帯アプリ開発の世界:ITpro
  • Androidの仕組みを知る(3)

    最後に,アプリケーションが実行されるときのAndroidの内部的な動きを解説しよう。電話帳,カメラ,カレンダなど,Android携帯のユーザーが実際に操作するプログラムは,すべてこのアプリケーション層に入る。 Androidでは,特別扱いのアプリケーションはない*2。つまり,フレームワークが提供するAPIはすべて第3者に公開されている。開発者はどんなアプリケーションでも開発でき,多くの開発者がさまざまなアプリケーションをリリースしている。 ここでは,Android用のアプリケーション配信サービスである「Android Market」から入手できる2つのアプリケーションを紹介する。これらのアプリケーションがAndroid内部で具体的にどのように動作しているのかを説明する。 ●ポケットスケッチ ポケットスケッチは,タッチパネルを使い,指でなぞるだけで絵が描ける簡易ペイント・アプリケーションだ(

    Androidの仕組みを知る(3)
  • ログインしてください:日経クロステック(xTECH)

     会員限定サービスです 会員の方はこちら ログイン 有料会員(月額プラン)は初月無料! お申し込み 日経クロステック TOPページ

  • Ajaxアプリ開発キットの新版「Google Web Toolkit 2.0」,性能解析ツールを追加

    Googleは米国時間2009年12月8日,Ajaxアプリケーション開発キットの新版「Google Web Toolkit(GWT)2.0」をリリースした。同社のWebサイトから無償ダウンロードできる。 GWTは,既存のJavaツールでAjaxアプリケーションを作るオープンソース開発キット。Javaで記述されたプログラムをJavaScriptHTMLコードに変換するため,JavaScriptの知識を持たない開発者でもWebアプリケーションを作ることができる。新版は,Webブラウザ「Google Chrome」の機能拡張として実現したパフォーマンス解析ツール「Speed Tracer」を採用。速度低下につながるボトルネックを見つけると,Webアプリケーションの高速化に役立つとしている。 コードの分割ダウンロードに対応し,すべてのコードをダウンロードする前にWebアプリケーションを起動でき

    Ajaxアプリ開発キットの新版「Google Web Toolkit 2.0」,性能解析ツールを追加
    t_43z
    t_43z 2009/12/10
    GWTすごい進化してるな
  • Androidの仕組みを知る(2)

    Android Runtime 次いで,アプリケーションの実行環境「Android Runtime」を解説する。Android Runtimeは,仮想マシン「Dalvik VM」と,基的なAPIを提供するコア・ライブラリで構成される。 Androidのすべてのアプリケーションは,Dalvik VM上で動作する(図4)。Dalvik VMは,Java VMと同様,メモリー管理をガベージ・コレクタ*が担当している。開発者がメモリーの確保と解放を明示的に実行しないでも,メモリー・リークによる深刻なシステム破壊を防いでいる。 加えて,JavaからC/C++を呼び出すAPIのJNI(Java Native Interface)にも対応している。CやC++で書かれたネイティブのコードが実行可能となっている。 Dalvik VMのアーキテクチャは,“レジスタ・ベース”を採用している。レジスタ・ベースは

    Androidの仕組みを知る(2)
  • 第1回 Androidの構造

    2008年10月22日,米Google社が開発するモバイル機器向けのプラットフォーム「Android 1.0」がオープンソースとして公開された。これで誰でも自由にAndroidを機器に搭載したりAndroid用ソフトを開発したりできる。Androidは一体何を変えるのか..。Androidのソースに触れ,その実体をつかむ。(日Androidの会組み込みWG 近藤昭雄,木南英夫,水野光男) Android(アンドロイド)は,「Open Handset Alliance(OHA)」が2007年11月5日に提唱した。OHAはGoogleが主体となって結成したオープン携帯プラットフォームの普及を目指す団体で,実質的にGoogleAndroidを開発する。 同11月12日にアプリケーション開発環境の「Android SDK」が先行公開されたものの,ソース・コードはリリースされなかった。これは,ソ

    第1回 Androidの構造
  • ログインしてください:日経クロステック(xTECH)

     会員限定サービスです 会員の方はこちら ログイン 有料会員(月額プラン)は初月無料! お申し込み 日経クロステック TOPページ

  • Androidの仕組みを知る(1)

    遂に日でもAndroid携帯が発売された。注目を集めているAndroidとは,一体何なのか,パソコンに移植するためにはどのような作業が必要なのか,アプリケーションを開発するにはどうするのか解説する。 Androidは,米Google社が開発し,携帯電話関連の業界団体であるOHA(Open Handset Alliance)が2007年11月に発表した,ソフトウエア・スタック(複数層で構成するソフトウエア群)である。 Androidを構成するソフトには,携帯端末向けに改良されたLinuxカーネルとミドルウエア,アプリケーションの実行環境,開発環境であるアプリケーション・フレームワーク,アプリケーション,がある。 Androidは携帯端末用として開発されているものの,適用範囲は携帯端末にとどまらない。Androidが現在対応しているCPUは英ARM社のARM系と米Intel社のx86系の2種

    Androidの仕組みを知る(1)
  • マインドマップ会議

    「ほんの思いつきでも結構ですのでどんどん意見を言ってください」─。新事業などを企画する会議はまずこのようなブレーンストーミングから始まる。しかしこんな経験はないだろうか。「社会貢献の見地から…」といった思い入れの強い意見が出たり、「お客様からこんな声を聞いた」という一片の事実が市場の動向を決めつけるように語られたり、「過去の経験から見て方向性は明らかだ」という意見が出たりしているうちに、気軽に発言できなくなってしまう。 かといって、こうした発言をする人たちに悪気は無い。むやみに発言を押さえつけては末転倒だ。こんなとき、議論の方向性を図示化してリアルタイムに整理できる手法があれば、参加者が個々の意見の位置付けや相互の関連性を冷静に理解して、バランスの取れた議論をできるようになる。こうしたニーズに応えられる図解表現技法が「マインドマップ」だ。 この技法を今年から取り入れて新事業のブレスト会議

    マインドマップ会議
    t_43z
    t_43z 2009/11/24
    すごいなー
  • セカイカメラの「Open Air API」,11月に詳細を発表

    携帯端末向けの拡張現実(AR)アプリケーション「セカイカメラ」を開発する頓智・(トンチドット)は,セカイカメラの「Open Air API」の詳細を11月に発表する。「東京ゲームショウ(TGS)2009」でのジャーナリスト林信行氏による講演の特別ゲストとして登場した,同社の井口尊仁CEOが明らかにしたもの(写真1)。ミニブログ「Twitter」を通じて報告するという。 セカイカメラは,携帯端末が内蔵するカメラ経由で取り込んだ現実の映像に,付加情報のリンク先などを記した「エアタグ」を重ね合わせて表示するアプリケーション。OpenAir APIを公開することにより,サードパーティも「エアタグ」を組み込んだアプリケーションを開発できるようになる。 登壇した井口氏は,ゲームに親和性が高い機能として「エアシャウト」を紹介した。これは,拡張現実の空間の中でタグを飛ばし合う機能。「タグをキャッチして“ポ

    セカイカメラの「Open Air API」,11月に詳細を発表