タグ

Javaに関するunaristのブックマーク (12)

  • JVMオプション | Java | 技術メモ | TOYATAKU WEB

    GCの種類と方式について [2013-08-23] GCとメモリ情報の出力 [2013-07-10] HotSpot関連 [2013-01-31] チューニング(性能改善)関連 [2016-07-14] new GC overhead limit exceeded [2013-01-31] -XXオプションについて、有効は「+」、無効は「-」と指定する。 自分がどのVMで起動しているか確認する場合は「java -version」コマンド。 Java VMのデフォルト値はJava HotSpot VM Optionsを参考に。 また、JVM は「クライアントVM」か「サーバVM」かを実行時に指定できる。 上記は指定しなかった場合、OSによってデフォルト値が異なるので、デフォルト値がどうなっているかは以下を参照する。 ・サーバークラスマシンの検出 GCの種類と方式について JVMでは、「Sca

    unarist
    unarist 2016/04/03
  • なぜJavaのラムダ式の型を調べたのか(C#とJavaの違い) - Qiita

    説明 なぜ私がJava8のラムダ式の型をわざわざ調べることになったのか説明する。 C#ではラムダ式の型としてFuncとActionが用意されている。 一方Javaではさまざまな型が用意されており、それらの定義がまた様々なパッケージに分散している。このため必要な型を探すのが難しい。 例えば「intとintを受け取りintを返すような関数」を引数に取る関数reduceを定義したくなったとする。 この時C#では、Func<int, int, int>を型として利用すればよいと容易に判断がつくが、JavaでIntBinaryOperatorを使えばよいと判断するのはJava8に慣れたプログラマでないと難しい。 そんな理由で、わざわざJava8のラムダ式の型を調べたり、それらの命名規則を探ってみたりしたのである。 おまけ 例示のため、JavaとC#でreduce関数を利用したプログラムを記述した。

    なぜJavaのラムダ式の型を調べたのか(C#とJavaの違い) - Qiita
    unarist
    unarist 2014/12/05
    .NETにもFunc/Actionじゃないデリゲートあるじゃんと思ったが、Javaのジェネリクスはプリミティブ型使えないからAction<int>とかできないのか・・・
  • Java8とC# - 平々毎々(アーカイブ)

    このエントリーは「C# Advent Calendar 2013」の17日目のエントリーです。 前日は id:ksasao さんの「GDI+ で描画&保存あれこれ - まちみのな@はてな」でした。 Java 8は2014年3月にリリースされる予定です。 どういう変更が含まれているのかは、Java 8のすべてにまとめられています。 また、きしださん(id:nowokay)のように、Java8に関する記事をたくさん書いている人もちらほらいます。 この記事では、InfoQの記事(および参照元の英語ブログ)を参考に、Java8の新機能をC#と比べてみたいと思います。 インターフェースの改善 インターフェースでstaticメソッドが定義できるようになった もともと、JavaのインターフェースはC#のインターフェースと違って、static finalなフィールドを持つことができました。 static

    Java8とC# - 平々毎々(アーカイブ)
  • ラムダ禁止について本気出して考えてみた - 9つのパターンで見るStream API - Taste of Tech Topics

    こんにちは @cero_t です。 今日のテーマは・・・ラピュタ禁止令! バルス! いや違う。ラムダ禁止令、です。 さて、なかなかの滑り出しですが、今日はただのラムダの紹介ではなく、禁止令に主眼を置いて語ります。 このエントリーは、Java Advent Calendar 2013の12/16分の投稿です。 http://www.adventar.org/calendars/145 前日は @sugarlife さんの JDK 8 新機能ダイジェスト (JDK 8 Features) です。 翌日は @setoazusa さんです。 ラムダ禁止令はあり得るのか? 勉強会やその懇親会などで、たびたび「ラムダ禁止令が出るのではないか」が話題に上ることがあります。 「そりゃ禁止する組織もあるでしょうね」というのがお決まりの答えなのですが、ただそれに従うだけでは面白くありませんし、要素技術の発展も

    ラムダ禁止について本気出して考えてみた - 9つのパターンで見るStream API - Taste of Tech Topics
    unarist
    unarist 2013/12/17
    JavaのStreamAPIについて。LINQに置き換えて読んだ。
  • mrubyやKopiLuaにはなぜ文字連結用オペコードがあるの? ① (あるいはJavaの文字連結最適化について) - ほげほげにゃ

    前置き 最近色々ありましてmrubyやKopiLua(C#によるLua実装)のソースコードを読んだりしております。 ちょうどVM部分を読んでいたら、面白い部分を見つけました。 mrubyのバイトコードにOP_STRCAT(文字連結)っていうのがあるのに驚いてたけど, LuaVM読んでたらOP_CONCATとかあったし文字連結系のオペコード用意するのって普通なんです…?— どみとり (@domitry) 2013, 12月 5 これまでx86のアセンブラしか読んだことがなかったので特殊かどうかよくわからない… そこでふとLL言語でない, 例えばJavaのVMはどうなってるんだろうなーと思い調べてみました。 昨日のお話、Javaのバイトコードを見てみたらstrcatやらconcatはなかった… キャストとかオブジェクト指向な要素(newとかclass method呼び出しとか)とかは含まれてた

    mrubyやKopiLuaにはなぜ文字連結用オペコードがあるの? ① (あるいはJavaの文字連結最適化について) - ほげほげにゃ
  • Java 8を関数型っぽく使うためのおまじない - きしだのHatena

    やあ、3月に延期になったとはいえ、Java 8リリースが具体化してきましたね。 もうこれで、Lambdaがはずれるとかいうことはなさそうです。 ところで、Java 8で関数型っぽいことができるようになってうれしいのですが、ちょっと記述が冗長です。ということで、短く書けるおまじない考えてみました。 Function型 さて、まずはJava 8で標準で入ったFunction型をみてみましょう。パッケージ名まで含めるとjava.util.funciton.Functionです。 こんな感じで使います。 Function<String, String> enclose = s -> "[" + s + "]"; Genericsでの型指定の最初が引数、あとが戻り値の型です。ここではStringをとってStringを返す関数としてencloseを定義しています。 これを呼び出そうとすると、こんな感じ

    Java 8を関数型っぽく使うためのおまじない - きしだのHatena
  • 再帰ジェネリクスのthisとTの互換性 - プログラマーの脳みそ

    再帰ジェネリクスを用いて以下のようなコードを書いたとする。 Hogeを継承した型を作った場合に具象型を得るgetThis()メソッドを使えるようにしたいわけだ。 public class Hoge<T extends Hoge<T>> { @SuppressWarnings("unchecked") public T getThis() { return (T) this; } } このHoge型のTに型をバインドするには継承を用いる。一部の方にはおなじみですね。 public class Piyo extends Hoge<Piyo> {} こうした場合、Piyo型にはなんの実装も行っていないが Piyo p = new Piyo(); Piyo t = piyo.getThis(); というように、スーパークラスの実装によりgetThis()からPiyo型をとることができる。 型の安全

    再帰ジェネリクスのthisとTの互換性 - プログラマーの脳みそ
    unarist
    unarist 2012/12/22
  • どうしてこうなった

    ほんと、どうしてこうなったかなぁ。 Oralceの対Google訴訟、プログラミングの将来を危うくしている 二分された世界 JVM と .NET、もろに競合なわけですが。少しレイヤーが違うとか、棲み分けできるポイントがあるならともかく、ほんとに2個あってもしょうがない状態。競争があるのはいいと思うものの、どうせ競争するなら最低ラインの仕様そろった中で性能改善とかで競って欲しく。 でも、後発の .NET だけが悪いわけでもないのは今の DalvikVM の状況を見ての通り(Oracle になってひどくなったわけでもなく、Sun の時代も大概)。このままだと仕様が違う第3の仮想マシン(VM)ができてしまってもおかしくない状況… 個人的な意見として、「もしもの話」で、一番よかっただろう道筋は、2000年前後の訴訟がなくて、Microsoft Java VM が生きている状態。.NET が生まれる

    どうしてこうなった
  • Javaと.NETの特許問題への短い紹介

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Javaと.NETの特許問題への短い紹介
  • 利用者クライアントソフトVer2 - 自治体衛星通信機構

    HOME>公的個人認証サービス>公的個人認証サービス利用者クライアントソフトの技術仕様について>利用者クライアントソフトVer2 最終更新日 2007/12/20 利用者クライアントソフトVer2 利用者クライアントソフトVer2の技術仕様書を以下に掲載します。 利用者クライアントソフト 機能概要説明書(849KB) API仕様書 1 カードAPライブラリ CryptoAPI編(300KB) API仕様書 2 カードAPライブラリ PKCS#11編(323KB) API仕様書 3 カードAPライブラリ Javaインターフェース編(185KB) JavaDoc JPKICryptJNI(HTML形式) API仕様書 4 個人認証APライブラリ C言語インターフェース編(430KB) API仕様書 5 個人認証APライブラリ Javaインターフェース編(184KB) Ja

    unarist
    unarist 2012/01/05
    公的個人認証サービス
  • コンストラクタでの例外はあり?なし?

    オスツ🍣 @alohakun 逆向きの型推論もできるようにして HogeClass hoge = NULL; hoge = new (...); とかできるようにすれば良さそうに思えるんだけど、何か問題あるのかしら。 http://d.hatena.ne.jp/yaneurao/20100929 2010-09-29 07:53:03 やねうらお @yaneuraoh @alohakun 「逆向きの型推論もできるようにして」は、最初に明示的に型を書かないといけなくて、var x = hoge.XXX(); のようにして複雑な型名を受け取るケースにおいて困るのです。 型名は絶対に明示的には書きたくないのです。 2010-09-29 08:10:49 オスツ🍣 @alohakun @yaneuraoh 次善の策(旧コードの互換性を保ちつつ C# の仕様を変更すること前提)のつもりで書きまし

    コンストラクタでの例外はあり?なし?
  • Quick Screen Share

    If you would like to screen share you must restart your browser and accept the Java applet. Hmmm... It's taking a while to load our Java applet. Are you sure you have java installed and enabled in this browser? Click here to make sure you have java.

    unarist
    unarist 2011/10/04
    簡単だなー。それにしてもJavaってそんなことまでできたんか。
  • 1