タグ

java8とJava8に関するy-kobayashiのブックマーク (56)

  • Java SE 再入門

    Apache Kafka Meetup Japan #3 https://kafka-apache-jp.connpass.com/event/58619/ 発表資料

    Java SE 再入門
  • Javaで1から10まで書いた話(sanitized)

    PPLサマースクール2016「商用Java処理系の研究開発」のパート2です. http://ppl.jssst.or.jp/index.php?ss2016 Java言語処理系の実装について詳説する.まずJava仮想マシンの概要について述べ,その主要な構成要素として,クラス管理とインタープリタ,ヒープ管理とガベージコレクション,スレッド管理と同期機構,JITコンパイラとの連携,などについて説明する.性能改善のために行った各種手法についても触れる. 他のパート 1 Javaの登場と発展 http://www.slideshare.net/Tamiya_Onodera/java-66081108 2 Java仮想マシンの実装技術 http://www.slideshare.net/KiyokuniKawachiya/java-66003903 3 Java Just-In-Timeコンパイラの

    Javaで1から10まで書いた話(sanitized)
  • LL から Java に移行した人がはまりがちなこと - tokuhirom's blog

    こんにちは。Java 初心者です。 Java 初心者、得に LL から Java に来た人にありがちな問題について社内向けに書いたものをオープンアンドシェアさせていただきます。 前提として、我々は Java 8 でガンガン攻めているということをご承知おきください。 また、自分がこの数ヶ月で「うわー。こうしとくべきだったのかー」と気づいたやつをドヤ顔で語っているということにもご注意ください。 【追記】 対象は中規模 B2C の場合です(中規模というのは facebook より小さいという程度の意味です) 例外を握りつぶさないようにしよう Eclipse が生成する以下のようなコードをそのまま残しているケース。 これは言うまでもなく良くないですね。デバッグが困難になります。 try { } catch (IOException e) { e.printStackTrace(); } Perl

    y-kobayashi
    y-kobayashi 2014/10/01
    “社内の hipchat に Java っていう名前のチャットルームがあるので、入って聞いたらい
  • Java8のHotSpotVMからPermanent領域が消えた理由とその影響 | ギークを目指して

    今回も前回の記事につづき、Java8による変更点で未だあまり紹介されていないポイントを記事にしようと思う。 今回はJava8のHotSpotVMの話。Java8ではJEP122が取り込まれ、VMのメモリモデルが変更された。JEP122のタイトル「Remove the Permanent Generation」から想像できるとおり、Java8のHotSpotVMからは従来のPermanent領域が無くなった。 なぜ、こういった変更が行われたのだろうか?また、元々Permanent領域に格納されていた情報は何処にいってしまったのか?JVM付属のツールにどういった影響があるのか? 今回の記事ではこの点をまとめていこうと思う。 なお、HotSpotVMのメモリモデルについて詳しくない方は、先にこちらの項番(「補足 – HotSpotVMのメモリ構造概説)を読んでいただくとスムーズに読み進められるだ

    Java8のHotSpotVMからPermanent領域が消えた理由とその影響 | ギークを目指して
  • 「Javaの鉱脈」連載開始 | さにあらず

    WEB+DB PRESS の Vol.81 から JVM を中心とした連載を始めましたので是非買って下さい。 2014/6/24 発売です。書店には既に並んでいるかと思います。 これはアマゾンのアフィリエイトリンクですので、踏んだ直後に冷蔵庫等の大型家電を購入して頂けると僕が喜びます。 電子書籍版もありますので物理的な媒体に興味がない方は PDF を買って下さい。 WEB+DB PRESS Vol.81@Gihyo Digital Publishing初回の内容はラムダ式 + RxJava#今回の内容としては Java8 のラムダ式に関する簡単な説明から、ラムダ式を利用してRxJavaを使うとこんなに便利という話を書きました。 記事内で Stream API に関して説明しなかった最大の理由はラムダ式と Stream API に関する適切で妥当な説明については桜庭さんの記事を読めば良いと考

    「Javaの鉱脈」連載開始 | さにあらず
  • 第六回渋谷Java Java8のJVM監視を考える

    9/14にリリースされたばかりの新LTS版Java 17、ここ3年間のJavaの変化を知ろう!(Open Source Conference 2021 O...NTT DATA Technology & Innovation

    第六回渋谷Java Java8のJVM監視を考える
  • https://www.oracle.com/webfolder/s/delivery_production/docs/FY14h1/doc6/C1-JavaDay-304328.pdf

  • Date and Time API 徹底攻略(2) - そもそも「時」とは何か? - Programming Studio

    Java SE 8 が日時間の 3 月 19 日 午前 4 時頃にリリースされました。3 月 18 日リリースと聞いて JDK ダウンロードページが更新されるのを待機していたけれども、いつまで経っても更新されず、翌日見てみたら更新されていた、という経験をされた方も少なくないのではないでしょうか。今回は Java SE 8 のリリースがなぜ 3 月 18 日でなく 3 月 19 日になってしまったのか?という謎解きも含めて、「時」というものを振り返ってみようと思います。 1. 「時」の基単位は「秒」 現在、「時」の基単位は「秒」と定められています。「秒」は 7 つある SI 基単位 (これ以上分解できない単位のこと) の 1 つであり、SI 単位系においては非常に重要な存在です。 SI 基単位は、m (メートル; 長さ)、kg (キログラム; 質量)、s (秒; 時刻・時間)、A

    Date and Time API 徹底攻略(2) - そもそも「時」とは何か? - Programming Studio
  • Java 8 ローンチ Q&A

    Java 8は,長年に渡って最も待望されていた,プログラム言語のアップデートのひとつだ。今回のリリースでは日付APIやストリームAPI,ラムダ式といった新機能が導入される一方で,PermGenが廃止されるなど,総合的に見て望ましい方向の改良が行われている。我々はリリースの詳細を知るため,Java Platformグループでソフトウェア開発を担当する,Oracle VPのGeorges Saab氏に話を聞いた。 InfoQ: ラムダプロジェクトの経緯に詳しくない読者のために,今回導入される実装がどのようなものか,簡単に説明して頂けますか? 言語とVMとライブラリがすべて協調して関与するような改良は,今回が初めてではないかと思うのですが。 過去のリリースで実現された言語機能のほとんどは,その3つの領域のいずれかひとつだけに影響するものでした。あるいはメジャーリリースを機会として,それぞれの領域

    Java 8 ローンチ Q&A
  • Java8からはHashMapの性能のためにComparableを実装しておいた方がいい - interprism's blog

    こんにちは、andoです。 ついにJava8がリリースされたのでさっそくインストールしてみました。 Java8になってラムダ式を始め、多くの機能が追加されたのですが、既存機能についても性能改善が行われています。 人気がありそうな新機能の紹介は他の人にお任せして、今回はHashMapの変更点について確認したいと思います。 はたして既存のプログラムはJava8で実行するだけで、その恩恵を享受できるのでしょうか。 java.util.HashMap HashMapといえば使用頻度1、2を争うコレクションクラスでデータの検索、追加がO(1)で行え、 辞書的に使える事から簡易的なDTOやキャッシュ、データベースのレコード構造、さらにはListですむところでさえ数値をキーにして使う兵もいるというくらい良くも悪くも色々使えます。 それが速くなるのであれば、既存のプログラムも速くなるはず、ということでさっ

    Java8からはHashMapの性能のためにComparableを実装しておいた方がいい - interprism's blog
  • 知っといてムダにならない、Java SE 8の肝となるラムダ式の基本文法

    ついにJava SE 8、つまりJDK 8が正式リリースとなりました(日時間3月19日、早朝)。連載「Java 8はラムダ式でここまで変わる」では、今までJavaの経験はあっても「ラムダ式は、まだ知らない」という人を対象にラムダ式や、それに関連するJava 8の新しいAPIについて解説していきますので、正式リリースされたJava SE 8を使いこなせるように、ぜひご愛読ください。 前回の「初心者のためのJavaラムダ式入門とJDKのインストール、IDEの環境構築」ではJavaでのラムダ式の概要と利点、必要性、JDK 8のセットアップ、NetBeans、IntelliJ IDEA、Eclipseのe(fx)clipseプラグインの環境構築について解説しました。実行できる準備ができたところで今回は、ラムダ式の読み書きができるように基的な文法を見ていきましょう。 ラムダ式の基文法の概要

    知っといてムダにならない、Java SE 8の肝となるラムダ式の基本文法
  • 社内Java8勉強会 ラムダ式とストリームAPI

    先週Java8がリリースされましたが、さっそく社内での開発でも使うことになりそうです。 というわけで、Java8の目玉機能であるラムダ式とストリームAPIについて、社内勉強会を開催しました。 普段の社内勉強会よりも参加者数が多くて、みんなの関心の高さが伺えますね。

  • 大刷新リリース Java 8の新機能

    2014年3月18日(米国時間)、ラムダを筆頭に数多くの新機能が含まれるJava 8がいよいよリリースされる。 ここ数年、JavaOracleのSun買収による混乱、当初Java 7で実装されるはずだった多くの機能の先送り、さらにはJava 8のリリースの遅延など様々な要因によって強い停滞感があり、それが関数型言語の機能を取り入れたScalaなどJavaの代替となるJVM言語の台頭にも繋がった。 そうしたJavaプログラマの溜まりに溜まったモヤモヤを払拭するアップデートとして期待されているのが今回のJava 8だ。前述の通りラムダの導入による新たな構文からStream APIやTime APIといったライブラリの追加まで、非常に多くの新機能を含んでいる。 稿ではそのJava 8の主要な新機能についてサンプルコードを交えて紹介していく。Java 8の新機能を押さえるための参考になれば幸い

    大刷新リリース Java 8の新機能
  • 徹底解説!Project Lambdaのすべて リターンズ[祝Java8Launch #jjug]

    Java8Launchで発表させていただいた時の資料です. 最新のものはこちらです. http://www.slideshare.net/bitter_fox/ss-35882498Read less

    徹底解説!Project Lambdaのすべて リターンズ[祝Java8Launch #jjug]
  • 【祝】Java SE 8 正式リリース

    【祝】Java SE 8 正式リリース 2014年3月21日 at 2:27 午後 2件のコメント 2014 年 3 月 18 日正午 (日時間 3 月 19 日:午前 4時) 、予定通り Java の開発者待望のJava SE 8 が正式にリリースされました。当日は、多くのメディアでも取り上げられた他、Twitter 上でも非常に多くのお祝いメッセージや期待するメッセージを見受けました。 Publickey :[速報]Java 8が正式公開。ラムダ式、新しい日時APIJavaFX8など。NetBeans 8.0も登場 日経 IT Pro : 2年8カ月ぶりの Javaの新版「Java SE 8」が公開 インターネットコム:Java 8 が一般公開、ラムダ式を採用 マイナビニュース:Java 8が正式リリース – ラムダ式採用、新型導入など大幅強化 インプレス:Oracle、約3年 ぶ

    【祝】Java SE 8 正式リリース
  • Java8 で StringBuilder/StringBuffer クラスがリファクタリングされていました。 - 地平線に行く

    ついに Java SE 8 がリリースされました! そこで、早速ダウンロードして、Java 8 のソースコード(src.zip)を Java 7と比較してみたところ、公表はされていないのですが、ちょこちょことリファクタリングされていることがわかりました。 そこで、そのうち StringBuilder/StringBuffer クラスについて調べてみました。 引数に null が渡されたときの処理 append メソッドの仕様で、「引数が null の場合、"null" という4文字が追加される」というのがあります。 この仕様について、Java 7までは "null" という文字列を追加するという実装がされていました。 // Java 7 Update 51 (AbstractStringBuilder クラス 422行目〜) public AbstractStringBuilder app

    Java8 で StringBuilder/StringBuffer クラスがリファクタリングされていました。 - 地平線に行く
  • あなたのJavaコードをスッキリさせる、地味に便利な新API 10選(前編) - Taste of Tech Topics

    こんにちは! アキバです。 ...T3ブログは初登場かもしれません。ハジメマシテ。 以後お見知りおきを。 いよいよ、2014年3月、Java8が正式公開されますね。 なんと言っても、Java8の注目機能はラムダ式ですので、ラムダ式や型推論に関する記事は多いです。 世の中で「Java8」と検索すると、皆さんいろいろと記事を書かれているので、おおよその事はこれで分かっちゃうような気がします。 が、 実は地味に便利なAPIが追加されていたりすることを最近知りました。 これはあまり触れられていないぞ、と。 というわけで、このエントリでは、あまり日語で情報の無い、しかし地味に便利なAPIに実際に触れてみます。 大事なところなので2回強調して書いてみました。 今回は、前編として4つ紹介します。 ※APIの紹介と言いつつ、コードにはラムダ式を使ったコードが普通に出てるので、ご了承ください。 (むしろ、

    あなたのJavaコードをスッキリさせる、地味に便利な新API 10選(前編) - Taste of Tech Topics
  • 初心者のためのJavaラムダ式入門とJDKのインストール、IDEの環境構築

    2014年3月18日に一般公開予定のJava SE 8へのバージョンアップでは、新たな表記法として「ラムダ式」が追加されます。このラムダ式を使うことによって効果を発揮する数々のAPIも追加されることになり、今回のバージョンアップはJavaを使う人にとって無視できないバージョンアップとなります。 しかしラムダ式は今までJavaプログラミングをやってきた人でも前提知識なしにソースだけを見て理解するのは難しい内容となっています。この連載では、今までJavaの経験はあっても「ラムダ式は、まだ知らない」という人を対象にラムダ式について解説していきます。 JDK 8は2013年9月10日に開発者向けプレビュー版が公開され、2014年2月18日現在、Early Access版がリリースされています。 コラム「ややこしいJavaのバージョン番号」 Javaのバージョン番号について、ところどころで1.8のよ

    初心者のためのJavaラムダ式入門とJDKのインストール、IDEの環境構築
  • ラムダ禁止について本気出して考えてみた - 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
  • Java8でmixinをがんばってみる - yojikのlog

    Java8からinterfaeのデフォルト実装が使えるようになります。インタフェースは複数implemntsできます。したがって複数のdefault実装付インタフェースを組み合わせてクラスを構成することができそうです。mixiinによる実装の再利用です。(この場合implementと呼んでよいのか疑問ですが)。うまく使えばScalaのトレイトみたいなことが出来るはず。 それでは実例を。Userオブジェクトを検索して、その人にメールを送るという架空のアプリを考えます。 まずはUserオブジェクト。 いちいち複数ファイルを書くのは面倒なので、今回はすべてstaticなネストクラス(とネストインタフェース)として定義します。 public class MyTest { public static class User { String id; User(String id) {this.id =

    Java8でmixinをがんばってみる - yojikのlog