タグ

JavaとProgrammingに関するHF_frt1623のブックマーク (36)

  • Facebook、静的コード解析ツール「Infer」を公開。Objective-C/Java/Cコードのバグを指摘してくれる

    Facebook、静的コード解析ツール「Infer」を公開。Objective-C/Java/Cコードのバグを指摘してくれる Inferが対応するコードはAndroidJavaとiOSのObjective-C、およびC。現時点ではAndroidJavaではNullPointerExceptionおよびリソースのリーク。iOSとCコードではメモリーリークを発見してくれます。 実際にプログラムを実行することなくバグを発見しようとする静的コード解析は、コードをビルドしてテストプログラムなどを実行するよりも迅速にバグを発見できる方法として期待されています。 Inferも、Facebookがより早く高い品質のソフトウェアをデリバリする目的で開発されたものです。下記はInferを発表したブログ「Open-sourcing Facebook Infer: Identify bugs before y

    Facebook、静的コード解析ツール「Infer」を公開。Objective-C/Java/Cコードのバグを指摘してくれる
    HF_frt1623
    HF_frt1623 2015/06/16
    バグの正答率80パーセントなら、使う価値ありと思う。
  • 社内Java8勉強会 ラムダ式とストリームAPI

    先週Java8がリリースされましたが、さっそく社内での開発でも使うことになりそうです。 というわけで、Java8の目玉機能であるラムダ式とストリームAPIについて、社内勉強会を開催しました。 普段の社内勉強会よりも参加者数が多くて、みんなの関心の高さが伺えますね。

    HF_frt1623
    HF_frt1623 2014/03/26
    java 8 で追加された目玉機能について、なんとなく把握できた。コンパクトにまとまっていて、実例も書いてあって分かりやすかった。for 文でまわすよりも、ストリームAPIがHadoop のMapReduce処理に似てて使いやすそう。
  • Android開発者が知らないと損をするXXのこと - ReDo

    ※目指せ100。 ○小判はに渡したくない 「便利なライブラリとかOSS集を教えて欲しい」と、たびたび聞かれるのですが、実際のところ動かして評価しないと分からないんですよね。教えてもキーワードのみ鵜呑みにして使い方間違ってる人とか多くて、結局試行・評価をそれなりのスピードで回せる人じゃないと使いこなせないというか...。 ですが、「知ってる・知らないというゼロイチの差はあるだろう」という指摘をもらい、またどれだけ知っているかのチェックリストとしては使えるのではないだろうか、ということで並べてみることにしました。 使ったことが無いのは挙げていませんが、いかんせん数年経ってますので状況が変わっていたらすいません。 以下、リスト。 Apache Commons http://commons.apache.org/ 「5行+エラー処理」を1行に済ませてくれるUtil群が主体。 IO、Lang、Co

    Android開発者が知らないと損をするXXのこと - ReDo
  • ソースコードを見よう

    ある技術について初心者向けに説明するときに、喩え(たとえ)を使うことがある。確かに、初めて聞く技術を、知っている身近なものに喩えて説明されると、なんだか分かったような気になる。ただし、こうした喩えによる説明の理解度は、説明する側、される側の両者が思っている以上に浅い。 筆者の経験では、オブジェクト指向を説明する際に用いられる喩えがそうだった。例えば、クラスとインスタンスを説明するのにしばしば用いられる、クッキー(菓子)の型とそこから作られるクッキーの喩え。クラス間の階層関係を表す継承の説明では、動物クラスの子クラスに哺乳類や鳥類のクラスがあり、哺乳類クラスの子クラスに犬やのクラスがある、といった喩えをよく聞く。ポリモーフィズム(多態性)の説明は、犬インスタンスに「鳴け」と言うと「ワン」と鳴き、クラスに「鳴け」と言うと「ニャー」と鳴きます、と言った具合だ。 オブジェクト指向についてのこう

    ソースコードを見よう
    HF_frt1623
    HF_frt1623 2012/01/24
    オブジェクト指向はたとえ話をだけでなく、ソースコードと合わせて説明されないと、オブジェクト指向だとどんな利点があるとか本当の理解は難しいと思う。喩えは一分を表すという事ですね #考え方
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
    HF_frt1623
    HF_frt1623 2011/10/03
    図解で分かりやすい説明のサイトを見つけた。
  • 逆コンパイル + 逆アセンブル のための5つの無料ツール (.exeと.classをリバースエンジニアリングするための,フリーソフトの使い方) - 主に言語とシステム開発に関して

    逆コンパイル, および逆アセンブルのための各ツールと,実行手順を列挙する。 .exeと.classが対象。 ※リバースエンジニアリングにあたっては,ソフトウェアの使用契約にくれぐれも留意すること。 (1) .exeファイル 逆アセンブラ 逆コンパイラ (2) Java 逆アセンブラ 逆コンパイラ (3) その他 まとめ ※↑ もくじジェネレータ で自動生成 Windowsのexeファイルと, Javaのclassファイルについて,それぞれ逆アセンブル+逆コンパイルの方法を考える。 (1).exeファイル 逆アセンブラ exeからasm(形式の表示)を生成する方法。 機械語をニーモニック表示し,データセクションもダンプする。 プログラムが利用している文字列定数などは丸見えになる。 ( exeモデル図解の「セクション部」の部分を参照:http://www.geocities.jp/winapi

    逆コンパイル + 逆アセンブル のための5つの無料ツール (.exeと.classをリバースエンジニアリングするための,フリーソフトの使い方) - 主に言語とシステム開発に関して
    HF_frt1623
    HF_frt1623 2011/09/05
    リバースエンジニアリングにあたっては,ソフトウェアの使用契約にくれぐれも留意すること。#DeCompile #Programming #java #.NET
  • Eclipseで逆コンパイルを行う

    ソースコードを入手できないJavaプログラムを修正するときなど、クラスファイルから基になったソースコードの復元が必要になることがあります。このような方法は、ソースコードを「コンパイル」してクラスファイルを生成する通常の流れとは逆になるため、「逆コンパイル」と呼ばれています。この逆コンパイルを行えば、コンパイル時に失われる情報(コメントや定数同士の四則演算など)以外のソースコードを復元することができます。 Javaの逆コンパイルツールはいくつかありますが、稿ではJadとJadClipseというツールを使用して、Eclipse上で逆コンパイルする方法を紹介します。 操作手順 (1)JadとJadClipseのダウンロード Jadはコマンドラインで使用する逆コンパイラで、JadClipseというEclipseプラグインを利用すれば、Eclipse上から使用することができます。JadClipse

    Eclipseで逆コンパイルを行う
    HF_frt1623
    HF_frt1623 2011/09/05
    ソースを無くしたTPの中身を調べるときに使えるかなぁ。※「リバースエンジニアリングにあたっては,ソフトウェアの使用契約にくれぐれも留意すること。」
  • Javaのhello worldの読み方 | mwSoft

    前書き お馴染み、hello worldのソース。 class Hello { public static void main(String[] args) { System.out.println("hello world"); } } このコードはコンパイルされると、こんなバイトコードになります。 ca fe ba be 00 00 00 32 00 22 07 00 02 01 00 05 48 65 6c 6c 6f 07 00 04 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f 62 6a 65 63 74 01 00 06 3c 69 6e 69 74 3e 01 00 03 28 29 56 01 00 04 43 6f 64 65 0a 00 03 00 09 0c 00 05 00 06 01 00 0f 4c 69 6e 65 4e

    HF_frt1623
    HF_frt1623 2011/08/15
    バイトコードを読むとは。
  • 全Eclipse Java プログラマーに捧げる Eclispe 徹底活用術完全版〜Eclipseに空気を読ませて楽する術〜 - Yamashiro0217の日記

    この記事は、http://d.hatena.ne.jp/higayasuo/20090612/1244772658 の「Ctrl+1とCtrl+Spaceうんぬん」の話にインスパイアされて書いた。Eclipse可愛いよ。Eclipse。 記事長いから、さくっと読み飛ばして、アニメーションgifがあるところから読んでも十分訳にたつと思う。 あと、新人さんとかに写経させるのもいいかも。というか、半分ぐらいうちの新人に勉強のためと思って書いたから。で、実際に写経させて役にたった。 Java は Eclipse などの IDE も含めて言語というか、環境というか…だと僕は思ってる。Commons, Maven なども含めたい(まぁ、そのあたりは、CPANも含めてperlだろ。とか、これは否定する人だらけだろうけど、Railsrubyということを言う人もいるよね)。 少なくとも僕は、Eclipse

    全Eclipse Java プログラマーに捧げる Eclispe 徹底活用術完全版〜Eclipseに空気を読ませて楽する術〜 - Yamashiro0217の日記
    HF_frt1623
    HF_frt1623 2011/07/18
    テストも含めた初期設定
  • wise9 › JavaとJavaScriptの20年戦争

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

    HF_frt1623
    HF_frt1623 2011/05/31
    javaとjavascriptの歴史。なんとも面白い。
  • これからの「パスワード」の話をしよう

    HF_frt1623
    HF_frt1623 2011/05/08
    Webサイトのパスワード管理について。具体的なソース付き
  • JUnit.org

    The 5th major version of the programmer-friendly testing framework for Java and the JVM User Guide Javadoc Code & Issues Q & A Support JUnit JUnit team’s statement on the war in Ukraine As human beings, we stand with Ukraine and condemn the Russian government’s war against the Ukrainian people, including our own colleagues and their families. Donate to UN’s Ukraine Humanitarian Fund About JUnit 5

  • Googleが開発したJavaデバッグを簡単にする新技術「cofoja」 | エンタープライズ | マイコミジャーナル

    Java Programming Language Googleの20%プロジェクトからJava向けの新しい技術「cofoja (Contracts for Java)」が公開された。既存の実装に大きく手を加えることなく、デバッグをより簡単にしてくれる効果が期待できる。バグは些細なコードが起こすものだったりするが、それを追跡して発見するのは時に困難を極める。これは問題が発生した箇所と、実際にバグがある箇所が大きく離れていることが理由になっていることもある。問題発生箇所とバグ発生箇所を近くにまとめることができれば、それだけバグ発見も取り組みやすくなる。 cofojaはこれを簡単に実現するための技術。インタフェースに制約表現を追加可能にするところがポイントとなっており、クラスの実装に手を加えなくてもインタフェースに制約表記を追加することで実行時にチェックできるようになる。ブログに掲載されている

    HF_frt1623
    HF_frt1623 2011/02/08
    これが20%で生み出したのか
  • 頑健なJavaプログラムの書き方

    日頃より、アレスネットをご愛顧いただきまして誠にありがとうございます。 「ホームページサービス」のサービス提供は2016年1月31日をもちまして終了させていただきました。 これまで長らくご利用いただき、誠にありがとうございました。 今後も、皆様によりよいサービスをご提供させていただけるよう、サービス品質向上に努めて参りますので、何卒、ご理解いただけますようお願 い申し上げます。 <アレスネットをご契約のお客様へ> 後継サービスとして「userwebサービス」を提供させていただいております。 詳しくは、以下のリンクをご参照ください。 ▼「userwebサービス」のご案内 http://www.ejworks.info/userhp/alles/index.html 今後ともアレスネットをご愛顧いただけますようお願い申し上げます。 株式会社イージェーワークス アレスネット カスタマーサポート

    HF_frt1623
    HF_frt1623 2010/09/14
    java でプログラムを書く前に押さえておきたいところ。
  • eclipsewiki.net - eclipsewiki リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    HF_frt1623
    HF_frt1623 2010/07/27
    日本語のWikiページ参考にする。
  • Eclipse - The Eclipse Foundation open source community website.

    Projects The Eclipse Foundation is home to the Eclipse IDE, Jakarta EE, and hundreds of open source projects, including runtimes, tools, specifications, and frameworks for cloud and edge applications, IoT, AI, automotive, systems engineering, open processor designs, and many others.

    Eclipse - The Eclipse Foundation open source community website.
    HF_frt1623
    HF_frt1623 2010/07/27
    eclicpse の本家サイト
  • Deep Side of Java~Java 言語再入門

    この「Java言語講座」は、あるソフトハウスでの講座を元にして作られている。そのため、「初めてプログラムをするんだけど、Java が流行っているみたいだから勉強してみたい」という人にはまったく向いていない。そのような人のための雑誌・書籍・Webページは山のようにある。→ 裏ページ「Humorous Side of Java」 このページは、Java の Deep Side について筆者が研究した結果がかなり含まれている。また、主として参考にしたJava固有の資料は次の通り。 「The Java 言語仕様」(ゴスリン,ジョイ,スティール、アジソン・ウェスレイ) 「The Java 仮想マシン仕様」(リンドホルム,イェリン、アジソン・ウェスレイ)。これらはSun社自身による、それも開発者自身による最もディープな専門書籍であり、大変役に立つ(というか筆者レベルだとこういうじゃないと役に立たない

    HF_frt1623
    HF_frt1623 2010/07/20
    Javaプログラミングの参考にする。関連ページには、log4j の解説ものっていてためになる。
  • プログラマーの常識をJavaで身につける

    プログラマーの常識を学ぶ前に プログラマーの常識をJavaで身につける(1) Javaコアパッケージには、あなたが知らない意外な発見がまだまだあるはずです。そこから、さまざまな「常識」を学びましょう

  • JavaとDOMによるXML文書の操作

    Contents メモリ上にXML文書を作成する XML文書(白紙)を作成する ルート要素を作る 子要素を追加する 属性を追加する ここまでのコードをまとめると 各種ノードを作成するメソッド メモリ上のXML文書の内容を取得する ノードツリーを辿って目的のノード見つける 要素名から目的のノード見つける 属性ノードを取得する ノードの各値を取得する ノードタイプ一覧 属性ノード プログラム例 メモリ上のXML文書の内容を変更する 要素を追加する 要素の値を変更する 要素を置き換える 要素を削除する 属性の値を変更する 属性を変更(なければ追加)する 属性を追加する・置き換える 属性を削除する メモリ上のXML文書をファイルに出力する ファイルからXML文書をメモリ上に読み込む WebからXML文書をメモリ上に読み込む メモリ上にXML文書を作成する XML文書(白紙)を作成する まず、 Do

    HF_frt1623
    HF_frt1623 2010/07/13
    基本的な扱い方が一覧にされている。
  • 拡張for文を使う理由 - [Seasar]soichirooooo5の日記

    JDK1.5から利用できる拡張for文を使う理由をまとめました。 見た目がシンプルだから 確かにシンプルです。 List<String> strList = new ArrayList<String>(); //要素追加 //これまでのfor文 for(int i = 0; i < strList.length; i++){ System.out.println(strList.get(i)); } //これからのfor文 for(String str : strList){ System.out.println(str); } しかし、理由はこれだけではありません。 パフォーマンスも上がるから 実はこれは半分嘘です。 strArrayがArrayList型であった場合、「これまでのfor文」のようにgetした方が30%程度パフォーマンスが上がります。 ですが、仮にstrArrayがLin

    拡張for文を使う理由 - [Seasar]soichirooooo5の日記
    HF_frt1623
    HF_frt1623 2010/07/12
    拡張for 文の利点