タグ

javaに関するshaw27のブックマーク (24)

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

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

    Java8のHotSpotVMからPermanent領域が消えた理由とその影響 | ギークを目指して
    shaw27
    shaw27 2015/01/13
  • Javaを使うなら知っておきたい技術、フレームワーク、ライブラリ、ツールまとめ

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Javaの開発と言っても、各種ミドルウェアやフレームワーク、ライブラリ、ツールなどが豊富にあり選択に悩むことは少なくないと思います。 そこで関連技術のインデックスになればと作成しました。 あくまで知っている範囲で記述しているので、コメントしてもらえれば随時追加します! すべてを書くと膨大な量になるため、現状採用が減ってきているものや、そもそもあまり採用されていないもの、後継があったり、類似のものと比較した場合に明らかに劣っているものは省いています。 ちなみにライブラリには高機能なものも多いので、分類は参考程度にご覧下さい。 サーバ系 A

    Javaを使うなら知っておきたい技術、フレームワーク、ライブラリ、ツールまとめ
  • 最近のJava関係イベントの個人的なまとめと感想 - Splash of waters - 2nd. Season

    デブサミやJava Day Tokyoなど、会社の許可をもらってイベントにありがたく行かせてもらっているけど、ちゃんとレポートできていなかったということで、社内勉強会で話すことにしました。 まとめ資料を作ったので、このブログにて先行して公開してしまいます*1。少し前のエントリで資料をアップロードしたのはこのための準備でした。 資料の位置づけ 古いJavaの知識で止まっている人(自分含め)やこれから格的にJavaを学ぼうと思っている人に、最近のJava関連の新機能などをざっくりつかんでもらうための資料です。内容の深さ・広さは、聴く人のJavaスキルに合わせた一応合わせたつもりです。 Java SE 8がリリースされて、その界隈では「for文禁止」などと言われる一方で、会社の新人研修で教えるJavaでは、「ループはforやwhileを使って書きます」みたいに教えるわけで、その辺のギャップを埋

    最近のJava関係イベントの個人的なまとめと感想 - Splash of waters - 2nd. Season
  • 例えば、Strutsを避ける

    はじめに 筆者は10年以上ウェブアプリケーション開発を主な業務とするJavaプログラマであったにも関わらず、Strutsについてはこれまでずっとわず嫌いでした。初期のStrutsは「XMLだらけで効率が悪そう」というイメージが強かったためです。最近はRuby on Rails等の影響を受けCoC(convention over configuration)を採り入れ、XML地獄もだいぶ解消したようです。 StrutsはJavaアプリケーションらしくない種類(任意のコード実行等)の脆弱性を連発することでも知られており、最近は我々の提供するSaaS型WAFサービス、Scutum(スキュータム)のお客様からも頻繁にStrutsについての問い合わせを受けるようになりました。また、去年見つかった任意のコード実行の脆弱性では、脆弱性の公表後すぐにPoCが出回り実際に攻撃が発生するなど、悪い意味で注目

    例えば、Strutsを避ける
  • 百年の言語 --- The Hundred-Year Language

    百年の言語 --- The Hundred-Year Language Paul Graham, April 2003 これは、Paul Graham: The Hundred-Year Language を、原著者の許可を得て翻訳・公開するものです。 <版権表示> 和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2003 by Paul Graham 原文: http://www.paulgraham.com/hundred.html語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> Paul Graham氏のエッセイをまとめた『ハッカーと画家』の 邦訳版が出版されました。 出版社の案内ページ Amazon.

    百年の言語 --- The Hundred-Year Language
  • Clojure のエレガントなところ - hozumiの日記

    リスト、ハッシュマップ、ベクタ、集合のリテラルがある ;リスト (1 2 3 4) ;ハッシュマップ {:a 1, :b 2, :c 3} ;ベクタ [1 2 3 4] ;集合 #{1 2 3 4} よく使う基データ型のリテラルがあるというのはソースコードに図が入ってるみたいで考えるよりも早く理解できる。しかもいじりやすい。他の多くの言語でもこれらの基データ型のリテラルは用意されているが、Clojure ではこれらはとてもよく使う重要なビルディングブロック。 リスト、ハッシュマップ、ベクタ、集合、文字列 をシーケンスとして抽象化 (take 2 '(a b c d)) ;リスト ;=> (a b) (take 2 {:a 1 :b 2 :c 3 :d 4}) ;ハッシュマップ ;=> ([:a 1] [:b 2]) (take 2 [:a :b :c :d]) ;ベクタ ;=> (:a

    Clojure のエレガントなところ - hozumiの日記
  • 一歩先行く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選 - 設計と実装の狭間で。
  • wise9 › JavaとJavaScriptの20年戦争

    モバイルゲーム 物凄い勢いで勃興したモバイルゲーム業界は、いろいろな課題や問題に直面しながらも巨大化し、今日の時点でのスマートフォン向けゲームの市場へと継承されていきます。 モバイルゲーム歴史 2001 Javaアプリと3Dゲームの登場 Javaが利用できるようになったことにより、ダウンロード型のゲームが供給できるようになりました。 2002 携帯電話端末の大容量化・3D化競争 Java搭載携帯電話端末が登場してからごく僅か1年の間に、アプリのサイズに関しては10倍に広大化し、表現方法も2Dから3Dにシフトし始めました。J-PHONEは『ゼビウス』や『スペースハリアー』などといった昔のアーケードゲームを、ドコモはSIMCITYなどパソコンで世界的規模のヒットを飛ばしたゲームを主力商品としていました。 2003 モバイルゲームの一般化 メモリの制限が厳しいJava仮想マシン上ではなく、OS

  • 1分でWebアプリを作れるEclipseプラグイン「Dolteng」

    1分でWebアプリを作れるEclipseプラグイン「Dolteng」:Java初心者が超俊敏にWebアプリを作る方法(1)(1/3 ページ) Javaの業務用Webアプリ開発に必要なもの 読者の皆さんは、Javaで業務用のWebアプリケーションを開発するのに必要なものとして何を思い浮かべるでしょうか。統合開発環境? サーブレット/JSP? アプリケーションサーバ? Struts? DB接続のO/Rマッピング? DIコンテナ? 技術的には、これらも確かに必要です。また、アプリケーションが“安全”に“確実”に動くことが業務で使うときには求められます。 上記は当然のものとして、“仕事”として売り上げを上げるためにアプリケーション開発を行う場合に一番求められるのは、アプリケーションを一から開発する際や、デバッグ/修正する際の“速さ”や“俊敏さ”ではないでしょうか。 たとえJava言語の初心者、また

    1分でWebアプリを作れるEclipseプラグイン「Dolteng」
  • Java Framework講義

    沖縄発Javaコミュニティ「Java Küche」副会長 http://www.java-kuche.org 沖縄Linux Users Group(OLUG)正会員 http://www.olug.gr.jp はじめに 今日の講義では、大まかに以下の3点について講義を行います。 フレームワークの基礎概念 Strutsの基礎知識 Seasar2の基礎知識 StrutsはWebアプリケーションの画面制御のためのフレームワークです。Seasar2は今日は来の利用方法とは 異なりますが、DBアクセスのためのフレームワークとしての利用方法を解説します。 また、課題として問題1から問題10を用意しています。課題の回答はメールにてt-doi@ohns.co.jp まで送付してください。 提出形式はtext、PDFなどでかまいません。 フレームワークの基礎概念 フレームワークとは Framework

  • Javaで軽快に使える「軽量フレームワーク」特集 ~本格的なRoRスタイルフレームワーク「Play!」(1)

    はじめに 今やWebのフレームワークと言えば、そのほとんどが「RoRタイプ」です。RoR(Ruby on Rails)がWebの開発に与えた影響は非常に大きく、その後生まれたフレームワークの多くがその影響を受けています。 しかし、Javaの世界に関しては、RoRはなぜか素通りしてしまいました。既にStrutsというデファクトスタンダードがあったために新しいMVCフレームワークが割り込む余地があまりなかったのか、あるいはLL(ライトウェイト)言語でないとRoRなスタイルは作りにくかったのか。ともあれ、その後、長い間、Javaでは「いわゆるRoRタイプ」と言えるフレームワークは登場しませんでした。 その流れを変えたのは、Groovyです。Groovyの登場により、JavaでもLL言語のような小回りの聞くコーディングが可能となりました。そのおかげで、ようやくJavaの世界にも遅まきながら新しい世

    Javaで軽快に使える「軽量フレームワーク」特集 ~本格的なRoRスタイルフレームワーク「Play!」(1)
  • Javaで軽快に使える「軽量フレームワーク」特集 ~Apache Wicketで簡単Webアプリ作成(1)(1/5):CodeZine

    時代がライトウェイト言語へとシフトしつつある中、軽快に使えるフレームワークが次々登場してきました。連載では、Javaで注目されている軽量フレームワークの中から注目株をピックアップし、概略を紹介します。第1回目の今回は「Apache Wicket」の基的な構成と使い方を覚え、実際にWebアプリケーションを作ってみましょう。 はじめに 以前は、Javaの世界でフレームワークと言えば「Struts」と定番が決まっていました。しかし、フレームワークによる開発は、どうしても大掛かりなものになりがちです。時代がライトウェイト言語(Lightweight Language、PHPRubyなどのスクリプト言語)へとシフトしつつある中、重量級のフレームワークは、やや時代遅れな印象をもたれてしまうのは仕方のないことでしょう。 もっと軽快に使えるフレームワークがあれば、と思う人は多かったに違いありません。

    Javaで軽快に使える「軽量フレームワーク」特集 ~Apache Wicketで簡単Webアプリ作成(1)(1/5):CodeZine
  • 注目のJavaフレームワーク詳細解説---目次

    この連載では,現場のJava開発者が気になるJavaフレームワークを詳細に解説します。今後利用実績が伸びそうなフレームワーク,多少メインストリームから外れているけど,ユニークで注目に値するフレームワークなどを,一つずつ取り上げてじっくり解説していきます。今すぐでなくても,いずれ仕事に役立つはずです。ぜひ読んでください。 ・第1回 JavaScriptレスでAjax開発!「GWT」 ・第2回 「JBoss Seam」でEJBベースのWebアプリケーション開発 ・第3回 シンプルかつ強力なコンポーネント指向フレームワーク「Click Framework」 ・第4回 「DWR」で今日から楽々Ajax ・第5回 機運高まるクライアントサイドJava ・第6回 DIフレームワークGuiceで,さらばXML!

    注目のJavaフレームワーク詳細解説---目次
  • finaluna プロジェクト日本語トップページ - OSDN

    FINALUNA(フィナ・ルナ)API/フレームワークは、金融機関の大量のアプリケーション資産を長期保守し続けたいニーズに応えNTTデータが策定した、「ビジネスロジック用Javaインタフェース(FINALUNA API)」とその「リファレンス実装」です。各金融機関系システム開発で適用された実績があり、それらのノウハウが詰め込まれています。FINALUNA APIのソースコードとマニュアルをオープンソースとして公開します。

    shaw27
    shaw27 2011/03/07
    フレームーく
  • Hadoop MapReduceプログラムを解剖する

    オープンソース・ソフトウェア「Hadoop」のMapReduceジョブは、標準ではJavaで記述します(その他には、Pig、Hive、JAQLといったものがあります)。しかし、意外と初心者には分かりにくいと筆者は感じます。記事では、MapReduceジョブのサンプルコードを使って、できる限り正しくコードの意味を理解し、MapReduceへの入り口を示したいと思います。 HadoopでMapReduceを記述するときに使うAPIが、0.19から0.20に変わるところで新しくなっています。実は、現時点でHadoopプロジェクト体からでさえも、新APIを使ったサンプルが提示されていません。記事では、新しいAPIで筆者が書き直したサンプルを使って解説しますので、このサンプルは0.19以前のHadoopでは動かないことに注意してください。この記事は、0.20.2を使って検証し、解説しています。

  • Struts 2の同期処理を手助けするExecuteAndWaitインターセプタ

    Struts 2が正式リリースされてから3年ほど経ちました。マイナーバージョンも上がり、現在は2.1系がGA(Generally Available)リリースされており、2.0系に比べてさまざまな改良がされました。続 Struts 2入門では、基機能のおさらいから2.1系で採用された機能の説明や実装例を紹介していきます。 はじめに Struts 2が正式リリースされてから3年ほど経ちました。マイナーバージョンも上がり、現在は2.1系がGA(Generally Available)リリースされており、2.0系に比べてさまざまな改良がされました。続 Struts 2入門では、基機能のおさらいから2.1系で採用された機能の説明や実装例を紹介していきます。 対象読者 Struts 2のWebアプリケーション開発に興味ある方。 Struts 2のインターセプタとは Struts 2には、Acti

    Struts 2の同期処理を手助けするExecuteAndWaitインターセプタ
  • Javaで軽快に使える「軽量フレームワーク」特集~リッチなGUIを構築する「Vaadin」(1)

    はじめに フレームワークと言うと、多くの人は「アプリケーション全体を設計するもの」というイメージでとらえているかもしれません。しかし、もちろんそれだけがフレームワークではありません。例えばHibernateのように特定の機能に特化したものも存在します。 最近になって見られるようになってきたのが、「Ajax利用のためのフレームワーク」です。例えば、「Google Web Toolkit(GWT)」などのことです。Javaを使って、Ajax利用のWebアプリケーションを構築するフレームワークです。素のHTMLだけでは実現できないリッチなGUIを、JavaScriptの複雑なコードを書くことなく実現できるフレームワークとして、GWTは広く使われつつあります。 これまで、サーバーサイドのことばかり考えていた感のあるフレームワークの世界に、こうした「クライアントサイドの構築」を重視したものが登場する

    Javaで軽快に使える「軽量フレームワーク」特集~リッチなGUIを構築する「Vaadin」(1)
  • 【ハウツー】クラス構造がまる見えに! UDocでJavaをダイナミックに分析する (1) Ja...

    UML、なかでもクラス図はクラスの関係を把握するうえで欠かせないダイアグラムだ。できれば既存のAPIはクラス図を見て簡単に全容を把握しておきたい。その際に全自動でクラス図を作成できると大変便利だろう。そこで紹介したいのがUDocだ。こうした用途にぴったりのアプリケーションである。 UDocはJava クラスをUMLライクのダイアグラムによって視覚化するGUIアプリケーションだ。Javadoc、Javaバイナリファイル、Javaソースコードなどから動的に UMLライクのダイアグラムを生成できる。生成されるダイアグラムそのものを動的に編集することも可能なので、グリグリといぢりながらクラス関係を解析できるすぐれものだ。動作にはJDK 5.0かそれ以上のバージョンが必要。稿執筆時点の最新版は12日(米国時間)に公開された1.005であり、GNU GENERAL PUBLIC LICENSE Ve

  • javaworld.jp

  • Java読書会BOF

    「Spring徹底入門 第2版 Spring FrameworkによるJavaアプリケーション開発」を読む会 第2回開催のお知らせ 2024-10-23:読書会(Spring徹底入門 第2版 Spring FrameworkによるJavaアプリケーション開発)第1回議事録を掲載しました。 2024-10-21:1月の読書会の日付・会場が変更になりました。 2024-10-08:11月の読書会の日付・会場が変更になりました。 2024-10-07:10月からの新しい課題図書は「Spring徹底入門 第2版 Spring FrameworkによるJavaアプリケーション開発」に決定しました。 2024-09-23:読書会(基礎からのサーブレット/JSP 第5版)第7回議事録を掲載しました。 2024-09-21:10月から始まる「新しい課題図書」の投票を開始しました。 日時:11月23日(土)

    shaw27
    shaw27 2006/07/06
    Effective Java の記録あり