タグ

javaに関するdiary193のブックマーク (145)

  • JShell: Finally, an Official Shell in Java 9 - DZone

    The shell or the REPL is a well-known tool in many programming languages. Typically, this is more common in scripting languages such as Python or Node, but more recently it’s been adopted by JVM languages like Clojure and Groovy as well. The upcoming Java 9 release finally brings this shell functionality to the Java language as well, in the form of JShell. This article will explore what we can do

    JShell: Finally, an Official Shell in Java 9 - DZone
  • JShell in Five Minutes

  • Java8のHotSpotVMからPermanent領域が消えた理由とその影響 | ギークを目指して

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

    Java8のHotSpotVMからPermanent領域が消えた理由とその影響 | ギークを目指して
  • Gradle入門 - Qiita

    追記1: コメントでの指摘を受け、gvmに関する記述を削除 この記事は、日経ソフトウェア 2013年 06月号 04/24発売 のステマ記事です。 6月号に、@keiji_ariyama(前座部分担当) と 僕(Gradle概要担当) と @sys1yagi(Android対応部分担当) という分担でGradle入門的な記事を書きました。 ですが、僕の目的としてはトップゲート社員への布教を主目的と考えて書いたため、来要求されている分量を(わざと)大幅にオーバーして書いていました。雑誌に掲載されなかった溢れ分をネットで公開して良いか打診した所、「全文掲載でも良いですよ」という豪気なお許しを頂いたのでここに公開します。この場を借りてお礼申し上げます。 プロの編集さんの手を経て、だいぶわかりやすく噛み砕かれたものが雑誌のほうには掲載されていますので、ここに書いてある内容が難しいなぁ…と思ったら

    Gradle入門 - Qiita
  • プライベートフィールドに対するテスト | DevelopersIO

    クラスメソッドの渡辺です。 弊社では業務時間内にブログを書くことが推奨されており、ネタも何でも良いということで、自動化やユニットテスト関連も投下していきます。今日は結構良く話題に出るプライベートフィールドに対するテストです。 オブジェクト指向プログラミングと可視性 オブジェクト指向プログラミングのひとつの特徴はカプセル化です。簡単に言えば、フィールド(情報)やメソッド(機能や操作)の公開範囲を可能な限り狭くすることで、安全にオブジェクトを扱うことができる、ということです。このため、古典的なJavaのコーディング標準では、次のように、「全てのフィールドをprivateに設定し、必要に応じてアクセサメソッドを定義すること」となっています。 public class Item { private String name; private int price; public String getN

    プライベートフィールドに対するテスト | DevelopersIO
    diary193
    diary193 2013/08/09
    テスト技法の知識がリフレクションで止まってた。再学習しよ。
  • from old Java to modern Java

    from old Java to modern Java : reloaded for Kansai Java Engineers' Group

    from old Java to modern Java
    diary193
    diary193 2013/06/30
    6 -> 7あたりからが初見だった
  • Apache TomcatからELBにアクセスする際に気をつけたい事 sun.net.inetaddr.ttl=-1 | Developers.IO

    それは予告なく突然起こった TomcatからELBを経由したEC2インスタンスが見つからない。Management Consoleで確認するとちゃんと起動している。なぜ?分からない。ELBの障害でも無さそうだ。ELBへHTTPリクエストしているTomcat側の問題か?謎が深まるばかり。 ELBのIPアドレスは変わることがあるらしい いろいろ調べていると分かったことがある。ELBのIPアドレスは変わることがあるらしいと。たしかに、各種ドキュメントにはELBはドメイン名を使うように至る所で注意書きがあった。確かに、ELBは単一のサーバーではなく、ELBというサービスだからIPが変わるのは理解できる。でも今回は、ELBはちゃんとドメイン名で書いているはずだぞ。全て正しく設定されているはずなのにTomcatがConnection Refusedとエラーを吐いている。 TomcatがDNSキャッシュ

  • AWS: JavaのDNSキャッシュ ( TTL )について - aws memo

    AWSのサービスではDNSを用いて可用性を向上する仕組みを用いている。 各種APIのエンドポイント RDSのエンドポイント ELBのエンドポイント ElastiCacheのエンドポイント CloudSearchのエンドポイント Redshiftのエンドポイント などなど。AWSが提供するエンドポイントのFQDNを、自分のアプリケーションから参照するように設定したり、一旦DNSでCNAME設定することも多い。 ただし、これらのエンドポイントFQDNで設定されているIPアドレスは、運用中に変更される可能性がある(ノード障害、フェイルオーバー等によるIPアドレス変更、スケーリングによるIPアドレス増減、等)。そのため、アプリケーション側はエンドポイントのIPアドレス変更に追随する必要がある。(追随しないと、古いIPアドレスにアクセス試行しつづけて、結果としてシステム障害になってしまう) ここで問

    AWS: JavaのDNSキャッシュ ( TTL )について - aws memo
    diary193
    diary193 2013/04/30
    「Java (というかJVM)の1.5以前。デフォルトで、一度名前解決したIPアドレスは、JVMが終了するまでキャッシュし、再度名前解決することがないようになっている」
  • 第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
    diary193
    diary193 2013/01/19
    ヒープを建物と例えたのは初めてみた。次はGCか?期待。
  • How to Make an Executable WAR File - DZone

    If you ever used Jenkin CI server, you have probably seen their super easy one-line instruction to get started: java -jar jenkins.war. Now that's one awesome way to get your users to try out your product! In this article, I will show you how to make a WAR file self executable just like above. Before I do that, let me tell you a little web app that I made, and then I will show how I converted it in

    How to Make an Executable WAR File - DZone
    diary193
    diary193 2012/09/09
    実行可能というかServlet Container内蔵WARファイルの作り方。META-INF/MANIFEST.MF に "Main-Class" でmainメソッドを持つクラスを指定し、そのmainメソッドでWinstoneというServletAPI 2.5準拠の軽量コンテナを起動する
  • Java開発で泣かないためのPlay frameworkの基礎知識

    Javaの常識を変える「Play framework」とは 「Play framework」は、サーバサイドJavaScalaのためのMVCフレームワークです。この連載では、主にJavaのフレームワークとしてのPlay frameworkを紹介していきます。でも「Javaで、Web向けで、MVCで……」なんて、ありふれた感じですよね。それなら「Scalaで、どう作るのか」という話の方が興味あるという方もいるでしょう。 しかし、Play frameworkはバージョン1まではJavaのフレームワークとして作られていました。また、ScalaJavaVM上で動作するプログラミング言語です。つまり現在の最新バージョンの2でも基礎の部分で動いているのはJavaです。Play frameworkを知るためには、まず基礎から固めていくのが正攻法だと思います。Scalaについて知りたい読者は、以下の記

    Java開発で泣かないためのPlay frameworkの基礎知識
    diary193
    diary193 2012/04/20
    インストールまで。Hello World は次回か。
  • Apache Wicket 1.5リリース

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    Apache Wicket 1.5リリース
  • Java、バッチ処理の仕様を策定へ | エンタープライズ | マイコミジャーナル

    Java Programming Language Javaを使ったバッチアプリケーションの開発と運用の標準化を目指した新しい仕様「JSR 352: Batch Applications for the Java Platform」の策定作業が開始された。IBMから提出された仕様で、Java SEとJava EEの双方における利用を想定。策定目標時期は2012年第2四半期とされており、かなりアグレッシブに作業を進める気概であることがわかる。 JSR 352ではバッチアプリケーションの開発と、ジョブをスケジュールに従って実行するための実行環境の2つに対して、標準化されたプログラミングモデルを実現することを目指している。提案されている資料では「バッチジョブ」「バッチジョブステップ」「バッチアプリケーション」「バッチイグゼキュタ」「バッチジョブマネージャ」を定義しモデリング対象を明確化している。

    diary193
    diary193 2011/11/01
    Java Batch Edition / JP1+Shellに対抗するものなら、ぜひインタプリタで実現してもらいたい
  • New Java 7 Language Features - DZone

    Last week I was at the Java 7 launch party in Sao Paulo, Brazil and it was really cool. There were a lot of developers on the party to celebrate Java 7 (afterall, we have been waiting for it for 5 years!). I took some pictures at the event: http://www.flickr.com/photos/loiane/sets/72157627015952961/ Video of the event: http://blogs.oracle.com/java/entry/java_7_celebration_begins Slides: http://blo

    New Java 7 Language Features - DZone
    diary193
    diary193 2011/07/23
    Java7の新機能紹介資料へのリンクまとめ
  • 一歩先行くJavaプログラマが読むべきオープンソースソフトウェア10選 - 設計と実装の狭間で。

    10万行コード読んだらJava分かるよってTwitterに書いたらすげぇ勢いでRTされたので、調子に乗って捕捉エントリ書くよ。 Java Core API JDKインストールしたディレクトリに入ってるsrc.zipを展開すると入ってるから読むと良いよ。 すぐ近くにあるのから読むってのはメンタル的に楽でいい。 厳密にはOSSじゃなくて単に公開されてるってだけなんだけども、JavaプログラマなのにコアAPIのコード読んでないとか無いよね? どれから読めば良いか分からんかったら、 java.lang java.util java.io java.text 辺りをまずはキチンと理解すること。当然コードを読み終わったら、それを使ってコードを書く事。 OpenJDK http://hg.openjdk.java.net/jdk7/jdk7 OpenJDKを読むことで、プログラム言語してのJavaではな

    一歩先行くJavaプログラマが読むべきオープンソースソフトウェア10選 - 設計と実装の狭間で。
    diary193
    diary193 2011/06/12
    Java Core API は別の場所でも読んだ方がいいよって2年くらい前に見た。そして読んでないオレ。読みます、読みたいです。
  • Java使いをScalaに引き込むサンプル集 | mwSoft

    前書き Scalaという言語をご存知ですか? Javaと同じくコンパイルされるとclassファイルになり、実行時はJVM上で動作する、オブジェクト指向+関数型のプログラミング言語です。 Scalaを開発したのはJavaのgenericsの設計を手がけたり、javacの開発をしていた経歴も持つMartin Odersky氏。 Scalaは後発の言語ということもあって、Javaを書いている時に感じる冗長さに対する様々な解が用意されています。 記事では、ScalaJavaのコードを比較しながら、JavaユーザがScalaに移った際に得られるメリットを提示していきます。 尚、序盤のサンプルコードはJavaユーザに伝わりやすいように、returnを明記したり、メソッドは必ず{ }で囲むなど、極力Javaっぽい記述をしています。 だいたいJavaと同じような書き方ができます ScalaJava

    diary193
    diary193 2011/02/15
    Groovy, JRuby, Scala / 一番Java構文に近そう、高階関数使えるのは良さげ
  • How to Use Wicket With JEE6 - DZone Java

    diary193
    diary193 2010/12/31
    JEE6からweb.xmlが不要になる・・・けど、wicketとかフレームワークを使う規模なら明示的に作ってパラメータ指定すべきだと思う。Javaソースコード上にパラメータをハードコーディングするってのも気持ち悪いし。
  • Apache、Javaコミュニティー脱退を示唆――Oracleのテストキットライセンス拒否に反発

    ASFは脱退をちらつかせるだけでなく、「Java SE 7」仕様に反対票を投じる方針も明らかにしており、ほかのメンバーにも同調するよう呼び掛けている。 米Apache Software Foundation(ASF)は、米Oracleが「Harmony」プロジェクトに対してテストキットのライセンスを拒み続けるのであれば、Java管理団体から完全に脱退すると脅しをかけている。 ASFは11月9日(現地時間)、同団体のブログに掲載した発表文で「Java仕様のインプリメンターとしてのASFの権利が認められない」のであれば、Java Community Process(JCP)から脱退すると述べている。 ASFが指摘した問題とは、Java SEのテストキットライセンス(TKL)をApache Harmonyプロジェクトに提供するかどうかをめぐるOracleとの論争のことだ。HarmonyはJava

    Apache、Javaコミュニティー脱退を示唆――Oracleのテストキットライセンス拒否に反発
    diary193
    diary193 2010/11/16
    Oracleはなにがやりたいんだろうねぇ
  • Maven2のTipsを集めるWiki - CookBook

    fdiary.netのwikifarmを間借りしています。Hikiです。書き方についてはTextFormattingRules を参照してください。 ドキュメント Summary of Maven 2.x documentation Maven Getting Started Guide :: www CodehausのWiki ソース自体も立派なドキュメント Thread.sleep()内maven2カテゴリ N2 Tool box内のオープンソースカテゴリ Inconel 625 Bars, Hastelloy C276 Round Bars CookBook 特定のクラスだけテストするには Maven2のdependencyパスをantへ渡すには SCPでデプロイするには ibiblio.orgに配置されているライブラリを検索するには "site:ibiblio.org maven2

  • Java、JCPメンバーとOracle見解の相違で離脱あり | エンタープライズ | マイコミジャーナル

    Java Programming Language Javaにどの仕様を取り込むかの検討を実施する組織がJCPだが、Sun MicrosystemsがOracleに買収されてから、JCPメンバー内においても人材流出が起っているようだ。JCP執行委員会のメンバーだったDoug Lea氏は委員会から離脱。今後はOpenJDKに注力していくことを表明している。 Doug Lea氏はJCPがOracleの提案する仕様を承認するだけの組織になりつつあると指摘し、今後はJCPを通じての革新的な取り組みは期待できないと表明。仕様を策定するわけではないものの、Linuxの成功例を見ればわかるようにソースコードありきで開発するOpenJDKの方が今後は発展が期待できるとして、OpenJDKへの注力を示している。 JCP執行委員会の新しいメンバーはOracle寄りの人物が多いと見る向きもあり、不信感を募らせて

    diary193
    diary193 2010/10/26
    離脱1/「JCPがOracleの提案する仕様を承認するだけの組織になりつつあると指摘し、今後はJCPを通じての革新的な取り組みは期待できない」