タグ

javaに関するt-satのブックマーク (31)

  • Javaのインストール2023年版 - きしだのHatena

    ちょっとJavaのインストールについて調べてみました2023年版。 Javaにはディストリビューションがたくさんあるので、目につくインストーラーをWindowsで全部ためしてみました。 初心者が勉強するためにJavaをインストールするというときにどれを使うのが手軽か確認するというのが主な目的です。 Oracle JDK Temurin by Adoptium Amazon Corretto Azul Zulu Liberica JDK Microsoft Build of OpenJDK SapMachine OpenJDK SDKMAN! winget OpenJ9 / Semeru Runtime Red Hat Build of OpenJDK GraalVM Scoop いろいろあるので、結論を先に書いておくと次のようになります。 いまPATHの設定が必要なJDKインストーラはない

    Javaのインストール2023年版 - きしだのHatena
  • モダンなJava開発ガイド (2018年版)

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 2018年現在でもJava開発をしていると、Antすら使っていないEclipseプロジェクトにそこそこの頻度で出くわします。Eclipseの自動コンパイルが通ればOKであり、ビルドはExcel手順書をもとに手動で行われ、依存関係ライブラリはもちろんlibフォルダに各種jarファイルが放り込んであります。Eclipse上以外ではどう動かせば分かる人がいないため、コマンドラインからビルドなどを行うことは叶わず、CI化なんて夢のまた夢です。 そんなJava開発から脱却したい人向けのJava開発のモダン化ガイドです。 基的にJava 8以降で

    モダンなJava開発ガイド (2018年版)
  • スレッド名にデバッグ情報を埋め込むと激しく捗る件 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。 今回、Java のちょっとしたデバッグテクニックを紹介したいと思います。Java で運用中何かトラブルが発生した場合、スレッドダンプを取得することはしばしばあると思いますが、スレッドダンプだけだとちょっと情報が足りないことがあります。今回はスレッドダンプから得られる情報を増やして、素早く障害対応したりデバッグに役立てる方法を紹介します。 まずはじめに: スレッドダンプの取り方 基ですが、改めてスレッドダンプの取得の仕方を紹介しておきます。スレッドダンプを取得する対象のプロセス ID を仮に 12345 として、下記のように jstack コマンドを実行すればスレッドダンプが取得できます(※Linux上で操作する想定)。 $ jstack 12345 対象のプロセス ID は ps aux | grep jav

    スレッド名にデバッグ情報を埋め込むと激しく捗る件 - Cybozu Inside Out | サイボウズエンジニアのブログ
  • Java SE 8のラムダ式はどう実現されたのか?──実装の経緯、内部的な仕組みを理解する - builder by ZDNet Japan

    Java SE 8で導入されたラムダ式は、どのような仕組みで実現されているのだろうか? ラムダ式をより深く理解したいと考える読者にとって、これは気になるテーマの1つだろう。その秘密をお教えしよう。 Java SE 8で導入されたラムダ式は、Javaの言語仕様の歴史において最大級の変更だとされている。ただし、これはあくまでもJava言語の文法レベルの話であり、Javaプログラムを実行するJava仮想マシン(JVM)に新たな仕組みが導入されたわけではない。つまり、言語仕様に関する旧バージョンとの相違はコンパイラとランタイムが吸収し、バイトコードレベルでの互換性は保たれているということだ。 それでは、このような大きな変更を、既存のJVMの仕組みの中でどのように実現したのだろうか。それを知ることは、ラムダ式をより深く理解する手助けとなるかもしれない。Java SE 8のラムダ式実現の経緯と仕組みに

  • Android再入門 〜Eclipseのことは忘れろ〜 #nds40 - Qiita

    記事は、長岡IT開発者勉強会#40 初心者Dayで話す内容のドラフトとして書かれたものです。 ※記事は、2015年2月時点での技術に関する時事ネタを多分に含んでいます。ご留意ください。 2/26 この記事のメイキング記事を書きました。 はじめに Androidが世に出た2008年秋からもうすぐ7年が経とうとしています。日で初めてのAndroidスマートフォンであるHT-03Aがドコモから発売された2009年夏からは、もうすぐ6年です。「ツートップ戦略」が記憶に新しいXperiaやGalaxy Sシリーズが出始めたのは2010年ですから、そこからも5年は経とうとしています。 十年一昔、という言葉がありますが、Web方面に関わっていると三年一昔という言葉が脳裏をよぎることすらあります。7年足らずの歴史しか持たないAndroidにとっても、3年という時間は半生と呼ぶに差し支えないものでし

    Android再入門 〜Eclipseのことは忘れろ〜 #nds40 - Qiita
  • あなたがReactを使うべき理由 - mizchi's blog

    最近フロントエンドでfacebook/reactをずっと使っている。世界的には一部のエンジニアの間で流行っているのだが、国内だとqiitaのタグ等を見てもどうも少ない。みんなもっと使うべきだと思うので、宣伝かねて意見をまとめてみる。 複雑化するデータバインドに対する懸念 MVWのVに対して思いを馳せると、だいたい次のことに行き着く。すなわち、「ある構造体の入力に対して、必ず一意なビューを生成したい」 {items: [1, 2, 3]} を入力とすると、 1, 2, 3のli要素になってほしい。これは単純な例だから問題に成り得ないように見えるが、アプリケーション全体の状態を一つのjsonとして定義し、 そこから常に0から組み立てればアプリケーションの健全性が確保できると考えたことはないだろうか? 現実の問題 UIのだいたいの状態は遷移で表現される。遷移の差分をプログラマが記述する。jQue

    あなたがReactを使うべき理由 - mizchi's blog
  • Life of Touch - steps to phantasien

    いいかげんあんどろでも勉強するかと 6 年遅れくらいで重い腰を上げかけている。気が重い。スマホとか知らないっすよ・・・。 あんどろ、というかスマホ固有の話題は色々あれど、その一つがタッチベースの UI なのは間違いない。そういえばタッチというのはどうやって実装されているんだろうか。それを一通り眺めれば、少しは気の重さが晴れるかもしれない。ということで今日はタッチイベントの実装を眺めてみたい。実装といっても静電容量だの電磁誘導だのではなくユーザー空間の話です。そして老人の勉強記録であり目新しい話はありません。間違ってたら教えてください。 参照するコードは何も考えず repo sync で降ってくる AOSP master。たぶんだいたい 4.4.x 相当(だよね?) View#onTouchEvent() あんどろプログラマからみたタッチイベントはふつう View#onTouchEvent(

    t-sat
    t-sat 2014/08/01
    巧妙な猫エントリ。
  • Javaプログラマ必読の実践的テスト指南書『JUnit実践入門』レビュー - 矢野勉のはてなブログ

    2012-12-26 Javaプログラマ必読の実践的テスト指南書『JUnit実践入門』レビュー 渡辺修司さん著『JUnit実践入門』が発売されてからかなり経ってしまいましたが、実はこの、すこしだけレビューにも参加させてもらいました。私は結局少ししかご協力できなかったのですが、それでも献頂きました。レビュー段階からこれはいいになると思って、ぜひレビューを書こうと思ってましたが、遅れに遅れ、今になってしまいました。 JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)作者: 渡辺修司出版社/メーカー: 技術評論社発売日: 2012/11/21メディア: 単行(ソフトカバー)購入: 12人 クリック: 238回この商品を含むブログ (19件) を見る この、私は読者としてプログラマとしてかなり助けてもらってますので、基的に褒めるところしかない

  • Oracle、Javaの脆弱性を修正する緊急アップデートを公開 - @IT

    2012/08/31 米Oracleは8月30日、ゼロデイ攻撃が報告されているJava 7の脆弱性(CVE-2012-4681)を修正する緊急アップデート、「Java 7 Update 7」を公開した。同社は、可能な限り早期にこのアップデートを適用するよう推奨している。 この脆弱性はJava 7 Update 6以前に存在する。Javaが動作する環境であれば、WindowsだけでなくMac OS XやLinuxにも影響が及ぶ。 もし悪用されれば、悪意あるWebサイトにアクセスしただけで任意のコードが実行され、マルウェアを埋め込まれたりする恐れがある。NTTデータ先端技術によれば、細工を施したWebページに誘導することで、ターゲットシステム(Windows XP SP3+Java SE JRE 7 Update 6)の制御を奪取できることが検証できた。このケースではInternet Expl

    t-sat
    t-sat 2012/09/01
    おう、来てた。
  • JVNTA12-240A: Oracle Java 7 に脆弱性

    以下の製品を含む、全ての Java Platform Standard Edition 7 (1.7, 1.7.0) を使用しているウェブブラウザ等のシステム Java SE Development Kit (JDK 7) Update 6 およびそれ以前 Java SE Runtime Environment (JRE 7) Update 6 およびそれ以前 Oracle が提供する Java 7 には、Java のサンドボックスを回避され、任意の OS コマンドが実行可能な脆弱性が存在します。 なお、脆弱性を使用した攻撃コードが公開されており、攻撃も観測されています。

    t-sat
    t-sat 2012/08/28
    "想定される影響" と "JPCERT/CCによる脆弱性分析結果" の組み合わせが分かりにくい。というか2通りに取れる。/アップデートまでは切っとく。
  • 一歩先行く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選 - 設計と実装の狭間で。
    t-sat
    t-sat 2011/06/10
    あとで読…よ…よ…よよよ
  • JRubyの一年を振り返って

    原文: チャールズ=オリバー=ナター 皆さん、こんにちは。 2010年ももうすぐ終わり。この一年を振り返ってJRubyにとって重要な出来事や人々を見て行きましょう。 2010年は、JRubyにとって素晴らしい年でした。様々なプロジェクトに採用され、また、第一級のRuby言語実装としても第一級のJVM言語としても人々に認知され、更にはJRuby自体も多いに進化した一年でした。早速みていきましょう。 JRubyを巡る人々 JRubyの大事な使命の一つは、より多くの人にRubyというプログラム言語を届ける事です。 その為に、世界中を飛び回ったり、ブログ記事を書いたり、援助者を募り、パッチを取り込んだり、ユーザのサポートに努めてきました。2010年特に貢献のあった方々を挙げて行きましょう。 浅里洋嗣氏 浅里氏は2009年を通じて貢献の実績があり、メーリングリストやIRCチャンネルでも、JRubyを

  • Javaジェネリクス再入門 - プログラマーの脳みそ

    ジェネリクスでは、「型」を変数にした「型変数」というものを取り扱う。型変数で何が嬉しいかというと、メジャーな例ではコレクションAPIが挙げられる。java.util.Listとかjava.util.Mapとかのデータを格納するタイプのユーティリティクラスのことだ。 2004年にJavaのバージョンが5.0となるまでは、Javaにはジェネリクスの機能はなかった。なので、Listにデータを格納し、取得する場合は List list = new ArrayList(); list.add("hello!"); String str = (String) list.get(0); といったソースコードになる。 add()の引数はObject型で宣言されており、どんな参照型でもadd()することができた。 get()の戻り値もObject型で宣言されておりキャストが必要だった。このキャストはプログラ

    Javaジェネリクス再入門 - プログラマーの脳みそ
  • Google App Engine をはじめてみよう

    "Google App Engine Java の色々な機能を、実際にコーディングしながら体験してみよう" という主旨のもと、Google App Engine for Java のコードラボをこれまでに3回開催してきました。Java を使った Web アプリケーションの開発経験はあるけれども、App Engine は初めてという方向けで、毎回、即日定員に達してしまう人気コースです。 このコードラボで利用している教材は、GTUG のメンバーとGoogle のソフトウェアエンジニアたちが共同で作り上げたものです。コース設計からドキュメントの制作、コース参加者のフィードバックを反映するなど、さまざまな面でGTUGメンバーの惜しみない協力をいただきました。 そして、いよいよこのコース教材「Google App Engine Code Lab for Java」を一般に公開することになり、3月11

    Google App Engine をはじめてみよう
  • 究極の問題解析ツール、逆コンパイラJD-Eclipseとは

    究極の問題解析ツール、逆コンパイラJD-Eclipseとは:ユカイ、ツーカイ、カイハツ環境!(13)(1/2 ページ) ソースコードがなくても大丈夫? 開発を行っている際に、利用しているミドルウェアやライブラリの内部で例外が発生して、そのクラスのソースコードを調べたくなることはありませんか? 例えば、以下のような場合です。 ほかのチームが開発したモジュールのメソッドが仕様通りの動作をしない仕様通りの動作をしない 処理に時間がかかっているが、何の処理に時間がかかっているのか分からない何の処理に時間がかかっているのか分からない アプリケーションが応答しなくなり、どこかで停止しているのだが、どこで停止しているか分からないどこで停止しているか分からない ソースコードがないため、“やきもき”していませんか? 開発者であれば、誰しもこのような経験をしたことがあると思います。ソースコードがあれば、コード

    究極の問題解析ツール、逆コンパイラJD-Eclipseとは
  • Javaバイトコードの読み方 - プログラマーの脳みそ

    Javaのデバッグをしていて、ステップ実行中にステップインを繰り返したらソースコードのないところに行き当たったことがあるだろう。あるいはEclipseでF3キーでクラスやメソッド・フィールドの宣言元を辿っていってソースコードのないところに行き当たったことがあるだろう。 Eclipseの場合、"Class File Editor"というものが開く。そこにはJavaのバイトコードのニーモニックがズラズラと並んでいて、「これは読めないや、ワケが分からない」と投げ出してしまったりしていないだろうか。 怖がることはない。ちょっとコツを掴めばすぐに読めるようになる。 Class File Editorの開き方 自前のJavaクラスの場合、ビルドして出来上がったclassファイルを開く必要がある。"Package Explorer"だとclassファイルは隠されていて見えないのでWindow -> Sh

    Javaバイトコードの読み方 - プログラマーの脳みそ
  • http://homepage1.nifty.com/open-prog/

  • 2009-12-21 - Secret Sword!!!

    なぜか? おまじないの量が多くなってしまうから 一般的なHelloWorld public class HelloWorld { public static void main(String[] args) { System.out.println("Hello,World!"); } } staticとかStringとかSystemとかmainとか色々難しそう あと、このHelloWorldだと色々省略した結果このコードになっていることに気づけないんじゃないだろうか どうやったら初心者にやさしいJavaになるんだろうか 色々と省略しないで書いてみる public class HelloWorld { public static void main(java.lang.String[] args) { java.lang.System.out.println("Hello,World!")

    2009-12-21 - Secret Sword!!!
  • New language features in Java 7 « JoeJag :: Tech

    I’m just back from the Devoxx conference in Antwerp. An update was given on the new language changes that will be in Java 7. The JDK currently has a release date of September 2010. Here are 7 of the new features that have been completed: Language support for collections Automatic Resource Management Improved Type Inference for Generic Instance Creation (diamond) Underscores in numeric literals Str

  • 第8回 PDFファイルの操作方法

    今回は,仕事でよく使うPDFファイルの操作方法を学びます。Javaを利用して,家計簿をPDFファイルとして作成してみます。ついでにPDFファイルの読み込み方法も覚えることにしましょう。PDFファイルの扱い方を習得すれば,仕事の大きな手助けになるはずです。 皆さんこんにちは,kikainekoです。この連載では,日々の定型的な業務をJavaで自動化してラクする方法を紹介しています。今回は,皆さんが仕事やプライベートでよく使っているPDFファイルをJavaから操作してみましょう! 便利なことに,JavaPDFファイルを操作するためのオープンソースのツールが,いくつか提供されています。今回は,その中でも日語の情報が比較的充実している「iText」というライブラリを使うことにします。iTextを使うと,JavaからPDFファイルを生成することができます(インストール方法は,以下のカコミ記事を参

    第8回 PDFファイルの操作方法