タグ

Javaに関するiwwのブックマーク (162)

  • [Java] Integer.valueOf(127)== Integer.valueOf(127)は真か? | NHN Cloud Meetup

    [Java] Integer.valueOf(127)== Integer.valueOf(127)は真か? Javaには最適化のためオブジェクトをキャッシュするロジックがあります。キャッシュロジックは、アプリケーションのパフォーマンス改善に役立ちますが、意図しない結果を発生させることがあります。さらにクリティカルな障害状況の原因にもなります。 Naresh Joshiの[Java Integer Cache – Why Integer.valueOf(127) == Integer.valueOf(127) Is True]のブログ記事内容を紹介します。Java Integer Cacheについて考えてみましょう。 インタビューで、次のような質問を受けました。 Integer a = 127; Integer b = 127; 上のような2つのIntegerオブジェクトがあります。 a 

    [Java] Integer.valueOf(127)== Integer.valueOf(127)は真か? | NHN Cloud Meetup
  • フェアユースは認められたが、Googleは対価を支払うべき - Java API訴訟に寄せて - arclamp

    ようやく裁判の結果が出ました。結果としてフェアユースが認められたのはよかったのですが、Googleが勝訴したということは素直に喜べないので、その理由を書いておきます。 関連ニュースは、こういったところから。 約1兆円の賠償金を巡るGoogleOracleの10年にわたる訴訟が決着、「APIのコピー」は結局違法なのか? - GIGAZINE Google、オラクルの著作権侵害せず 米最高裁判決: 日経済新聞 グーグル、米最高裁でオラクルに勝訴--「AndroidJavaコード訴訟で - CNET Japan 経緯 では、経緯について時系列に沿って整理していきます。推定可能な事実に基づきますが、一部、妄想も含まれています。 2005年 Google(広告収入増やすには無償で改変自由なスマホOSが重要になるはず。普及させるなら開発者の多いJavaベースだよな。でも、クラスライブラリ改変しな

    フェアユースは認められたが、Googleは対価を支払うべき - Java API訴訟に寄せて - arclamp
    iww
    iww 2021/04/09
    『支払わなくて済んだお金を、なにか良い形で使ってもらいたいですね。Googleは、それができる企業だと信じています。』
  • IntelliJ IDEAのプラグインを作ろう! - Qiita

    【追記】この記事の情報はかなり古くなっています。 2019年現在では、公式にプラグイン作成関連のドキュメントがある程度あるので、そちらを参考にすることをおすすめします。 https://www.jetbrains.org/intellij/sdk/docs/basics/getting_started.html このエントリで紹介していること IntelliJ IDEAプラグインの事前知識 プラグインの開発方法 プラグインデバッグ手法、Tips プラグインの公開の仕方 開発にあたっての便利リンク集 このエントリの目標 IntelliJ IDEAプラグインでNotificationメッセージに”Hello Plugin”を表示させる [オプション] プロジェクト内に永続変数/クラスを持つ IntelliJ IDEA系のプラグインについて IntelliJ IDEA系の製品(PhpStorm/

    IntelliJ IDEAのプラグインを作ろう! - Qiita
  • コンポジションとは : JavaA2Z

    あるクラスの機能を持つクラスのこと。 特定のクラスの機能を、自分が作るクラスにも持たせたい場合に、継承を使わずフィールドとしてそのクラスを持ち、そのクラスのメソッドを呼び出すメソッドを持たせること。そうすることで、クラスに他のクラスの機能を組み込むことができる。 オブジェクト指向用語。 厳密なオブジェクト指向では、継承は「機能の継承」を目的とせず、「スーパークラスはサブクラスの一種である」といういわゆる「is-a」の関係を持たなければならない。 そのため、単に機能を持たせたい場合には、継承ではなくコンポジションとすることが推奨される。 メリットとして、「機能の継承」はクラスの関連図をイメージする際に分かりにくくなりやすいためそれを回避できる、メソッドをワンクッション置くことで融通が効く、といったものがある。また、コンポジションの対象となるクラスは、そのサブクラスも使用できることになる。 デ

    iww
    iww 2018/07/31
    継承しないでメンバとして持たせる方法。 is-aじゃなくてhas-a
  • オブジェクト指向の呪いと、その避け方 - mizchi's blog

    このテーマで書く前に、まず、最初に自分に多少の偏りがあることを認めておかなくてはなりません。 オブジェクト指向より、関数指向寄り オブジェクト指向のアプローチは有用だが、ただしそれを実現する手段はクラスと継承ではない。 階層化されたツリー構造(GUI/リレーショナルな参照構造)に埋め込まれる状態はコード品質を悪化させるので、できるだけ出現するべきではない。 ただし、状態は確実に存在する。だからこそ慎重に扱うべきだ、という派閥です アンチパターン: 特に理由もないクラスメソッドへの所属 何かのバリデータを実装したいとします。 その関数がどこに所属するかについて、よく見るこれらの実装は全部アンチパターンといっていいと思います export class Validator { static validate() {...} } export class Validator { validate(

    オブジェクト指向の呪いと、その避け方 - mizchi's blog
    iww
    iww 2018/07/31
    『基本的には、「継承よりコンポジション」です。 それでもやらないといけないとしたら、ストラテジーパターンを想定したライブラリから、一回だけ』
  • HPROF: ヒープ/CPU プロファイリングツール

    Java 2 Platform Standard Edition (J2SE) では、ヒープと CPU のプロファイリング用に HPROF と呼ばれる簡単なコマンド行プロファイリングツールが常に提供されます。HPROF は、実際には JVM のネイティブエージェントライブラリであり、JVM の起動時にコマンド行オプションで動的にロードされ、JVM プロセスの一部になります。ユーザーは、起動時に HPROF のオプションを指定することで、HPROF に対してヒープ、CPU、またはその両方のさまざまなプロファイリング機能を要求できます。生成されるデータは、テキスト形式またはバイナリ形式にでき、メモリー使用量や効率の低いコードが関与するパフォーマンス上の問題を見つけて切り分けるために使用できます。HPROF によって生成されるバイナリ形式ファイルは、HAT などのツールでヒープ内の割り当て済みオ

    iww
    iww 2018/04/06
    Javaプログラムがバグって死んだときに残すファイル。 coreみたいなもの。 それなりに大きくて邪魔。
  • 【悲報】Javaがオラクルにとどめ刺されそう。Oracle JDKの無償公開がJava 10までの衝撃 : IT速報

    Java界隈がざわついていると話題に。3月に早くもJava10がリリース予定であり、その半年後にはJava11が登場。また、無償でダウンロードできたOracle JDKの公開はJava 10が最後になるという。 2017年9月に「Java 9」が登場したばかりですが、いまから1カ月後の2018年3月には早くもJavaの新バージョン「Java 10」がリリースされます。そしてその6カ月後の9月にはさらに次の「Java 11」がリリース予定です。 Java 9以後のJavaは、毎年3月と9月の年2回メジャーバージョンアップを行う、タイムベースのリリースモデルを採用することになりました。今年はその最初の年となります。 オラクルによるJDKの提供方法やサポートポリシーも、これから大きく変更されることが明らかになっています。一般公開され無償でダウンロードできたOracle JDKの公開はJava 1

    【悲報】Javaがオラクルにとどめ刺されそう。Oracle JDKの無償公開がJava 10までの衝撃 : IT速報
    iww
    iww 2018/02/09
    Javaがなくなると困る人はどのくらいいるんだろうか
  • [速報]Java 9が正式リリース、Javaをモジュール化するProject Jigsawがついに実現。今後のJavaは6カ月ごとタイムベースのアップデートへ

    [速報]Java 9が正式リリース、Javaをモジュール化するProject Jigsawがついに実現。今後のJavaは6カ月ごとタイムベースのアップデートへ 米オラクルは9月21日(日時間9月22日未明)、Javaの最新バージョンとなるJava 9正式版を公開しました。 Java 9 is Out!!!!#JDK9 #Java9 #Javahttps://t.co/VE7BI4KPlK pic.twitter.com/kOdNiLJ1ky — Java (@java) 2017年9月21日 Java 9最大の新機能は「Project Jigsaw」として開発されたJavaのモジュール化機能です。おそらくJavaの開発のなかでももっとも難産なプロジェクトだったといえるでしょう。 難産の末にProject Jigsawがついに実現 Javaをモジュール化して必要な部分だけを使えるようにする

    [速報]Java 9が正式リリース、Javaをモジュール化するProject Jigsawがついに実現。今後のJavaは6カ月ごとタイムベースのアップデートへ
    iww
    iww 2017/09/22
    もうJavaは言語としては使わないからどうでもいいけど Javaメインの人はなんだか大変そうだな。
  • はてなカウンターがなくなってから、更新に対するモチベーションが下がった - orangestarの雑記

    はてなカウンターがなくなってから、更新に対するモチベーションが下がった。 あと、はてなブックマークの一覧ページが変更になってからさらにモチが下がった。 なんかそこらへんについて今日は描きます。 記事広告ではない。(なぜならリンクを張ってないから(最初貼ろうと思ったけれどもどうせ誰もリンクしないし登録もしないのでネタの為にそういうことをするのがめんどくさくなった(コミックZINで夏の同人誌と取り扱い中なので買ってくださいCOMIC ZIN 通信販売/商品一覧ページ(電子書籍も、ページ下部のリンクなどから まあ、そんなこんなで。 はてなカウンターが無くなってしまった。はてなダイアリーのころからずっと一緒だったサービスが無くなってしまった。ドラえもんが未来に帰ってしまった後ののび太みたいに、部屋の隅っこでガタガタ震えながら窓の外を見つめて「すぐになれると思うよ…はてなブログ…」と言いながら、はて

    はてなカウンターがなくなってから、更新に対するモチベーションが下がった - orangestarの雑記
  • Kotlin - Wikipedia

    Kotlin(コトリン)は、ジェットブレインズのアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、静的型付けのオブジェクト指向プログラミング言語である。 開発経緯[編集] Kotlinは、ロシア・サンクトペテルブルクにある、ジェットブレインズの研究所で生まれた。 ジェットブレインズ社は JavaRubyPython などのプログラミング言語による開発環境などを開発して販売してきた。Kotlinは、同社の経験を活かしJavaをもっと簡潔・安全になるように改良した産業利用向け汎用言語として開発され、2011年7月20日に発表された。 Java仮想マシン上で動作するため、Javaで書かれたプログラムと同程度に速くコンパイルされ同程度に速く動作するとしている。 Javaに望まれている機能であっても互換性を保つために実現できていない機能や、将来のJavaの仕様で実現が予定されている機能か

    Kotlin - Wikipedia
    iww
    iww 2017/06/19
    Androidは当分触らないからいいや
  • もういい加減「nullチェックをしたら安全」とかわけのわからないことを言うのはやめよう - Qiita

    (僕の主観で)クソな記事をたまたま読んでしまってもにょったので愚痴。 Safe Harbor Statement 以下の事項は個人の見解であり所属する組織の公式見解ではありませんし、明日になったら違うことを思っているかもしれませんがそういう類のものです。 某所で危険と言われていたコード public void hogeMethod(Hoge hoge) { //hogeを使った処理 hoge.doSomething(); return; } 安全な理由: NullPointerExceptionが発生しない 僕がいいたかったこと それ、NPEを握りつぶしているだけですから!!!!!!! (とくにJavaの世界においては)非検査例外というのはコーディングバグを示してくれるものですから、へんなnullチェックをいれるのではなく、積極的にNPEを発生させていきましょう。 こういうわけのわからない

    もういい加減「nullチェックをしたら安全」とかわけのわからないことを言うのはやめよう - Qiita
    iww
    iww 2017/06/05
    握りつぶしたいときもある
  • Java Message Service - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "Java Message Service" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2021年6月) Java Message Service (JMS) とはJavaプログラムにネットワークを介してデータを送受信させるためのAPIである。 Java EE 1.3 以降に標準で含まれている。データを1つずつバラバラに扱うのではなく、メッセージと呼ばれる塊にまとめて送信するメッセージングを行う。1対1のキューと1対多のトピックが使える。受信は、MessageConsumer.receive() による同期受信のほか、MessageLi

    Java Message Service - Wikipedia
    iww
    iww 2017/04/29
  • すごーい!オライリーオリジナル サーバルTシャツを貰おう! - 2017年4月のWeb直販キャンペーン

    キャンペーンは終了しました。ご応募いただいた皆さまありがとうございました。 皆さまこんにちは。2017年4月のWeb直販キャンペーンのお知らせです。 今月のキャンペーンは4月9日に開催された「技術書典2」の会場で大好評だったアイテムの登場です。『Javaパフォーマンスチューニング 第2版』のカバーを飾るアニマル、サーバルをプリントしたTシャツをプレゼント書は2003年に発売されましたが、現在は品切、重版未定となっておりご購入いただくことはできません。ちなみに書のカバーアニマルの解説には以下のように解説されています。 Java Performance Tuningの表紙の動物はサーバル(Leptailarus serval)です。この足の長いは、北部のサハラ砂漠など極端に乾燥した地域を除くアフリカのほぼ全土で見られます。体の色は、明るい茶色から暗い赤茶色までさまざまで(中には真っ

    すごーい!オライリーオリジナル サーバルTシャツを貰おう! - 2017年4月のWeb直販キャンペーン
    iww
    iww 2017/04/11
    すごーい が無ければ完全に白を切れたのに
  • [051699]インストール時に「102」や「1622」のエラーが発生する

    Windowsの一時ファイルに含まれるデータが原因で、JUSTインターネットセキュリティのインストール時に「102」や「1622」のエラーが発生する場合があります。次の操作で一時ファイルを削除してから、JUSTインターネットセキュリティをインストールしてください。 ■操作 Windowsの[スタート]ボタンをクリックし、[ファイル名を指定して実行]をクリックします。 [ファイル名を指定して実行]画面が表示されます。 [名前]に「%temp%」を入力し、[OK]をクリックします。 一時ファイルのフォルダーが表示されます。 フォルダーの中にあるすべてのファイルとフォルダーを削除します。 ◆補足 「<ファイル名>を削除できません。アクセスできません」と表示されて削除できないファイルがある場合は、起動中のアプリケーションプログラムをすべて閉じてから削除してください。それでも削除できないファイルは、

    [051699]インストール時に「102」や「1622」のエラーが発生する
    iww
    iww 2016/11/25
    netbeansのインストール時によく出る。 これが出ると、アンインストールすら出来なくなる
  • Welcome to Apache NetBeans

    Fits the Pieces Together Development Environment, Tooling Platform and Application Framework. Apache NetBeans is much more than a text editor. It highlights source code syntactically and semantically, lets you easily refactor code, with a range of handy and powerful tools.

    iww
    iww 2016/11/25
    JDKのインストールができない
  • Image Triangulator App | concept farm | Design from the ground up.

    Basic interface splash screen explaining the functions of various buttons. Blurred Mode - similar to Photoshop's smart blur filter, tries to preserve detail while smoothing out fine inconsistencies. This gives the final triangulated image a more smooth and consistent look.

    Image Triangulator App | concept farm | Design from the ground up.
    iww
    iww 2016/11/08
    Windows10では動作せず。 残念
  • Image Triangulator App on Behance

    Working in the Processing development environment, we recently developed our own little application for abstracting images, using the controlP5 library for the interface. Image Triangulator gives you the ability to triangulate any image. The level of abstraction you get depends on the amount of points you plot. The app will allow you to save your plotted points as a text file and the final image a

    Image Triangulator App on Behance
    iww
    iww 2016/11/08
    Windows10では動作せず。 残念
  • hs_err_pid.log の原因は?

    iww
    iww 2016/10/11
    Javaのアプリが死んだ時のログらしい。
  • Legends of Yore

    iww
    iww 2016/07/25
    Javaか・・・
  • Java/ServletとJSESSIONIDのURL管理 - Glamenv-Septzen.net

    Servlet 2.5 今回主に取り上げるTomcat6, Jetty7で対応しているServlet 2.5の仕様を確認すると、"SRV.7.1 Session Tracking Mechanisms"で以下のように記されています。 SRV.7.1.1 Cookies Session tracking through HTTP cookies is the most used session tracking mechanism and is required to be supported by all servlet containers. The container sends a cookie to the client. The client will then return the cookie on each subsequent request to the server,

    iww
    iww 2016/06/07
    ;jsessionid=xxxx