Performance tuning and troubleshooting on Java applications on the air.
Blog by msyk Talk about computer, network and how we should work. もちろん、月日を経ないと結論は出ませんが、今時点では今後普及すると考えます。その理由を考えてみました。 まず、「開発言語の大きな変更」というのは、Mac OSからMac OS Xへの移行時にありました。その成り行きは非常に重要です。Mac OSは、CあるいはC++が主要言語だったと言えますが、Mac OS XはOPENSTEPからの名残でObjective-Cが開発言語になることが、当初NeXTとAppleが合流したときの事実でした。しかし、既存のMac OS開発者からは支持は得られず、AppleはMac OS Xの正式リリースが近づく頃にJavaに対応しました。1999〜2000年頃は、Javaが登場して4年程度の頃で、エンタープライズ分野で使われ始めるなど
なぜScalaがバカ向けなのか。 ぼくの経験を元に、バカ向け言語と非バカ向け言語を比較しながら見て行きましょう 非バカ向け言語 C プログラマーとして最初に携わったのがC言語です。 それは以下のようなものでした。 何十ものファイルにまたがるグローバル変数 緻密な制御が必要であるにも関わらず、無秩序に取得/開放が行われているメモリー管理 このような複雑な構造を、ぼくのようなポケコン並の処理能力しか持たないバカに把握可能でしょうか。もちろん不可能です そこで、次のようなコーディングを心がけました。 グローバル変数を使わず、関数に引数を定義して渡す メモリーの取得/解放を同一ファイル内に限定する これで、メモリーや変数参照の影響範囲を限定し、ぼくのようなバカでも理解できるようになります。 ですが、わざわざそんな事をやらなくても全てを理解できるエリート様達は、 「なぜ引数で渡すんだ。グローバル変数
About Doppio is a project to get Java running in the browser without any plug-ins. Right now it comprises a fairly complete VM and an implementation of the javap bytecode disassembler. (Doppio is also the Italian word for 'double', and is another name for a double espresso.) Doppio started out as the mid-term project for a Graduate Systems Seminar. It has since taken on a life of its own, and is c
g1gcGCLoverのみなさん、お待たせしました。 GC本のスピンオフとなる新著、『徹底解剖「G1GC」 アルゴリズム編』が発売中です! 達人出版会様の以下のページからご購入下さい。 なんと600円です!!! もうすぐにでもポチっちゃってください!!!!! 徹底解剖「G1GC」 アルゴリズム編 - 達人出版会 どういう内容なの?まえがきをみるとよくわかります。 今回はOpenJDK7(いわゆるJava7)に新しく実装された「G1GC(Garbage First Garbage Collection)」というGCの謎を解明していきます。 G1GCの大きな謎として「GC停止時間を予測できる」というのがあります。本書 ではその謎の回答を何十ページもかけて解説しています。 G1GCについて書かれた資料として、Detlefsらの英語の論文(Detlefs04)があ ります。 ところが、これは謎
Google App Engineに最適化したJavaフレームワーク「Slim3」登場。作者のひがやすをさんにインタビュー Slim3は、Google App Engineで複数行のトランザクション操作を可能にし、標準で用意されているAPIよりも高速な動作を実現するなどの特徴があります。Slim3を開発したのは、オープンソースのJavaフレームワークとして知られるSeasarなどを開発してきたひがやすを氏です。 正式リリースにあたり、Slim3の特徴、開発に苦労した点、今後の展開などについて、ひが氏自身に説明してもらうべくインタビューをしました(インタビューはメールで質問し、返答いただくという方法で行いました)。 Slim3の設計哲学は、“Less is more”を実現すること ―― Slim3とは何でしょうか? Javaにそれほど詳しくないというプログラマにも説明するとしたらどう説明す
前置き Google App Engine(以下GAE)では、公式には現在のところPythonとJavaしかサポートされていませんが、JRubyという素晴らしいプロダクトのおかげでJava VM上でRubyスクリプトを実行できるため、考えようによってはRubyも既にサポート対象になっていると言えなくもありません。 実際にググってみても既に結構な量の情報が存在するのですが、どうもJRuby on Railsを対象とした情報が多く、素のRubyアプリケーションを動かすための情報があまり無いように感じました。 Railsももちろん優れたフレームワークなのですが、ちょっとしたアプリケーションを作るのには少々重過ぎますよね…。 ということで、非Railsな、もっとシンプルなRubyアプリをGAE上で動かすための手順を調べてみました。 ポイント 今回は以下の前提で作業を進めていきます。 Railsなど
NanoGong 5.0 Free and open source! Moodle 1 and Moodle 2 integration! Important: Details of the current situation of using the NanoGong applet inside the Chrome browser » What is NanoGong? NanoGong is an applet that can be used by someone to record, playback and save their voice, in a web page. When the recording is played back the user can speed up or slow down the sound without changing it. The
Java Programming Language Googleの20%プロジェクトからJava向けの新しい技術「cofoja (Contracts for Java)」が公開された。既存の実装に大きく手を加えることなく、デバッグをより簡単にしてくれる効果が期待できる。バグは些細なコードが起こすものだったりするが、それを追跡して発見するのは時に困難を極める。これは問題が発生した箇所と、実際にバグがある箇所が大きく離れていることが理由になっていることもある。問題発生箇所とバグ発生箇所を近くにまとめることができれば、それだけバグ発見も取り組みやすくなる。 cofojaはこれを簡単に実現するための技術。インタフェースに制約表現を追加可能にするところがポイントとなっており、クラスの実装に手を加えなくてもインタフェースに制約表記を追加することで実行時にチェックできるようになる。ブログに掲載されている
The document discusses various technologies and libraries used in Android development including XML, JSON, XSLT, and sun.misc packages. It notes issues with some of these in older Android versions and potential workarounds or alternatives. Specific topics covered include XML parsing, JSON parsing inaccuracies, XSLT support, and sun.misc class availability on Android.Read less
After about a year of silence, Clementine gem, https://github.com/yokolet/clementine, has been updated. The remarkable feature of this gem is to make ClojureScript available on Rails asset pipeline. Like CoffeeScript, ClojureScript code is compiled dynamically with this gem. Besides, the gem works on both CRuby and JRuby. I've blogged before, but those blog posts got really old. So, I'm going to u
ダックタイピングという考え方は間違ってると思いませんか? http://ja.wikipedia.org/wiki/%E3%83%80%E3%83%83%E3%82%AF%E3%83%BB%E3%82%BF%E3%82%A4%E3%83%94%E3%83%B3%E3%82%B0 今のオブジェクト指向言語はダックタイピングが当たり前、Javaのinterfaceは古い、 という意見をネット上で見かけたのですが、正しいと思いますでしょうか。 かつてC言語とPerlしか知らなかった私は、Javaのinterfaceを知って衝撃を受け、 そこからポリモーフィズムなどのオブジェクト指向設計を意識するようになりました。 クラス型が違えど同じメソッドを持っていれば同様に処理する、というダックタイピングのメリットは私には理解できません。 異なるクラスで、たまたま名前とパラメータが同じでも、中身の動作が違う
「Java入門ブックガイド(入門編)よりよき入門書と出会うために」を読んで。 第一印象として、よりよきJava入門ブックガイドに出会う必要があるなということ。 コマンドラインでは慣れ親しめない サブタイトルに「慣れ親しむことが上達の秘訣」とあるけども、コマンドラインで慣れ親しむのは難しいと思います。 「慣れ親しむことが上達の秘訣」が正しいのであれば、IDEで慣れ親しんだほうが上達するのではないでしょうか? 現実問題として、書籍を買って勉強する人は強制されて勉強するわけではないです。自分の時間をやりくりして入門書を読んでいます。 そして、まだプログラムの面白さを知りません。 コマンドラインでコンパイルエラーが出たとき、じっくりとそのエラーを読み解くのではなく、そこでくじけてやめる可能性が高いと思われます。 それよりは、IDEでエラーを入力段階で修正しつつ進むほうがいいと思います。 javac
9月に開催されるJavaのカンファレンスJavaZone 2010用に作られた「レディー・ジャバ」のミュージックビデオです。良くできてる! レディー・ガガの変なファッションを、キーボードやCDなどを散りばめた服装でうまくもじってると思いましたがどうでしょう。 Sunが無くなったり、買収したOracleはJavaとAndroidを巡ってGoogleを訴えたり、いろいろとたいへんなJava界隈ですが。ちゃんとオラクルのネタも入ってます。 後ろはハードディスクをイメージしたので有名なオラクル本社ビルですね。 JavaZoneといえば、ちょっと前に出ていた、Java4ever(Javaフォーエバー)というJava映画の予告編(本編は存在しません!)も面白いですよ。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く