タグ

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

  • Linus君がボクを後継者に指名した理由 - Gitメンテナー 濱野 純氏

    今やソースコード管理システムの標準となっている「Git」(関連記事)。作者のLinus Torvalds氏から指名され、メンテナーとして責任を負っているのが現在米国のGoogle社に勤務する濱野純氏だ。濱野氏に、メンテナーを引き継いだ経緯、Googleでの仕事などについて聞いた。 Gitコミュニティはどのように活動しているのですか。 体の開発は、デザインからコードレビューまで、すべてGitメーリングリストで行っています。最近のリリースには、それぞれ60人から80人程による変更が入っていますが、常に活動している主要な開発コミュニティ参加者、と言えるのは10人程度です。 開発者でない人たちで#git IRCチャネルとか、stackoverflowなどでエンドユーザーのサポートをしてくれる人たちの数はもっと多いと思います。この人たちも、Gitコミュニティの重要な仲間です。 Gitコミュニティ

    Linus君がボクを後継者に指名した理由 - Gitメンテナー 濱野 純氏
  • Java SE 7徹底理解 第4回 New I/O 2の新しいファイルシステムインタフェース その1 | 日経 xTECH(クロステック)

    今回は、J2SE 1.4.0の話からはじめましょう。 J2SE 1.4.0がリリースされたのが2002年。すでに9年も経ってしまいました。 さすがに最近こそ使われなくなったものの、日においてはJ2SE 1.4.xが一番多く使われていたバージョンなのではないでしょうか。 そのJ2SE 1.4.0の時に新機能として導入されたのが、JSR 51 New I/O APIs for the Java Platform、通称NIOです。 NIOは、java.ioを補う新しいI/Oに関するAPIで、入出力に特化したバッファや、ストリームよりも高効率なチャネルなどを提供しています。また、ノンブロッキングI/OもNIOで導入されました。 NIOは一般にはそれほど使われていないようですが、GlassFishやTomcatなど多くのフレームワークやライブラリで導入されています。 しかし、JSR 51は当初から

    Java SE 7徹底理解 第4回 New I/O 2の新しいファイルシステムインタフェース その1 | 日経 xTECH(クロステック)
  • Java SE 7徹底理解 第1回 言語仕様の小さな変更 - Project Coin

    今月から、久々のJavaのメジャーバージョンアップであるJava SE 7を紹介していきます。 Java SE 6がリリースされたのが2006年12月ですから、もう5年にもなろうとしています。これだけの時間がかかってしまったことからもわかるように、Java SE 7の仕様が決まるまでは紆余曲折の歴史でした。 もともと、Java SE 7はJava SE 6と一緒に仕様を決め、簡単に実現できる機能をJava SE 6、実現に時間がかかる機能をJava SE 7にすることになっていました。その当時、Java SE 7に盛り込まれる機能としてリストアップされていたのが、クロージャやfriendです。 クロージャのすったもんだについては連載の「クロージャからProject Lambdaへ」で言及しました。その後、Project Lambdaは再び仕様が変更されています。 friendはスーパーパ

    Java SE 7徹底理解 第1回 言語仕様の小さな変更 - Project Coin
  • 「Java SE 6完全攻略」Garbage First GC

    Javaがヒープの管理にGCを使用しているのは、読者の皆さんもご存じの通りです。GCの手法にはいろいろありますが、HotSpot VMが採用しているのが世代別GCです。今回は、世代別GCの概要と問題点を解説したうえで、これを解決するために導入されたGarbage First GCについて説明します。 世代別GCの概要と問題点 世代別GCは若いインスタンスと時間を経たインスタンスを別々の領域に配置し、管理する手法です。これは寿命の短いインスタンスほど多いという性質をベースにしています。 若いインスタンスが配置される領域をヤング領域、時間を経たインスタンスを配置する領域をオールド領域とよび、それぞれの領域で異なるGCの手法を使用します。つまり、ヤングとオールドという世代の異なる領域を、それぞれ異なるGCで管理するのが世代別GCというわけです。 ヤング領域には高速ですが漏れのあるGCを用います。

    「Java SE 6完全攻略」Garbage First GC
  • GoogleがYouTube動画に自動で字幕,日本語への翻訳も可能に

    Googleは米国時間2009年11月19日,同社が運営する動画投稿サイト「YouTube」で,動画再生時に自動で字幕を付ける機能「Auto-caps(automatic captions)」を追加と発表した。 これまで字幕を表示するには,動画の投稿と同時に字幕を記述したファイルをアップロードしなければならなかった。この方法ではユーザーに負担がかかり,YouTubeにある膨大な動画すべてに字幕を付けるのは困難と判断。機械生成による方法も採用することにした。 この機能は,同社の自動音声認識技術を利用している。映画などの字幕と同じく人物がまだ話し終えていないセリフもあらかじめ表示する。また字幕は翻訳することもできる。約50の言語に対応しており日語表示も可能。利用するには,画面右下にあるアイコンにマウスを持っていくと表示される「Transcribe Audio」や「Translate Cap

    GoogleがYouTube動画に自動で字幕,日本語への翻訳も可能に
  • 第9回 圧縮ファイルの操作方法

    Javaを使って普段の仕事をラクにするツールを作るこの連載も,早くも第9回を迎えます。今回は,皆さんが普段から使っている圧縮ファイルの扱い方について見ていきます。Javaを使ってファイルを圧縮/解凍する方法を学びましょう。 この連載では,日々の定型的な業務をJavaで自動化してラクする方法を紹介しています。今回は,皆さんも利用する機会の多い圧縮ファイルをJavaから操作してみましょう! Javaを使って,ファイルを圧縮/解凍する方法を説明します。 おそらく読者の皆さんのほとんどは,ファイルの圧縮や解凍に専用のツールを使用していると思います。便利なことに,Javaもこうした専用ツールと同様に,ファイルを圧縮/解凍できる機能を備えています。この機能を使うと,GUIベースのファイル圧縮/解凍専用ツールでは難しい操作もできるようになります。例えば,あるフォルダ以下に含まれたファイルから,特定の文字

    第9回 圧縮ファイルの操作方法
  • 「Java SE 6完全攻略」管理ツールの集大成 - VisualVM その5

    今月も引き続き管理ツールのVisualVMについて紹介していきます。 先月まで,VisualVMが標準で提供している機能について解説してきました。今月から,VisualVMを拡張する方法について解説します。 なお,VisualVMプロジェクトではVisualVM1.2がリリースされました。しかし,記事では今まで通りJDKで提供されているVisualVMを使用していきます。 プラグインによる機能追加 アプリケーションを管理するには,さまざまな情報を駆使して行う必要があります。たとえば,GCのチューニングを行うには,ヒープの使用量だけでは情報が足りません。 HotSpot VMでは世代別GCを採用しているため,ヒープをヤング領域とオールド領域に分割して管理します。ヤング領域はさらにEden領域とSurvivor領域に分割します。オールド領域はTenured領域と呼ばれます。 これらの領域の使

    「Java SE 6完全攻略」管理ツールの集大成 - VisualVM その5
  • 第8回 PDFファイルの操作方法

    今回は,仕事でよく使うPDFファイルの操作方法を学びます。Javaを利用して,家計簿をPDFファイルとして作成してみます。ついでにPDFファイルの読み込み方法も覚えることにしましょう。PDFファイルの扱い方を習得すれば,仕事の大きな手助けになるはずです。 皆さんこんにちは,kikainekoです。この連載では,日々の定型的な業務をJavaで自動化してラクする方法を紹介しています。今回は,皆さんが仕事やプライベートでよく使っているPDFファイルをJavaから操作してみましょう! 便利なことに,JavaPDFファイルを操作するためのオープンソースのツールが,いくつか提供されています。今回は,その中でも日語の情報が比較的充実している「iText」というライブラリを使うことにします。iTextを使うと,JavaからPDFファイルを生成することができます(インストール方法は,以下のカコミ記事を参

    第8回 PDFファイルの操作方法
    tezukam
    tezukam 2009/10/31
    iText
  • 「Java SE 6完全攻略」管理ツールの集大成 - VisualVM その4

    今月も引き続きVisualVMについて解説していきます。 前回はVisualVMを使ったプロファイル,特にCPUプロファイルを使用してパフォーマンスチューニングを行いました。今回は前回取りあげなかったMemoryプロファイルを使ってみましょう。 Memoryプロファイルを用いて,ヒープ使用量のチューニングができます。しかし,ここではMemoryプロファイルを使用して,メモリーリークの原因を探ってみましょう。 使用するサンプルは前回と同じくマンデルブロ集合を描画するアプリケーションです。 前回,このアプリケーションのパフォーマンスチューニングを行い,処理時間の短縮化を図りました。その結果,筆者のPCで約38秒から,約3秒に高速化することができました。 しかし,もうちょっと高速化することもできそうです。前回示したチューニング後のプロファイル結果をもう一度図1に示します。 図1から,doInBa

    「Java SE 6完全攻略」管理ツールの集大成 - VisualVM その4
  • 「Java SE 6完全攻略」管理ツールの集大成 - VisualVM その3

    先月に引き続き,今月もJava SE 6u7から提供されることになったVisualVMについて紹介していきます。 前回はVisualVMのプロファイラーの使い方を解説しました。しかし,使い方だけでは,どのようにパフォーマンスチューニングを行えばいいのか,わかりにくかったかもしれません。 そこで,今回は実際にサンプルを使用してパフォーマンスチューニングをしてみましょう。 今回使用するサンプルは,前回と同じマンデルブロ集合を表示するアプリケーションです。 マンデルブロ集合とは以下の漸化式において,n→∞の極限の時にが無限大に発散しない複素数cの集合です。 よく見る,マンデルブロ集合の図はcを複素平面の点とし,無限大に発散するnによって色づけしたものです。マンデルブロ集合に属する点は黒で描画される部分になります。 複素平面をx-y平面と置き換えた場合,上記の式は以下のようになります。 ただし,

    「Java SE 6完全攻略」管理ツールの集大成 - VisualVM その3
    tezukam
    tezukam 2009/10/09
    VisualVMを使ったボトルネックの解析。
  • JavaOne 2009 レポート - どこへ行く,Java SE 7

    先週に引き続き,JavaOne 2009のレポートをお伝えします。今週は,Java SEに関する話題,特にJava SE 7を取りあげていきます。 先週お伝えしたように,初日のテクニカルジェネラルセッションにおいてMark Reinhold氏はJava SE 7の3つの特徴を紹介しました。 Modular Platform Multi-Lingual VM Productive Developers 記事でもこの3つの特徴について説明していきます。 二転三転するモジュラリティ 一昨年のJavaOne 2007において,Java SE 7にモジュラリティが取り入れられることが紹介されました。この時点では,モジュラリティとして以下の2つの側面から検討が進められていました。 デザインタイム デプロイメントタイム デザインタイムでは,アクセス修飾子のpublicがパブリックすぎる点が指摘され,こ

    JavaOne 2009 レポート - どこへ行く,Java SE 7
  • EJB3.0入門講座---目次:ITpro

    Enterprise JavaBeans(EJB)は,Javaのエンタープライズ向けコンポーネントの標準仕様です。ただ,EJBと聞くと「複雑で使いこなすのが大変な技術」という印象を持っている人が多いでしょう。確かに,従来のEJBはまさにそんな技術でした。利用するには煩雑な設定ファイルをいくつも書かなければならず,多くの規約を覚えていなければ簡単な作業すらままならない,それがEJBでした。 しかしこれからは違います。2006年初めにリリースの新バージョン「EJB 3.0」には,従来のEJBの複雑さを反面教師として大幅な改良が加えられています。「使いやすさ」を最重視し,EJBを利用する開発者の手間を大幅に削減したのです。このようにEJBが「使える技術」に生まれ変わる今こそ,EJBの勉強を始めるのに絶好のタイミングです。 そこで日経ソフトウエアでは,「EJB 3.0入門記」で有名なブログ「tae

    EJB3.0入門講座---目次:ITpro
  • Part4 Eclipse Monkeyで統合開発環境に機能を追加

    日経ソフトウエア2008年8月号にて掲載した「マクロで始める実用プログラミング」をお届けします。Partごとにアプリケーションを定め,プログラミング言語を用いて操作したり,機能を追加したりします。また,2009年4月号においても,Excel/VBAの徹底活用法を紹介しています。 ※ 記事は執筆時の情報に基づいており,現在では異なる場合があります。 「Eclipse Monkey」はJavaScriptなどの動的言語を使って,統合開発環境「Eclipse」での定型的な作業を自動化するプラグインです。稿執筆時点(2008年5月中旬)の最新バージョンは1.0ですが,これは「Incubation Project(培養中のプロジェクト)」という位置付けで,正式版ではありません。ちなみに,7月25日にはバージョン1.1が登場する予定です*1。 Eclipse Monkeyはそれぞれの言語に対応するプ

    Part4 Eclipse Monkeyで統合開発環境に機能を追加
  • Java技術最前線「JMXでソフトの健康をがっちり管理」第1回 ソフトウエアの管理してますか?

    年末から新年にかけては,忘年会,新年会など何かとべたり飲んだりする機会が多いものです。そうすると気になるのが,体重の増加。久しぶりに体重計にのって驚いたなんて人も多いと思います。 それに今月は甘いものをべる機会も増えるのです。 この時期,お菓子業界はかき入れ時なので,いろいろな新製品やらプロモーションなどに力が入っているはずです。 筆者はお菓子に目がないので,ピエールマルコリーニだ,ジャン=ポール・エヴァンだ,ピエール・エルメだ,テオブロマだと大騒ぎして買いに走っています。というのも,新発売や季節限定商品などがあるからですね。 べる時は楽しいのですが,問題はやはりべた後。 簡単にいえば体重増加に戦々恐々としているわけです。まぁ,自業自得なのですが。 やはり,日頃から健康の管理をちゃんとしていなくてはいけないなぁ,とこういうときだけ感じています。 健康管理ももちろん大事なのですが,そ

    Java技術最前線「JMXでソフトの健康をがっちり管理」第1回 ソフトウエアの管理してますか?
  • 1