タグ

Javaに関するmitukiiiのブックマーク (112)

  • はてなブログ | 無料ブログを作成しよう

    わたし的棚ぼた一万円選書 急に千葉さんに手渡された封筒、開けてみたら1万円札が1枚。何ごとかと思えば、同期の出張を代わったお礼をもらったらしい。 「葵はワンオペで育児してくれたから」と半分わけてくれました。 泡銭の1万円 これはもう、わたし的1万円選書をしろという思し召しなのでは……

    はてなブログ | 無料ブログを作成しよう
  • Struts 2入門(1)~基本形で理解する仕組みと構造~

    はじめに 「Apache Struts」(以下、Struts)とは、Web開発のデファクトスタンダードとしてあまりにも有名な、Java言語で書かれたオープンソースのWebアプリケーション・フレームワークです。JavaでのWeb開発者には、もはや説明する必要はないかもしれません。 最初のStruts(以下、Struts 1)がリリースされる2001年以前は、JavaでのWebアプリケーションというと、JSPとサーブレットを直接用いたアプリケーションが一般的でした。そのため、ちょっとしたアプリケーションでも、けっこうなコード量が必要だったのですが、Struts 1のフレームワーク機能により、煩わしい記述の手間がずいぶん少なくなり、Webアプリケーション開発の敷居がぐっと下がりました。 連載は、そんなStruts 1の次世代バージョンであるStruts 2を紹介します。Struts 2は、字面

    Struts 2入門(1)~基本形で理解する仕組みと構造~
  • Javaのクラス宣言5種+α - プログラマーの脳みそ

    Javaのクラス宣言には5種類ある。 トップレベルクラス・ネストしたクラス・内部クラス・ローカル内部クラス・匿名クラス(無名クラスとも言われる)の5種類だ。 今回はこの5種類のクラス宣言のおさらい。 トップレベルクラス これは普段使っているクラス。拡張子が.javaのファイルを作り、そのファイル名とクラス名を合致させなくてはいけない。そのjavaファイルのトップレベルに位置する。 ネストしたクラス 「ネストしたクラス」(Nested class)とはクラスの中にクラスがネストしている状態。トップレベルクラスの内側にstaticキーワードをつけてクラス宣言を行う。 public class Outer { public static class Nested { } } このネストしたクラスは、トップレベルクラスと同等の機能性を持つ。 クラス名はOuter.Nestedという名前で扱われるが

    Javaのクラス宣言5種+α - プログラマーの脳みそ
  • nsheridan/tumblr-java - GitHub

    tumblr-java is a java library for the Tumblr API. Notes: xAuth is the only supported authentication. The library uses a mix of the v1 and v2 Tumblr APIs. The v1 API is used for creating new posts. Everything else uses the v2 API. This is mainly because file uploads using the v2 API are problematic. Creating a post returns the HTTP status of the request. Everything else returns a JSONObject. Tumblr

    mitukiii
    mitukiii 2012/01/30
    Tumblr API v1, v2 対応の Java ライブラリ
  • Javaで軽快に使える「軽量フレームワーク」特集 ~本格的なRoRスタイルフレームワーク「Play!」(1)

    はじめに 今やWebのフレームワークと言えば、そのほとんどが「RoRタイプ」です。RoR(Ruby on Rails)がWebの開発に与えた影響は非常に大きく、その後生まれたフレームワークの多くがその影響を受けています。 しかし、Javaの世界に関しては、RoRはなぜか素通りしてしまいました。既にStrutsというデファクトスタンダードがあったために新しいMVCフレームワークが割り込む余地があまりなかったのか、あるいはLL(ライトウェイト)言語でないとRoRなスタイルは作りにくかったのか。ともあれ、その後、長い間、Javaでは「いわゆるRoRタイプ」と言えるフレームワークは登場しませんでした。 その流れを変えたのは、Groovyです。Groovyの登場により、JavaでもLL言語のような小回りの聞くコーディングが可能となりました。そのおかげで、ようやくJavaの世界にも遅まきながら新しい世

    Javaで軽快に使える「軽量フレームワーク」特集 ~本格的なRoRスタイルフレームワーク「Play!」(1)
  • 10 Best Java Web Development Framework

    By Partho, Gaea News Network Thursday, October 15, 2009 There are a majority of enterprises running Java applications and working on Java web development framework. What remains to be seen is that a number of companies are tied to the conventional web development framework and  haven’t actually started to anticipate what could be the best Java web development framework. Even the JavaOne might hold

  • Teeda - JSF meets DI and AOP -

    About ホーム ライセンス ダウンロード 変更履歴 ロードマップ メーリングリスト トラッキング SVN リポジトリブラウザ General 環境 開発環境のセットアップ 実行環境へのデプロイ FAQ プレゼンテーション資料 Teeda Core 概要 サンプル解説 Teeda Extension 概要 ファーストステップ チュートリアル サンプル解説 概念 逆引きリファレンス リファレンス Teeda Ajax 概要 Kumu プロジェクト文書 プロジェクト情報 プロジェクトレポート モジュール Teeda Teeda Core Teeda Extension Teeda Ajax Teeda Tiger Teedaは,Seasarプロジェクト発のJSF (JavaServer Faces) をベースとしたWebアプリケーションフレームワークです. 「JSF meets DI x A

  • ProxyパターンとProxyクラスと黒魔術 - プログラマーの脳みそ

    Java Advent Calendar 2011 の18日目です。 17日目の記事は JavaEE使ってウェブアプリケーションつくろうよ - 水まんじゅう2、 19日目はJavaエバンジェリストの寺田さんですよ。乞うご期待。 プロローグ 後:「先輩、いまさらなんですけど上からSQLの遅いところを調査してくれって依頼がきてて、全クエリの実行時間を実データで集計とれと言ってるんですけど。これ、SQL発行前後で時間計測するしかないですかねー。このプロジェクトどんだけクエリ発行してるところあるんだろ…。簡単にやれないですかね。とりあえず調査に1週間かかるって返答しちゃいましょうか」 先:「まぁまて。全部のクエリにもれなく時間計測のコードを挿し込むとかやってられんし、手作業で漏れも発生するだろ。こういうのはオブジェクト指向で解決するのがスマートだ。あ、とりあえず調査に1週間かかるとは返答しておけ」

    ProxyパターンとProxyクラスと黒魔術 - プログラマーの脳みそ
    mitukiii
    mitukiii 2011/12/19
    "あ、とりあえず調査に1週間かかるとは返答しておけ"
  • YammerがScalaからJavaへ移行中

    原文(投稿日:2011/11/30)へのリンク Yammerの従業員であるCoda Hale氏がScalaの商用ベンダであるTypesafe社へ送ったメールがYCombinatorとGitHubgist経由でリークした。メールによれば、Yammerは複雑さや性能面を鑑みて、基盤のインフラをScalaからJavaへ戻すそうだ。 YammerのPR部門のShelley Risk氏によればこのメールはCoda Hale氏の個人的な意見であり、Yammerの公式な見解ではないとのことだ。このリーク後、Coda Hale氏は自身の考えをhttp://codahale.com/the-rest-of-the-story/で表明している。氏はこのメールはDonald Fischer氏(Typesafe社のCEO)からのフィードバックの要請に答えたもので、移行を示唆するツイートを補足したものだと説明して

    YammerがScalaからJavaへ移行中
  • Threadの割り込みを活用する - プログラマーの脳みそ

    確実に一定時間スリープする - terazzoの日記ではThreadの割り込みがあっても確実に一定時間の停止を試みているが、そもそもこのようなコードは書いてはいけない。 Thread.sleep()は一定時間止まるための便利メソッドとしてよく知られているが、そのときに発生するInterruptedExceptionについての理解は広まっていない気がする。割り込みとはなんなのか。どういう時に使うのか。 目覚まし時計 お昼休みに昼寝をしようとする。寝過ごすといけないので15分後にアラームを鳴らす設定をした。 さて、ひと眠りするか、というところに友人がやってきた。昼寝はやめて売店に行くことにした。果たして売店でアラームが鳴り始めた。 さて、このとき、アラームは15分間の待機を命じられたわけだけども、お昼寝がキャンセルされたことで、もう待機しなくてよくなってしまった。むしろ、さっさと待機をやめてく

    Threadの割り込みを活用する - プログラマーの脳みそ
  • 前提条件を破った場合、どのような挙動をするのか? - 都元ダイスケ IT-PRESS

    「Nullチェックされている前提の処理」とJavadocに書いたとき、「throws NullPo…」は書くんだろうか。んー、コード上は発生しうるけど、実際発生しないから不要なのかな はてなブックマーク - u1tnkのブックマーク / 2009年12月29日 まぁ、このブログで書いている話は、あくまでも「俺式」ということをご理解いただいた上で。(ここに書いた事が全て、って訳じゃありません。他にも色々ポリシーはあると思うが、自分はこれが一番良いと考えている。) 自分の考えは、契約プログラミングに基づいてます。DbC(Design by Contract)って奴ですね。 あるメソッドが「Nullチェックされている前提の処理」というのは、引数にnullは入ってこない前提、ということですよね。そしてJavadocを書くということは恐らくこのメソッドは公開API(publicかprotected)

    前提条件を破った場合、どのような挙動をするのか? - 都元ダイスケ IT-PRESS
    mitukiii
    mitukiii 2011/11/20
    分かりやすい
  • TDD Boot Camp 横浜で初めてGroovy触ったらかっこよすぎワロタwwww #tddbc - (カチャカチャカチャ…) (ッターン!)

    1日たってしまいましたが、11/06にTDD Boot Camp 横浜に参加してきました。詳しい記事は、id:absj31さんの記事が素晴らしくまとまっているので、ご覧くださいませ。 TDD Boot Camp 横浜に参加してきた #tddbc - Diary of absj31 TDD BCの感想と、Groovyを初めて触った感想です Groovyペアに立候補した理由 「募集」をしているわけで、立候補すれば、その場でペア成立 Groovyを触ったことがなくても大丈夫という前提 プログラミング言語好きとしては、Groovy触ってみたかった 普通なら、師匠は直々に、言語のフォースを教えくれない 運営の方と、TDDやったほうが身につきそう! たしか、こんな理由だったと思います。打算と興味が五分五分といったところでしょうか。運営の方が、Groovyを持ってきてくれて、 パラパラと見た第一印象は

    TDD Boot Camp 横浜で初めてGroovy触ったらかっこよすぎワロタwwww #tddbc - (カチャカチャカチャ…) (ッターン!)
  • scala/ruby - tech.cm55.com

    RubyScala Javaの欠陥、Rubyの欠陥を埋めるものとしてScalaが選択されつつある。 ここでは特に、なぜRubyではだめなのか、他の方の言を紹介する。 なぜ Lift に違和感を覚えるか 一刻も早くJava から Ruby へ移行したいと思っていた。しかし、実際に Ruby で開発を行ってみると、そこには譲れないトレードオフがあった。Eclipse 上の Java コードは、死んだ文字列ではなく、呼びかければ応えてくれるオブジェクトだったが、Aptana RadRails 上の Ruby コードは、それとは程遠い代物だった。補完はまともに働かず、依存先へのナビゲーションや依存元の検索はインテリジェントでなく、リファクタリング支援は貧弱。これは、特定ツールの未成熟の問題というよりも、動的型付け言語のアイデンティティに関わる問題だろう。そして、Rails アプリケーションの実行

  • Heroku for Java

    We're pleased to announce the public beta of Heroku for Java. Java is the fourth official language available on the Cedar stack. Java is, by many measures, the world's most popular programming language. In addition to its large and diverse developer base, it offers a huge ecosystem of libraries and tools, an extremely well-tuned VM for fast and reliable runtime performance, and an accessible C-lik

    Heroku for Java
  • [Android] apkファイルから.javaを取り出す方法 | しゃけログ

    apktoolをMacで使う方法の続きです。 apktoolでデコンパイルするとsmaliが取り出されて見づらいので、今度は.javaを取り出す方法をメモ。 apkファイルを逆コンパイルする手順 1. apkファイルを解凍 逆コンパイルしたい apkファイルを用意したら、まずは解凍します。 apkファイルは zip の圧縮と同じなので、zip解凍ソフトで解凍。 2. jarファイルを取得 jarファイルの取得方法がWindowsでのやり方しか見つからなかったので、とりあえずWin環境でやりました。 apkファイルを解凍したら classes.dex というファイルが見つかるので、こいつを dex2jar というツールで jarファイルを取得します。 dex2jar を入手する http://code.google.com/p/dex2jar/downloads/list dex2jar を

  • 同期化不要なCopyOnWriteArrayListを使え - かとじゅんの技術日誌

    java.util.concurrent クラス CopyOnWriteArrayList どんなクラスかというと、リストの変更操作(addやremoveなど)で、ConcurrentModificationExceptionをスローしないことが保証されるArrayListクラスです。 たとえば、通常のArrayListでは、リストのイテレート中にそのリストの要素を削除した場合、ConcurrentModificationExceptionがスローされます。 List<Hoge> hogeList = new ArrayList<Hoge>(); for(Hoge h : hogeList){ System.out.println(h); hogeList.remove(h);// ConcurrentModificationException } こういうことが発生しないようにプログラマ

    同期化不要なCopyOnWriteArrayListを使え - かとじゅんの技術日誌
  • Java Native Interface - Wikipedia

    Java Native Interface (JNI) は、Javaプラットフォームにおいて、Javaで記述されたプログラムと、他のプログラミング言語(たとえばCやC++など)で書かれた、実際のCPU上で動作するコード(ネイティブコード)とを連携するためのインタフェース仕様である。Java言語からネイティブコードを利用するためのABIと、逆にネイティブコードからJavaバイトコードを動作させるためにバーチャルマシン (VM) を利用するためのAPIの2つから成る。 JNIを使うことで、Java言語のVMで動作させるには処理速度の面で不利とされる計算量の多いプログラムを部分的にネイティブコードに置き換えて高速化したり、標準Javaクラスライブラリからはアクセスできないオペレーティングシステムあるいはハードウェアの機能を利用するプログラムを、あたかも通常のJavaクラスのメソッドのように呼び出

  • 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

  • さくらのVPSとSubsonicでiTunesをゴミ箱にダンクシュートした - 甘味志向@はてな

    VPS界に革命をもたらした、さくらのVPS。 月々980円という値段で、どこのご家庭でもVPSでlsを叩く生活を過ごしてらっしゃると思います。 そんな持て余しがちな楽しいVPSを使ってメディアストリーミングサーバーを作ったら超快適だったのでご紹介です。 Subsonic Java製でWin,Mac,Linux等マルチプラットフォームで動作します。 とりあえずデモを見てください、いい音でしょう? 余裕の操作性だ、快適さが違いますよ。 デザインはテーマで変えられますし、英語はダメっていう人も上のスクリーンショットのように設定で日語に出来ます。プレイリストからPodcastまで何でも対応してるので、特に困ることは無かったですよ。 とりあえずSubsonicのイイトコは、さくらVPSに曲をガンガン入れるとPCだろうがモバイルだろうがどこでもプレイリスト共有して曲を聴けるってことなんですね。 ちな

    さくらのVPSとSubsonicでiTunesをゴミ箱にダンクシュートした - 甘味志向@はてな
  • 生産性重視のJavaフレームワーク、Play frameworkとは | DevelopersIO

    あらためて、フレームワークの重要性は みなさんはWebシステムを開発するために、フレームワークは使用していますか? 私は10年ほど前に一度だけフレームワークを使用しないJavaのWebアプリケーション開発プロジェクトを経験しましたが、 そのあとのプロジェクトでは、StrutsやSpring、Seasar2など(自社フレームワークも含む)、必ずなんらかのフレームワークが使用されていました。 最近は通常のWebシステム開発でフレームワークを使用しないというケースは、特別な理由を除くとほぼないと思われます。 では、なぜみんなフレームワークを使用するんでしょうか。 フレームワークを使う理由を一言でいうと、「開発やメンテが楽になるから」でしょう。 開発が大変になるのにフレームワークを使用する意味なんてありません。 Web層のフレームワークを使えばJSPにスクリプトレットでJavaコードを埋め込む必要

    生産性重視のJavaフレームワーク、Play frameworkとは | DevelopersIO