タグ

Javaに関するNagiseのブックマーク (462)

  • SSSSLIDE

    SSSSLIDE
  • Java: The Past and Present

    2014年11月30日, なごやかJava 第1回: Java 1.0 から Java 8 への20年をふりかえる

    Java: The Past and Present
    Nagise
    Nagise 2014/12/01
  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは、お名前.comで取得されています。 お名前.comのトップページへ Copyright © 2020 GMO Internet, Inc. All Rights Reserved.

    dfltweb1.onamae.com – このドメインはお名前.comで取得されています。
  • 「privateな変数にpublicなアクセサを定義する」? - ネットの海の片隅で

    きっかけ こんなツイートがRTで流れてきた。 Java技術者です、って求職してきた人にする質問の一問目は 「なぜフィールドはprivateにしてgetter/setterプロパティを書くべきなのだと思いますか?」 がいいのではないかと思い始めた。— ゆば大好き (@yuba) 2014, 9月 26 そのとき思ったこと 「変数をプライベートにして、それに対してアクセサを定義する」っていうのはちょっと違う気がする。— S.Osa (@osa522) 2014, 9月 26 「外部に公開するインターフェイスを決定して、そのために必要な変数をプライベートで保持する」っていう感じ。— S.Osa (@osa522) 2014, 9月 26 変数ありきなのではなく、インターフェイスありき。 インスタンスが持っている変数は実装の詳細であって、そのインスタンスのメソッドを呼び出す側からするとどうでも良い

    「privateな変数にpublicなアクセサを定義する」? - ネットの海の片隅で
    Nagise
    Nagise 2014/09/28
    getter/setterに関わる論点は複数あるし、時代や環境によって各論点の重み付けも変わるし最適解も変わるので、大真面目に議論すると結構大変。暇になったらまとめたくはあるなあ…(屍
  • Notes the Java SE

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    Notes the Java SE
    Nagise
    Nagise 2014/08/25
    よいまとめ
  • Oracle Timeline

    Loading...

    Nagise
    Nagise 2014/05/03
  • Doma 2へようこそ — Doma ドキュメント

    Doma 2へようこそ Doma 2はJava 8+向けのデータベースアクセスフレームワークです。Domaにはさまざまな強みがあります。 コンパイル時にアノテーションプロセッサーを使用して、ソースコードを検証および生成します。 型安全なCriteria APIを提供します。 Kotlinをサポートします "two-way SQL"と呼ばれるSQLテンプレートをサポートします。 他のライブラリに依存しません。 このドキュメントは、以下のセクションで構成されています。 ユーザー向けドキュメンテーション Domaについて リンク集 私たちのドキュメントの改善とローカライズをお手伝いください。 ドキュメントに関する英語版および一般的な問題については、 GitHub リポジトリ に issue や pull request を追加してください。 日語にローカライズするには、Crowdin プロジ

  • Java 7 CMS GCの基本的な情報の整理 - nekop's blog

    バッチ処理などスループット重視のアプリケーションはデフォルトのパラレルGCで良いが、Java EEアプリケーションサーバなどレスポンスタイム重視のものやHadoopなどのクラスタ系ソフトウェアで死活監視に引っ掛る系などのstop the worldをなるべく避けたいいわゆるサーバ系ソフトウェアを運用する場合には、UseConcMarkSweepGCを付与して停止時間の短いCMS GCを使う。その場合にCMSのチューニングに踏み込もうとするとなんだか難しい記述がいっぱいで若干困るので、簡単なガイドをメモとして書いておく。 対象バージョンは以下。 $ java -version java version "1.7.0_51" OpenJDK Runtime Environment (fedora-2.4.5.1.fc20-x86_64 u51-b31) OpenJDK 64-Bit Serve

    Java 7 CMS GCの基本的な情報の整理 - nekop's blog
    Nagise
    Nagise 2014/03/27
  • あなたの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
    Nagise
    Nagise 2014/03/13
  • Javaトラブルに応じた初動対応のまとめ - n-agetsumaの日記

    Javaトラブルでは『情報がなくて、再現もなかなかしません』といった状況に陥ることがある。このような状況を回避するために、以下の3つの代表的なトラブルを例に、アプリケーションサーバを再起動する前に何を取得すれば良いのかをまとめてみる。 アプリケーションから応答がない アプリケーションが遅い ヒープメモリが足りない(OutOfMemoryErrorの発生) アプリケーションから応答がない 取得する情報 スレッドダンプ データ取得方法 スレッドダンプとは、コマンド実行時点でのJavaスレッド実行状態を出力したものである。応答がない場合、何らかの要因によりどこかで処理が止まっていることが想定される。スレッドダンプは『どこで止まっているのか?』を切り分けるのに大切な情報である。 取得方法はJDKのバージョンによって色々ある。 kill -3 <pid> (少なくとも1.4.2にはある〜JDK7でも

    Javaトラブルに応じた初動対応のまとめ - n-agetsumaの日記
    Nagise
    Nagise 2014/03/12
  • 実はStringはメモリリークの原因だった(※1.7.0_06未満) - R42日記

    InfoQから。 http://www.infoq.com/news/2013/12/Oracle-Tunes-Java-String Stringのような基型に大きな仕様変更が入ることは稀ですが、 1.7.0_06でアグレッシブな変更が入ったらしいです。 以下、適当和訳。 In an ongoing effort to improve Java performance, Oracle has announced a change in the internal representation of strings in the String class as of Java 1.7.0_06. The change, removing two non-static fields from the underlying String implementation, was done to

    実はStringはメモリリークの原因だった(※1.7.0_06未満) - R42日記
    Nagise
    Nagise 2014/02/12
  • Java8の型推論でハマりまくった話 - きしだのHatena

    個人の日記レベルですんません、現象のみ。 書いてるコードに関しては型指定してあげれば解決したのだけど、再現させるのに苦労した。 まず、インタフェースを2つ用意。 interface A{} interface B{} それから、その両方を実装したクラスをふたつ用意 static class C implements A,B{} static class D implements A,B{} 片方だけ実装したクラスもふたつ用意 static class E implements A{} static class F implements A{} そんで、同じ型を継承してGでくるんだものを複数とって、共通の基底クラスをGでくるんだものとして返すメソッドを定義。 ※この文章では、実装したインタフェースも基底クラスと表現します。 static <T> G<T> o(G<? extends T>..

    Java8の型推論でハマりまくった話 - きしだのHatena
  • Java Advent Calendar 2013 11日目 - Java SE 8の新クラス・メソッド一覧 - torutkのブログ

    2013年のJava Adventカレンダーの11日目のエントリーです。 前日のエントリーは、Satoyuki Tsukanoさんのtwitterとelasticsearchを簡単に連携させる(Apache Camel入門 その2 コンポーネントについて) - Taste of Tech Topics、 明日はkisさんです。 はじめに メジャーバージョンアップとなるJava SE 8が年明けの3月に正式版リリース(GA:General Availability)を迎えます。メジャーバージョンアップでは、目玉機能には注目が集まるのであちこちでその内容が紹介されます。たとえば、Java SE 8ではラムダ式とStream API、Date and Time APIなどが目玉機能となります。これらの記事はすでにあちこちで見かけますね。 一方、既存APIへのクラス・メソッドの追加は地味なので注目

    Java Advent Calendar 2013 11日目 - Java SE 8の新クラス・メソッド一覧 - torutkのブログ
    Nagise
    Nagise 2013/12/11
  • Javaで継続モナド - terazzoの日記

    実践Scala読んでたら継続モナドのこと理解出来そうな気がして来たので実装してみた。Javaで。 やれそうな気がする時は、やれる! この辺がとても参考になった。 Haskellの継続モナド(Continuation Monad)を理解するポイント - よくわかりません howm wiki - モナド 簡単な説明 上のサイトにある説明、 継続といいつつ、Contが表すのは継続というより、CPSな関数。 これでようやく何をする機能なのか分かった。モナドというのは、基的に何かを包んで、それによって合成したり後から利用したりを可能にするものなんだけど、継続モナドの場合、包まれている「何か」は、CPS(継続渡し形式)で書かれた関数ということだ。 いきなり高度なサンプルしか無いのが分かりにくい点だと思うので、簡単な具体例を使いながら実装を考えていくよ。 継続渡し形式とは (※前に書いた「内部イテレー

    Javaで継続モナド - terazzoの日記
    Nagise
    Nagise 2013/12/09
  • 真にスレッドセーフなHash mapとは #渋谷java

    14. どんなケースでひっかかったのか • WebアプリのHttpSessionにHashMapを 格納していて、 • Tomcatのセッションクラスタリングがレ プリケーションのためにHashMapをシリ アライズして、 • そのシリアライズの最中にリクエストか らの処理(シリアライズとは別スレット)が HashMapにput

    真にスレッドセーフなHash mapとは #渋谷java
    Nagise
    Nagise 2013/11/18
    オブジェクトのシリアライズ中に同期できないというシチュエーション
  • JJUG CCC 2013 Fall「JVMコードリーディング入門」資料公開 - 虎塚

    土曜にJJUG CCC 2013 Fall(http://www.java-users.jp/?page_id=695)へ行ってきました。 事前にお知らせするのを忘れていましたが、17:15〜18:05のセッションでJVMのソースコードリーディングについてお話ししましたので、発表資料を公開します。 R5-5 JVMコードリーディング入門 〜JVMのOS抽象化レイヤーについて〜 JVMのコードを読みはじめたばかりの方を対象に、JVMとOSのメモリを中心とした関係性についてお話しします。JVMはOSからどのようにメモリを確保しているのでしょうか? そんな素朴な疑問をもとに、JVMのコードを楽しく追いかけてみましょう。※このセッションは入門者向けです。バイトコードやGCについては扱いません。 虎塚 (さくらば組) http://www.java-users.jp/?page_id=709#r5-

    JJUG CCC 2013 Fall「JVMコードリーディング入門」資料公開 - 虎塚
    Nagise
    Nagise 2013/11/11
    お疲れ様でした!
  • 今どきのJava Webフレームワークってどうなってるの? - きしだのHatena

    昨日のSeasar2のエントリについたコメントなどで、「とはいえ代わりに何つかうの?」みたいな話が出てたので、とりあえずJava EEのWebフレームワークについて簡単にまとめてみます。 Java SE 8+Java EE 7+lombokで書いていますが、基的なところはJava SE 7+Java EE 6でも大丈夫です。 なので、今どきとは書いてますが、基的には2009年12月のJava EE 6ということで、実はすでに4年近くたってます。 何も考えてない なんも難しいこと考えないなら、やっぱJSPが楽ですよね。 なんでも書けちゃう。 <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content=

    今どきのJava Webフレームワークってどうなってるの? - きしだのHatena
    Nagise
    Nagise 2013/11/08
  • Javaのマイクロベンチマークツール「JMH」 - Taste of Tech Topics

    ブログの読者の皆様方におかれましては、JavaのArrayListとLinkedListの 実装の違いにより性能に差があることは、当然のように熟知のことと存じあげます。 しかし! 実際にいかほどの差があるのか、それを数値で説明できるという方はどれほどいらっしゃるでしょうか。 いきなり丁寧語の煽りでスタートしました @cero_t です。 そう、今日のテーマはマイクロベンチマークです。 たとえば、 文字列を + で結合すると遅い。 ArrayListの初期化時にはサイズを指定したほうが良い。 ArrayListはループ処理が得意、LinkedListは途中の追加が得意。 など、よくあるパフォーマンスのプラクティスについては既に知っているという方も多いと思うのですが 実際に何倍ぐらいの差なのか(どれぐらいのオーダーの差なのか)を数値で話すことができるという方は、 あまり多くないように思います

    Javaのマイクロベンチマークツール「JMH」 - Taste of Tech Topics
  • Java技術最前線 特別版 JavaOne 2013レポート 前編

    2013年9月22日から5日間にわたって、Javaの最大の技術カンファレンスであるJavaOneがサンフランシスコで開催されました。 毎年サンフランシスコで行われるJavaOneも今年で18回、主催がオラクルに変わってから4回目となります。オラクルになってはじめてのJavaOneでは参加者がかなり減ってしまいましたが、年を追うごとに参加者が増えています。 今年も正式な参加者数は発表されていませんが、昨年よりも確実に参加者が増えています。もちろん最盛期の頃にはとても追いつきませんが、再びJavaに注目が集まってきていることがうかがえます。 今年のJavaOneは22日に開催されたストラテジーキーノート、テクニカルキーノートを皮切りに、300以上のセッション、100以上のBOFが行われました。 そこで、2回にわたってJavaOneレポートをお送りまします。前編ではキーノートに関してレポートし、

    Java技術最前線 特別版 JavaOne 2013レポート 前編
    Nagise
    Nagise 2013/10/16
  • 「俺たちのJavaは、まだまだこれからだ」未来の鍵はInternet of Thingsにあり?~JavaOne 2013まとめレポート(前編)

    「俺たちのJavaは、まだまだこれからだ」未来の鍵はInternet of Thingsにあり?~JavaOne 2013まとめレポート(前編)(1/3 ページ) Java開発者の年次カンファレンス、JavaOne 2013がサンフランシスコで9月22~26日に開催された。3つの基調講演、そして400を超えるセッションが行われるなど、圧巻のボリュームは、まさに「Java開発者の祭典」といえる。基調講演と主なセッション、全体の雰囲気を前中後編に分けてレポートする。

    「俺たちのJavaは、まだまだこれからだ」未来の鍵はInternet of Thingsにあり?~JavaOne 2013まとめレポート(前編)
    Nagise
    Nagise 2013/10/11