タグ

javaに関するkicyonのブックマーク (12)

  • throw Life - AndroidのHandlerとは何か?

    AndroidでWeb APIを使う場合、マルチスレッドによるユーザビリティ向上を以前のエントリで説明しました。 AndroidアプリのUIはシングル・スレッド モデルです。 単純にマルチスレッドにしてUIの操作をしてしまうと、CalledFromWrongThreadExceptionでアプリがダウンしてしまいます。 これを回避する仕組みがHandlerです。 Handlerの仕組みを簡単に説明しようと思ったのですが、 またもや長くなってしまったので、先にまとめます。 AndroidUI操作はシングル・スレッド モデル ユーザビリティ向上の為にはマルチスレッドが必要 Handlerで実現 Handlerを使わない場合に起きる例外は実行スレッドのチェックで発生 Handlerを使うと、UI Threadの持つキューにジョブを登録できる キューはUI Threadにより実行される

  • JavaのURLエンコード、デコード - ウィリアムのいたずらの、まちあるき、たべあるき

    ウィリアムのいたずらが、街歩き、べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も) たいした話ではないです。あくまでも、忘れないように、自分へのメモ。 サーブレットの場合、URLエンコード、デコードはrequest.getParameter()でやるので問題ないといえばないんだけど、getParameter()をつかわず、 ServletInputStream si = request.getInputStream(); という形で、InputStreamでとってきてしまった場合、エンコードはされていない。 これ以外でも、URLエンコードしたいとき、デコードしなくちゃなんないときというのがある。 そーいったときの、Javaでのエンコード、デコードの方法。 java.net.URLDecoderでデコード、URLEncoderでエンコードする。 なので、それらをi

    JavaのURLエンコード、デコード - ウィリアムのいたずらの、まちあるき、たべあるき
    kicyon
    kicyon 2012/04/20
  • 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

    kicyon
    kicyon 2011/08/24
  • XML Parser for Javaの使用

    前提条件 Oracle XML Parserは、XML文書を読み込み、DOMまたはSAX APIを使用して、そのコンテンツと構造へのプログラム・アクセスを可能にします。このパーサーは検証モードまたは非検証モードで使用できます。 この章では、次のテクノロジを十分に理解していると想定します。 ドキュメント・オブジェクト・モデル(DOM): DOMは、XML文書の構造を示すメモリー内ツリー表現です。 Simple API for XML(SAX): SAXは、イベントベースのXML解析の標準です。 Java API for XML Processing(JAXP): JAXPは、JavaアプリケーションでXMLを処理するための標準インタフェースです。DOM標準とSAX標準をサポートします。 Document Type Definition(DTD): XML DTDは、XML文書の有効な構造を定

  • ドラゴンボールで学ぶオブジェクト指向 改(第弐話) - 達人プログラマーを目指して

    ドラゴンボールでオブジェクト指向の学習という元ネタのアイデアがうけたのか、ドラゴンボールで学ぶオブジェクト指向 改 - 達人プログラマーを目指しての記事がかなり大きな反響がありました。前回の記事では、クラス図とデザインパターンを使った設計により、ドラゴンポールの世界をモデル化する例について説明しました。ただし、この説明の内容だと、静的なモデリングに偏っていたところもあり、具体的にどのようにプログラムの設計に役に立つのかという点が見えにくいところがあったかもしれません。今回は、前回説明しきれなかった、いくつかの点について、もう一歩踏み込んで説明してみたいと思います。 プログラミング言語におけるクラスとオブジェクト 前回の記事では、概念的なオブジェクト指向モデリングの観点から、 クラス→複数のオブジェクトが共通で満たす性質(属性や振る舞い)を概念として表現したもの。(地球人武道家、サイヤ人、戦

    ドラゴンボールで学ぶオブジェクト指向 改(第弐話) - 達人プログラマーを目指して
    kicyon
    kicyon 2011/06/28
  • ドラゴンボールで学ぶオブジェクト指向 改 - 達人プログラマーを目指して

    ドラゴンボールといえば、大変に人気の高い国民的、いや世界的な漫画、アニメですが、昨日匿名ダイアリーでドラゴンボールをネタにしたオブジェクト指向の解説がホッテントリに入っていました。 ドラゴンボールで学ぶオブジェクト指向 多くの人に親しみやすい題材でオブジェクト指向の考え方を解説するというのは非常に興味深い試みなのですが、オブジェクト指向の説明としては不適切なところがあり、ちょっと残念な内容になっています。私自身ドラゴンボールの専門家(ドメインエキスパート)ではないため、不正確なところがあるかもしれませんが、ストーリーを思い出しながら、私なりにドラゴンボールをネタとしたオブジェクト指向の解説にリトライしてみたいと思います。 なお、オブジェクト指向でもプログラミング言語によって表現できる内容が異なるため、当然設計技法は違ってきます。ここではJavaC++、C#、Visual Basicといっ

    ドラゴンボールで学ぶオブジェクト指向 改 - 達人プログラマーを目指して
    kicyon
    kicyon 2011/06/28
  • いまさらですが、職業Javaプログラマーなら理解しておいてほしい「継承」の意味について - 達人プログラマーを目指して

    正しく意味を理解している方にとっては、まったく常識レベルの話であり、何をいまさらと思われる方々も多いかと思いますが、大規模案件のレガシーコードなど、私が仕事で見かけるJavaのコードを読むと、「このコードを書いたSEやPGの方々は、はたして継承の意味を正しく理解していないのではないか」と思われる設計のコードに出会うことが少なからずあります。現在では改良されましたが(Javaプログラミング能力認定試験の問題がかなり改善されていました - 達人プログラマーを目指して)、以前のJavaプログラム認定試験の問題は、そうした不適切な設計がされている典型的な例となっていたのですが、実際、SI業界ではあのような品質のコードのシステムが今でも現役で多数稼動しているというだけでなく、現在でも新たに生み出されているというのは残念ながら紛れもない事実のようなのです。 確かに新人研修で「哺乳類を継承して犬クラスと

    いまさらですが、職業Javaプログラマーなら理解しておいてほしい「継承」の意味について - 達人プログラマーを目指して
    kicyon
    kicyon 2011/06/24
  • Apache Commons – Apache Commons

    Welcome to Apache Commons Apache Commons is an Apache project focused on all aspects of reusable Java components. The Apache Commons project is composed of three parts: The Commons Proper - A repository of reusable Java components. The Commons Sandbox - A workspace for Java component development. The Commons Dormant - A repository of components that are currently inactive. You may also read our ch

    kicyon
    kicyon 2011/06/14
  • Javaを使うなら必ず覚えておきたいデータ構造 - 配列・リスト・マップ - いろいろ解析日記

    Javaを使う場合に必ず必要になるデータ構造 - 配列・リスト・マップの使い方について簡単に説明します。 目次 配列 配列を生成する。 配列にデータを格納する。 配列からデータを取得する。 配列中のすべてのデータに同じ処理をする。 リスト (注) リストを使うにはimport文が必要 リストを生成する。 リストにデータを追加する。 リストからデータを取得する。 リストのデータを置き換える。 リスト中のすべてのデータに同じ処理をする。 マップ (注) マップを使うにはimport文が必要 マップを生成する。 マップにデータを格納する。 マップからデータを取得する。 マップ中の全てのデータに同じ処理をする。 関連記事 配列 配列は複数件のデータを扱うためのデータ構造です。 Javaの配列の特徴は、生成時にサイズ(格納するデータの個数)を決める必要があることです。いったん配列を生成すると、後から

    Javaを使うなら必ず覚えておきたいデータ構造 - 配列・リスト・マップ - いろいろ解析日記
    kicyon
    kicyon 2011/06/14
  • wise9 › JavaとJavaScriptの20年戦争

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

  • “コンストラクタ”と初期化、本当に理解できてる?

    “コンストラクタ”と初期化、当に理解できてる?:【改訂版】Eclipseではじめるプログラミング(13)(1/3 ページ) これからプログラミングを学習したい方、Javaは難しそうでとっつきづらいという方のためのJavaプログラミング超入門連載です。最新のEclipse 3.4とJava 6を使い大幅に情報量を増やした、連載「Eclipseではじめるプログラミング」の改訂版となります コンストラクタでケアレスミスを少なくしよう Javaでは、正しい状態のオブジェクトを生成するために、「コンストラクタ(construtor、組立てる者)」というものが用意されています。クラスの各フィールドの初期化処理を実行するコンストラクタを用意することにより、「プログラマが、初期化がされていないオブジェクトをケアレスミスで用意してしまう」ことを防いでいるのです。 前回の「継承やオーバーライドで簡単にクラス

    “コンストラクタ”と初期化、本当に理解できてる?
    kicyon
    kicyon 2009/12/20
    コンストラクタとか懐かしいけど、全然覚えてねー。
  • 別におぼえたくないのに…Javaの方から勝手に脳に入り込んできて、気がつけばJavaを習得してしまうゲーム「Robocode」 - techiela

    HelloWorldやっても面白くねーんだよ!! 皆さんこんにちは。 Google App Engine (GAE)でJavaがサポートされ、 PythonはスルーしたけどJavaならやりたい!でもJava未経験! GAE/Jに手を出してみたけど、結局hello, world!のサンプルアプリを公開したまま 放置した状態になっていませんか? 僕はそうです! Java使えたら楽しいだろうなー Java覚えて仕事の案件こなしたいなー Java使えたらオブジェクト指向がもっとわかるだろうなー リア充へのあこがれ と、常々思っていつつも、Javaの最初の面倒臭さの前にいつもやる気喪失するんですよね。 HelloWorldひとつやるのにpublic static void main()書くなんて面倒臭すぎです コンパイルなんて面倒でやってられません eclipseの使い方憶えるのが面倒だし ecli

    別におぼえたくないのに…Javaの方から勝手に脳に入り込んできて、気がつけばJavaを習得してしまうゲーム「Robocode」 - techiela
    kicyon
    kicyon 2009/11/30
  • 1