タグ

Javaに関するntaooのブックマーク (92)

  • 弱い参照 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "弱い参照" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2011年10月) 弱い参照(英: weak reference、ウィークリファレンス)あるいは弱参照とは、参照先のオブジェクトをガベージコレクタから守ることのできない参照のことである。弱い参照からのみによって参照されるオブジェクトは到達不可能とみなされ、従っていつでも解放することができる。弱い参照は、通常の参照(強い参照、強参照)による諸問題を解決するために用いられる。PythonJavaをはじめとするガベージコレクタを実装したオブジェクト指向プログラミング言語の多くは、弱い参

  • インタビュー: Cay Horstmann氏が語る今日のJava

    それにOracleは,疑問の余地のある決定を行うときに,コミュニティとの議論をまったくしないのです。内部の関係者に話をしても,"今は手が離せない,何も言うことはない" としか答えてくれません。Sunの頃は,そんなことはありませんでした。彼らはいつでも,もっとずっとオープンでした。何かうまくいかないことがあったときでも,もっとよい仕事をしなければいけない,と快く認めてくれていたのです。でも多分,それがOracle文化なのでしょうね。 InfoQ: つまりOracleは,解決策が見つかるまで問題を否定する,といった感じなのでしょうか。 Horstmann: 問題に対処するには,それがよい方法なのでしょうね。迷惑な話です。それにも増して,多くの人々の反感を買っているのが,Googleに対する訴訟の件です。 InfoQ: 当にそうですね。Androidはある意味で,Javaプラットフォームの代

    インタビュー: Cay Horstmann氏が語る今日のJava
    ntaoo
    ntaoo 2013/07/01
    色々面白い
  • from old Java to modern Java

    16. from old Java to modern Java ∼ 職業プログラマに聞いて欲しいJava再入門 Acroquest Technology株式会社 JJUG / 関西Javaエンジニアの会 谷 心 ( @cero_t ) 19. private List m_list = null; private int process_file(String str_file_name) { String str_line; List list_lines = new ArrayList(); int i_result = read_file(str_file_name, list_lines); if (i_result == 0) { List list_record = new ArrayList(); for (int i = 0; i < list_lines.size(); i+

    from old Java to modern Java
    ntaoo
    ntaoo 2013/06/26
  • WebSocket、組み込み、並列処理で進化するJava、そして最強のIDEはどれだ?

    WebSocket、組み込み、並列処理で進化するJava、そして最強のIDEはどれだ?:Java Day Tokyo 2013まとめレポート(2)(1/5 ページ) Java EEにおけるWebSocket、並列処理の過去・現在・未来、Raspberry Piとの連携、Eclipse、NetBeans、IntelliJ IDEAの中から最強のIDEを決める座談会、ミニ四駆の発表もあったLT大会などの模様をお届け。 日オラクルは5月14日、「Java Day Tokyo 2013」を開催した。Java EEの最新バージョンリリースを間近に控える中、JavaFXやRaspberry Pi、さらには来年リリース予定のJava SE 8など内容は多岐に渡った。 Java Day Tokyoは、その名の通りJavaが中心となったカンファレンス。Java開発者向けのイベントとして伝統ある「JavaO

    WebSocket、組み込み、並列処理で進化するJava、そして最強のIDEはどれだ?
  • エルビス演算子(Elvis operator) - yohhoyの日記

    プログラミング言語Javaに対して、Project Coinで提案されていた エルビス演算子(Elvis operator)?:についてメモ*1。Groovy 1.5では同演算子が採用されており、GroovyからJavaへのフィードバック提案となっている。 二項演算子の一種。左オペランドが非nullならば左オペランドの値を、左オペランドがnullならば右オペランドを評価して返す(短絡評価)。機能的にはC#のnull合体演算子(null-coalescing operator)??や、gccでのGNU C拡張 “条件演算子 ?: で第2項を省略” と等価。 FEATURE SUMMARY: The ?: binary "Elvis" operator results in the value of the left-hand-side if it is not null, avoiding

    エルビス演算子(Elvis operator) - yohhoyの日記
    ntaoo
    ntaoo 2013/05/13
  • Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp
    ntaoo
    ntaoo 2013/05/12
  • Javaのパフォーマンスについての9つの誤信

    JVMはプロファイリングを利用してコードの最適化を行います。対象は頻繁に利用されるコードパスのみですが,徹底的に行うことで大きな効果を上げています。JITコンパイルされたコードに関しては,現在では多くの場面において (その割合も増えつつあります) C++の実行速度を凌駕しています。 このような事実にも関わらずJavaが今でも低速なプラットフォームとして認識されているのは,おそらくは初期バージョンのJavaプラットフォームでの経験が,歴史的な負のバイアスとして働いているためでしょう。 早まった結論を出す前に,客観的な見地に立って,最新のパフォーマンス結果を評価するようにお勧めします。 2. Java コードの1行にはそれ自体で意味がある 次の短いコード行を考えてみてください: MyObject obj = new MyObject(); Java開発者ならば誰でも分かるように,このコードはオ

    Javaのパフォーマンスについての9つの誤信
    ntaoo
    ntaoo 2013/05/09
  • Java 8のリリースが延期,いまだ続くセキュリティ問題のために2014年まで

    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 8のリリースが延期,いまだ続くセキュリティ問題のために2014年まで
    ntaoo
    ntaoo 2013/05/08
  • Java8のStreamの目的と書きやすさや可読性、並行処理の効果について - きしだのHatena

    さて、前回Java8のStreamの使い方をざっと見てみたのですけど、はてなブックマークのコメントで「Javaが使われている領域でこんな言語拡張は必要か」「可読性が損なわれていて単なる自己満足ではないか」のようなコメントがついていました。 実際どうなのか考えてみます。 Java8のStreamの目的 では、いまJavaが使われている領域を考えてみましょう。 Javaがいまよく使われているのは、クライアントサイドではなくサーバーサイドです。とくに、直接アクセスをうけつけるサーバーではなく、分散データ処理のためのHadoopやHBase、全文検索エンジンのLuceneなど、バックエンド処理を行う製品のシェアが大きいように見えます。 TwitterGoogleでも、Javaで書かれたバックエンドが動いているようです。Facebookも分析系ではJavaを使っているようです。 大手サービスでバッ

    Java8のStreamの目的と書きやすさや可読性、並行処理の効果について - きしだのHatena
    ntaoo
    ntaoo 2013/05/06
  • Java8のStreamを使いこなす - きしだのHatena

    さて、Java8で関数型っぽいことをやって遊んでみたわけですが、実際はそんな書き方しませんよね。 Java8で実際に使うのは、Streamです。 ということで、Streamの使い方をひととおり見てみます。 ※5/17 仕様変更があったので、修正しました 基 まずは、Iterableインタフェースに用意されたforEachメソッドを見てみましょう。 List<String> names = Arrays.asList("hoge hoge", "foo bar", "naoki", "kishida"); names.forEach(s -> System.out.println(s)); これで次のように表示されます。 hoge hoge foo bar naoki kishida いままでの拡張forだと次のように書いてました List<String> names = Arrays.a

    Java8のStreamを使いこなす - きしだのHatena
    ntaoo
    ntaoo 2013/05/06
  • Java Optional Objects - DZone

    In this post I present several examples of the new Optional objects in Java 8 and I make comparisons with similar approaches in other programming languages, particularly the functional programming language SML and  the JVM-based programming language Ceylon, this latter currently under development by Red Hat. I think it is important to highlight that the introduction of optional objects has been a

    Java Optional Objects - DZone
  • 第1回 JVMはどのようにメモリ空間を利用するのか | gihyo.jp

    あのWebサービスもJVMを利用している 「Javaは大規模なエンタープライズシステムにしか使われない」 それが常識だと思っていませんか? たしかに、これまでJava Virtual Machine(JVM)は、他の言語を実行すると遅く、Javaのプログラムを実行する環境にすぎないものでした。ところが、Java 7から実装されたInvokeDynamicにより、JVM上で、RubyPHPなどさまざまなコンピュータ言語で記述されたプログラムをより高速に実行できるようになりました。 これにより、今までエンタープライズでJava言語で記述されたプログラムを実行するだけの環境であったJVMが、汎用的な実行環境になったと言えます。また、これまでJavaの実行環境として使用されていたノウハウが、他の言語で記述されたプログラムを実行する際にも利用できます。 最近では、TwitterがJVMをアプリケー

    第1回 JVMはどのようにメモリ空間を利用するのか | gihyo.jp
    ntaoo
    ntaoo 2013/01/16