タグ

tipsとProgrammingに関するtridentfieldのブックマーク (11)

  • 時代は AsyncTask より AsyncTaskLoader

    時代は AsyncTask より AsyncTaskLoader Android 4.0、通称 Ice Cream sandwich というスマートフォンもタブレット端末もカバーする新しい OS がもうすぐデビューするとかいう時期なので、Android プログラミングもそれの普及をにらんだ実装に切り替えていくべき。 まずは、きっと Activity 上での非同期処理に多用されているであろう AsyncTask を、Android 3.0 以降で追加された AsyncTaskLoader へ乗り換えるところから始めるのもいいんじゃないかと思ってちょっと書いてみます。 あ、これは Activity での非同期処理について、という前提での内容になりますので、たとえば Service の中で非同期処理したい場合はどうすれば的な質問には役に立たないと思います。 いくら 4.0 がリリースされたとはい

    時代は AsyncTask より AsyncTaskLoader
  • AsyncTaskでユーザビリティを向上させる | Techfirm Android Lab

    こんにちは。daichi1128です。 前回はHTTP通信をしてTwitterのタイムラインを取得、表示しました。 AndroidTwitterのタイムラインを取得する【XmlPullParser】 | Techfirm Android Lab ですが、前回までではユーザのアイコンは動的に表示しておらず、決め打ちで出しているだけでした。それではあまり意味がないので、今回は画像取得部分をやることにします。 ただし、メインスレッド上で画像取得をしてしまうと、取得中はユーザからの操作を全く受け付けない、使い勝手の悪いインターフェースになってしまいます。 そこで、ユーザ操作を受けつけつつ、画像を取得するために、別スレッドで処理を行います。 アプリケーションのユーザビリティを向上させるためには、この非同期処理は必須といえます。今回でマスターしてしまいましょう。 さらに、ついでなので無駄なネット

    tridentfield
    tridentfield 2011/09/26
    Androidで非同期処理。
  • JavaScriptコーディング等を書く上でのパフォーマンス確認事項30:phpspot開発日誌

    30 best practices to boost your web application performance - Web User Interface Architect JavaScriptコーディング等を書く上でのパフォーマンス確認事項30。 自分へのインプット&メモがてらにちょっとまとめてみます。 JavaScript DOMの操作は可能な限りやめる eval, new Function() は遅いので可能な限り使わない withステートメントを使わない(使った事ないですが) for-in 文ではなく for 文を使う。 ループの中で try-catch ではなく、try-catchの中にループを置く グローバル変数をなるべく使わない aaa+='AAA';aaa+='BBB'; の方が aaa+='AAA'+'BBB';より速い 複数の文字列連結には、Array で文字列

  • ビュー (UIView) の階層構造をダンプする非公開の便利メソッド - 24/7 twenty-four seven

    標準 SDK で提供されているクラスがどういう構造になってるか参考にしたいとか、ちょっとしたカスタマイズをしたいとか、そういうときにビュー構造をダンプしたりすることはよくあると思います。 下記のようなメソッドを書いてもいいのですが、実は UIView には便利なメソッドが提供されています。 - (void)explode:(id)aView level:(int)level { doLog(level, @"%@", [[aView class] description]); doLog(level, @"%@", NSStringFromCGRect([aView frame])); for (UIView *subview in [aView subviews]) { [self explode:subview level:(level + 1)]; } } それが次の2つです。rec

    ビュー (UIView) の階層構造をダンプする非公開の便利メソッド - 24/7 twenty-four seven
  • ツールバーのボタン (UIBarButtonItem) の隠し API - 24/7 twenty-four seven

    @iphone_dev_jp ツールバーとかタブバーによくある「現在地を表示」のボタン画像(あのライフルのスコープみたいなアイコンの)はシステム標準でないですよね。自分で作らないとダメなんですかね。 takoyaki0330 on Twitter: "@iphone_dev_jp ツールバーとかタブバーによくある「現在地を表示」のボタン画像(あのライフルのスコープみたいなアイコンの)はシステム標準でないですよね。自分で作らないとダメなんですかね。" 上記の「現在地を表示」ボタンに限らず、Safari の「戻る」ボタンや、写真.app の「ゴミ箱」ボタンなど、標準アプリで使われているアイコンなどはすべて提供されているわけではありません。 実はそれらのアイコンは非公開ではありますが API に存在します。 UIBarButtonSystemItem に 100 〜 110 までの値を直接指定す

  • PythonでBASIC認証 - みずぴー日記

    30分プログラム、その572。PythonでBASIC認証をやってみる。 PythonでBASIC認証をやる流れは、 パスワードをマネージャ(Mgr)に登録する マネージャからhandlerを作る handlerからopenerを作る(build_opener) openerをインストールする(install_opener) urlopenでURLを開く となる。 なんかややこしい気がする。たぶん、最初にopenerをインストールしてしまえば、後は認証については気にしなくてもいいのが利点なんだろう。 使い方 $ python basic.py Username: mzp Password: **** <?xml version="1.0" encoding="UTF-8"?> <statuses type="array"> <status> <created_at>Wed Apr 29 1

    PythonでBASIC認証 - みずぴー日記
  • Java Programming Tipsクラスローダーを自作する方法

    【概要】 クラスローダーを自作する方法の紹介。クラスローダーの自作が有効なケースとして代表的なものは次の通り。 ・同一 FQN で異なるクラスを扱いたい(複数バージョンのライブラリを同一 JVM 上で取り扱いたいときなど) ・クラスの定義を Jar ファイルからの読み込み / HTTP からのクラス定義のロードなどの標準的な方法ではなく、独自の方法で動的にロードできるようにしたい。 【キーワード】 クラスローダー、ClassLoader、自作、つくり方 1. DirectoryClassLoader の作成 今回はクラスローダー作成のはじめの一歩として、極めてシンプルで原始的、かつ不完全なクラスローダーを作成する。具体的には指定されたディレクトリに格納されているクラスファイルを動的にロードするだけの DirectoryClassLoader を作成する。 import java.io.Bu

    Java Programming Tipsクラスローダーを自作する方法
  • Java/Tiger/Annotation - きのさいと

    tridentfield
    tridentfield 2009/07/25
    アノテーションの作り方
  • Throwableについて本気出して考えてみた - 都元ダイスケ IT-PRESS

    Throwable、Exception、RuntimeException(RTE)、Errorあたりを整理しながら、色々考えてみた。私見に基づくので、間違っているかもしれないけれど、自分としては頭が整理できたかな、と感じたので晒してみる。異論があったらコメントください。 まず、一番基礎的なところで、継承関係の整理から。こんなツリーになっています。 Throwable Error Exception RuntimeException そして、稿での用語の定義。caller=呼出す側のコード callee=呼出される側(throwする側)のコードとします。 Throwable Throwableは「throw文に指定できる何か」という意味ですね。 Instances of two subclasses, Error and Exception, are conventionally used

    Throwableについて本気出して考えてみた - 都元ダイスケ IT-PRESS
  • Rubyのハッシュテーブルの仕組みを徹底的に理解する - ザリガニが見ていた...。

    ハッシュとは 一般的に理解すると抽象的で分かり難くなってしまうが、ハッシュとは、あるデータから、一定の計算をして求めた、目的に沿った数値、と思っている。それでは、どのような目的に利用されるのか?自分の知識で考えてみた。 暗号化 webアプリケーション等で、パスワードをDBに保存する時、生のパスワードをハッシュに変換して保存する。 Digest::SHA1.hexdigest等で求めたハッシュから、元のデータを復元するのが非常に困難という特性を利用する。 保存しているパスワードハッシュが、たとえ漏洩したとしても、不正利用を防止できる。 パスワードを照合するときも、ハッシュに変換して、保存しているパスワードハッシュと一致するかどうかで判断する。 同等の確認 長い文字列データを比較する時、全ての文字が等しいかチェックするのは非常に時間がかかる。 しかし、長い文字列データをハッシュに変換しておき、

    Rubyのハッシュテーブルの仕組みを徹底的に理解する - ザリガニが見ていた...。
  • Java SE 6 じゃじゃ馬ならし StAX

    ストリーミングで XML - StAX 第 3 の刺客? 今まで、Java で XML を扱うのには 3 種類の方法がありました。 DOM SAX JAXB JAXB はちょっと毛色が違うので、単に XML をパースするならば DOM か SAX です。 ところが、Java SE 6 では新たにもう 1 つパーサが追加されました。 それが今回紹介する Streaming API for XML、通称 StAX です。StAX は JCP の JSR-173 で策定されており、BEA がスペックリードになっています。 さて、この 3 つのパーサの違いというのは何なのでしょう。よく説明されるのが、 DOM - オブジェクトモデル SAX - プッシュモデル StAX - プルモデル というものです。 DOM がオブジェクトモデルというのはすぐに分かりますね。DOM ツリーとしてヒープに持つわけ

  • 1