タグ

Javaに関するsakefのブックマーク (48)

  • log4jの脆弱性について

    log4jとはJava用のloggingライブラリだ。loggingライブラリというのはログとして記録すべき文字列を受け取り、それをどこかに出力するものだ。文字列の中身を通常のloggingライブラリは気にしない。 log4jが通常のloggingライブラリと違うのは、文字列の中身を見て、一部の文字列を変数とみなして置換することだ。これはlog4jのドキュメントではlookupと呼ばれている。 Log4jLog4j 2 Lookups 例えばプログラムを実行中のJava runtimeのバージョンをログに含めたい場合は、"Java Runtime: ${java:runtime}"などとすると、"Java Runtgime: Java(TM) SE Runtime Environment (build 1.7.0_67-b01) from Oracle Corporation"などの

  • GitHub - mixi-inc/AndroidTraining: Training course repository for android app development

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - mixi-inc/AndroidTraining: Training course repository for android app development
  • volatileとか使うなと怒られた話 - 谷本 心 in せろ部屋

    JJUG Night Seminar ~ Java VM<&納涼会 ~ http://kokucheese.com/event/index/48437/ に参加してきました。 「スタックマシンとしてのJavaVM」なんて言う 一見さんお断りみたいなタイトルに集まった人たちはもちろんレベルが高く 参加者のjavap経験率が20%ぐらいになるなど、なかなか偏った集客具合でした。 そんな中、私もLTでBTraceの話をしようと、45枚のスライドと、2種類のデモを用意していました。 ただ客層を考えるに、最近Twitterでちょっと呟いていた 「longに複数スレッドから値を代入すると、想定外の値になる」話をした方が良いんじゃないかと思い、 観客にどちらが聞きたいか尋ねてみたところ、longの方が圧倒的人気。 そんなわけで、45枚のスライドをドブに捨てて(いつか再利用するよ!) スライドなしで、lo

    volatileとか使うなと怒られた話 - 谷本 心 in せろ部屋
  • Java変態文法最速マスター - プログラマーの脳みそ

    Java基礎文法最速マスター - いろいろ解析日記をリスペクト。 Javaの変態文法・技法一覧です。Javaの基礎をある程度知っている人はこれを読めばJavaの変態をマスターしてJavaを書くことができるようになっています。簡易リファレンスとしても利用できると思いますので、これは足りないと思うものがあれば教えてください。 1.基礎 エンクロージング型内部classの作成 外部classのインスタンスに紐付くインスタンスを生成します。外部クラスのインスタンス - 内部クラスのインスタンス間に、クラス - インスタンスのような関係を持たせることができます。 public class Outer { public class Inner { } } というようなクラスを作った場合、 Outer o = new Outer(); Inner i = o.new Inner(); となります。new

    Java変態文法最速マスター - プログラマーの脳みそ
    sakef
    sakef 2012/08/27
  • Java のチェック例外と非チェック例外の考察まとめ - 全力で怠けたい

    世間ではオワコンと揶揄されることも珍しくない Java ですが、Java を初めたばかりのエンジニアがチェック例外と非チェック例外の使い分けについて「ベストプラクティスないの?」と調べたのをまとめてみました。 エントリまとめ どのエントリも Java についての深い洞察と開発の実践現場での生きた経験をもとに書かれていて大変に勉強になりました *1 エントリ中からリンクされているエントリもぜひ一読されることをおすすめします。 検査例外と非検査例外(実行時例外)をどう使い分けるか - Lino Blog Java言語のチェック例外は当にGood Partなのか? - 達人プログラマーを目指して Javaのチェック例外はクソ仕様 - やさしいデスマーチ 例外の扱いについて その2 - じゅんいち☆かとうの技術日誌 「検査例外はアジャイルやオブジェクト指向の考えに反するという事実」について一部誤

    sakef
    sakef 2012/07/29
  • Android NDKを使用してJava言語とC言語で速度比較をする(画像処理編) | Techfirm Android Lab

    つまり、以下のコードでピクセル毎にRGBカラーを取得できるということですね。 red = (pixels[i] & 0x00FF0000) >> 16; green = (pixels[i] & 0x0000FF00) >> 8; blue = (pixels[i] & 0x000000FF); つぎに、配列をJavaからC言語に渡すときの説明。。。。 この処理をC言語で行いたいために、この第1引数のint配列をJavaからC言語に渡せればいいですね。方法は以下のようにしました。 ・Java言語側 //画像を取得する Resources r = getResources(); Bitmap bitmap = BitmapFactory.decodeResource(r, R.drawable.sea); //画像を表示する imageView.setImageBitmap(myBitma

  • Bitmap.setPixel()をsetPixels()に変えたら3倍速くなったよ

    ずいぶん前に画像をモザイク風に加工するエントリを書きましたが、あれを少しいじったらだいぶ早くなりましたよ、というご報告です。 こんなコードでモザイク処理に350~360msくらいかかってました @Override public void onPictureTaken(byte[] data, Camera camera) { BitmapFactory.Options options = new BitmapFactory.Options(); options.inSampleSize = 8; bitmap = BitmapFactory.decodeByteArray(data, 0, data.length, options); Bitmap b = bitmap.copy(Bitmap.Config.ARGB_8888, true); Log.d("CameraSample",St

  • Paros - 情報セキュリティWiki - セキュアなWebアプリケーション構築のために

    はじめに Parosは、Javaで書かれたWebアプリケーション用セキュリティ評価ツールです(開発元:ProofSecure.com )。プロキシとして動作するため、サーバとクライアント間のHTTPおよびHTTPSデータ(Cookieやフォームフィールドを含む)を傍受し、変更することを可能にします。Parosの主な機能には、HTTPメッセージの閲覧/編集機能(クライアント証明書にも対応)、プロキシ連鎖機能(別のプロキシサーバへクライアントからのリクエストを転送する機能)、フィルタ機能、脆弱性スキャナ機能などがあります。 ユーザガイドは、Paros の各種機能およびGUIインターフェースについて説明したものです。 対応プラットフォーム: Parosは、プラットフォームの種類を問わず、広範囲のユーザ向けに開発されたツールです。ただし、実行するには、Java Run Time Environm

  • Javaゲーム制作記 木材追加&剛体の衝突

    遅くなりましたがつぶつぶ2に木材を追加しました。 最初の剛体です。よく燃えます。 システムが大きく変わったのでソースを丸コピする訳にもいかず、 なかなか実装に時間がかかりました(特に分裂処理…)。 船 表面温度は最大900度近くまで達する 今更気付いたんですが、Rubberと繋げられるようにしておくの忘れてました。 びよんびよん出来ませんね。 すみませんがまた次回に・・・ ちなみに今回から粒子にアンチエイリアスがかかってます。 四隅に点を追加しただけですが、だいぶ滑らかな印象になりました。 以下おまけ(編?)ですが、剛体の衝突についてもう一度考えてみました。

  • Javaゲーム制作記 剛体シミュレーション手法

    ※説明には間違いがあるかもしれません。くれぐれも自己責任でお願いします。 もし見つけたら報告してくださるとうれしいです。 P.S.間違いだらけでした。とりあえず修正しておきました 今日は、2Dの剛体シミュレーションについて書きます。 剛体とは、 形の変形が全く無い物体です。 要するに、 「とてつもなく(無限に)硬い」 と理解していてOKです。 剛体シミュレーションにも拘束ベースやペナルティー法などいろんな手法がありますが、 今回説明するのは、ペナルティー法です。 ペナルティー法とは、剛体間にめり込みが発生したときに、めり込み量に応じて力を与えるという手法です。 (めり込んだら押し戻そう方針) 剛体シミュレーションにおいて、一番重要なのは、 「どう衝突を検出するか」 と、 「どう衝突応答をするか」 の二つです。 これが決まれば(そして正確に計算すれば)、後は物理法則に応じて結果が得られます。

  • Javaゲーム制作記 ミリ秒のsleepで正確にFPSを固定する方法

    いろいろな方法があるようですがどうも問題があったりしたので 自分なりのやり方を書いておきます。 いろいろ省略してありますがこんな感じのメインループを作ったとします。 while(!finished) { update(); // メイン処理 Thread.sleep(16); // 休止 } 休止の部分には、60FPSになるように 1000÷60=16.66666...≠16 ミリ秒休止をしています。 しかしこれではメイン処理に時間がかかったとき遅れてしまいます。 実行・休止全部含めて16ミリ秒でないといけないのです。 そこで、以下のように修正します。 while(!finished) { long oldTime = System.currentTimeMillis(); update(); // メイン処理 long newTime = System.currentTimeMillis

    sakef
    sakef 2011/10/30
    ミリ秒のsleepで正確にFPSを固定する方法
  • Android カメラプレビューをキャプチャする | TechBooster

    複数のカメラを使う https://techbooster.org/andriod/device/2358/ カメラの使用方法(2) https://techbooster.org/andriod/device/362/ パーミッションの設定 カメラ機能を利用するにはパーミッションの設定が必要です。忘れないように、はじめに追加しておくとよいでしょう ■AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.jpn.techbooster.sample.camerapreviews" android:versionCode="1" android:versionName

  • 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

    sakef
    sakef 2011/08/15
     おもしろい!
  • Android開発者のためのJNI入門 JNIの基本 | TechBooster

    今回はJNIについて解説します。 記事はAndroid Developersの開発ガイドラインを意訳(一部わかりやすい表現に変更しています)しています。Android NDKを使いたいなど、より高速化を求める、効率的な処理を知りたい開発者にはおすすめの内容です。 興味を持ったら是非、元記事もご確認ください。 JNIはJava Native Interfaceの略称で、Javaとネイティブコード(C/C++)を連携するための仕組みです。共有ライブラリからの動的読み込みをサポートしています。今から説明する利用方法は、ややこしいですが理解して使いこなせば、Javaとネイティブコードをつないだ非常に効率的なコード生成が可能です。 さらに詳細な仕様については JNI spec for J2SE 6 を参照して下さい、より実践的なJNIプログラミングを習得したければ、JNI Programmer’s

  • Enum Factory Pattern - Cheese Pie

    Androidでカメラアプリを作っていて、画像に対するフィルタを設定値からインスタンス生成して適用したい。 そこでFactory patternでやっていたのですが、Enum factory patternというのを見つけて、こっちの方が全然シンプルだし柔軟そう!と思い書き換えてみました。 package com.cheesepie.filter; public enum Filters { MONOTONE ("monotone"), SEPIA ("sepia"), DEFAULT ("default"); private Filters(String name) { this.name = name; } public String toString() { return name; } public IFilter get() { switch (this) { case MONO

    Enum Factory Pattern - Cheese Pie
  • アスキーアートを画像に変換するスクリプトまとめ。 - あまたの何かしら。

    AAを画像にするす スクリプトなら、いろいろ公開されてるけど、記事には書かなかった。あとでまとめよう。 2010-10-18 16:30:53 via Twitter for iPhone ということで、リンクだけ。 Java でアスキーアート画像を生成する - IT戦記 やる夫AAを画像にするお - mojalog PythonとPILでアスキーアートを画像化 - yattの日記 AAで俺の嫁を軽く画像化してみた。 - 低学歴エンジニアの戯言。 AA(アスキーアート)を画像に変換 - Under Construction, Baby オフライン版AAぴんが〜 awk でアスキーアート画像を生成する - AWK Users JP おまけとして、簡単に使える変換器。 アスキーアート(AA)を画像でキレイに表示するよ! アスキーアート画像化

    sakef
    sakef 2011/07/02
    画像をAAに変換。
  • Androidプログラミングの小技を3つほど - しぶさわロケットのブログ

    昨日は音声再生でハマってあまり進まなかったので、今日も帰宅してからプログラミングをしていました。なぜかとても調子良く進んだので、役立ったテクニックを書いておきます。 小技1 今、効果音を再生するアプリを作っているのですが、普通に音量を変更しようとすると、着信音の変更になってしまいます。当はメディアの音量の変更がしたいのに…と思ってググったところ、Techfirmさんのブログにズバリ解決策が。 どうやら setVolumeControlStream(AudioManager.STREAM_MUSIC); をActivityのonCreate()メソッド内に記述するだけとのこと。早速やってみたら、できました。 こういう、ごく普通のことができるようになるってすばらしい。 小技2 またまたTechfirmさんのブログを参考に、音の再生ON/OFF等の設定画面を作成しました。PreferenceA

    Androidプログラミングの小技を3つほど - しぶさわロケットのブログ
  • Javaゲーム制作記 マグマと水蒸気

    つぶつぶにマグマ(+水蒸気)を追加しました! ゼラチンをゼリーに変更したり、表示を変えたりなどもしました。 ようやく遊べるようになってきた感じです。 後は木材とか剛体系があればいいかなと。 後ゲームのサムネイルも変更しました。

  • Javaゲーム制作記 ぶよぶよしたもの

    つぶつぶにぶよぶよした物を追加しました!ゼラチンもどきです。 マウスをクリックしている間だけ液体になります。 型を作って流し込んだり、千切ったりといろいろできるので遊んでみてください。 一度千切れたら元には戻りません。 そろそろ気体がほしいなーとか思ってます。

  • 一歩先行く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選 - 設計と実装の狭間で。
    sakef
    sakef 2011/06/12