タグ

javaに関するsugarbabe335のブックマーク (69)

  • Java総称型のワイルドカードを上手に使いこなすための勘所 - 達人プログラマーを目指して

    Java5以降では総称型(generics)がJava言語に導入されています。総称型自体は、最近の静的な型付けのプログラミング言語で珍しいことではなく、現在の最新版では.NETのC#やVisual Basicにも導入されています。一般的には総称型をサポートするクラスライブラリを自分で正しく定義することは非常にスキルがいるが、事前に定義されたクラスを使うだけであれば、それほど難しくないとされています。しかし、Java言語の総称型はエントリで説明するように特殊なところがあり、単に利用するだけでも他の言語に比べて遥かに難しいところがあるというのも事実です。特に総称型をパラメータ化する際に指定するワイルドカード型(List<? extends Serializable>など)の意味を正しく理解して使いこなすことは簡単なことではありません。その結果、昔のJDK1.4までのように型パラメーターのない

    Java総称型のワイルドカードを上手に使いこなすための勘所 - 達人プログラマーを目指して
  • java.nioに触ってみた(UDP通信編) - にんにくとたかのつめ

    大容量のデータを高速通信をしようとして、UDPデータ送受信のプログラムを書いていたのだが、どうにもパフォーマンスが出なくて悩んでいた。所謂、以下にあるようなマルチスレッド型のサーバを書いていた。 ... DatagramSocket socket = new DatagramSocket(4649); byte[] buffer = new byte[8192]; while(true) { DatagramPacket packet = new DatagramPacket(buffer, buffer.length); socket.receive(packet); byte[] receiveData = new byte[8192]; System.arraycopy(packet.getData(), 0, receiveData, 0, packet.getData().len

    java.nioに触ってみた(UDP通信編) - にんにくとたかのつめ
  • 『JavaネットワークアプリケーションフレームワークNettyの紹介』

    こんにちは、新規開発局のイニシャルP.です。 今回はJBoss OpenSource Projectの一つであるNetty Projectを紹介します。 Nettyは高性能・高スケーラビリティなネットワークアプリケーションを快速開発するために設計されたNIOクライアント・サーバフレームワークです。 Nettyを使うと複雑なNIO Selector APIを知らなくても簡単に非同期なイベント駆動型のネットワークアプリケーションの作成が可能になります。 簡単とはいえ、APIや使い方の説明になると楽しくないので、 ここでは実際にNettyを利用してMemcachedサーバを作ってみることにします。 動作環境について ・JDK1.5以上 ・Nettyの最新バージョン(現時点で3.2.1-Final) Memcachedサーバの実装について ・Binary Protocolのみ ・GetとSetのみ

    『JavaネットワークアプリケーションフレームワークNettyの紹介』
  • Netty: Home

    Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty is an NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server. 'Quick and ea

    sugarbabe335
    sugarbabe335 2010/12/03
    netty
  • 「Java による RESTful システム構築」 が超勉強になる!! - 宇宙行きたい

    JavaによるRESTfulシステム構築 作者: Bill Burke,arton,菅野良二出版社/メーカー: オライリージャパン発売日: 2010/08/23メディア: 大型購入: 28人 クリック: 804回この商品を含むブログ (40件) を見る これ,当にタイトル勿体無いなぁって思うでした. いや,タイトルに偽りは無いんだけど,これだと REST に興味無い人は手に取らないだろうなぁと思って,それは凄く勿体無い内容なので,ホントみんな読むと良いと思う. 簡単に説明すると,Java で REST を扱うために JAX-RS という API があるんだけど( JSR311 ),そのエキスパートグループの一人であり,さらにその実装である RESTEasy の作者が書いているです. で,この人は元々 SOAP とかのどちらかというと Fat な仕様大好きっこだったので,このには色

    「Java による RESTful システム構築」 が超勉強になる!! - 宇宙行きたい
  • JLIST - Scrollpane woes | Java

    I am having a problem getting a JList to scroll. I am using an extension of AbstractListModel at a model in a JList: public class TreeSetListModel extends AbstractListModel { private Set<String> treeSetList; /** Creates a new instance of TreeSetListModel */ public TreeSetListModel(Set<String> inSet) { treeSetList = inSet; } .... } For the life of me, I cannot get the vertical scrollbar to scroll.

    JLIST - Scrollpane woes | Java
    sugarbabe335
    sugarbabe335 2010/09/07
    JListにはsetPreferredSizeしない
  • ジェネリクスを使いこなそうゼ - 都元ダイスケ IT-PRESS

    というネタでエントリ書けよゴルァ、とid:happy_ryoに脅されて書くエントリー。 ジェネリクスご存知ですか。使ってますか。アノテーションと共にJava5から現れた、<> で囲まれた変な奴。 全くの余談ですが、アノテとジェネリクスの事を理解していなかったその昔。漠然と「たまに見かけるあの@とか、<> とかって何だろう」と思った訳ですよ。で、どうしようもなくて某所で聞いてみたんですね。そしたらさー、「ググれカス」って言われちゃってさwwww 「Java @」とか「Java <>」で検索してみるわけですよw 無理だろww はい、話し始める前から脱線してる都元ですコンバンワ。 ジェネリクス初心者がまず触れるのは、コレクションですかね。Listとかでお世話になる訳ですね。意図しない型のインスタンスを突っ込まれる心配もなく、取り出し時にキャストする必要もなくなる、なんか嬉しい奴、というイメージだ

    ジェネリクスを使いこなそうゼ - 都元ダイスケ IT-PRESS
  • 「Java SE 6完全攻略」第25回 タブにコンポーネントを貼る

    多くの情報を切り替えて参照/操作するとき,タブはとても便利です。最近,Internet Explorer 7(IE 7)がタブを用いたGUIを採用したため,ほとんどのブラウザがタブ対応になりました。 このようにタブを用いたGUIはよく使われています。JavaでもJTabbedPaneクラスを使用すれば,タブを用いたGUIを作成できます。 しかし,何かが足りません。 FirefoxでもIE 7でもいいので,タブのところを観察してみてください(図1)。 そう,クローズ・ボタンが付いているのです。Eclipseが採用しているSWTだとタブにボタンを付けることができるのですが,従来のSwingでは無理でした。 ここで,Java SE 6の登場です。Java SE 6ではJTabbedPaneクラスのタブにSwingのコンポーネントを貼ることができるようになったのです。これを利用すれば,タブのクロー

    「Java SE 6完全攻略」第25回 タブにコンポーネントを貼る
  • 虎の穴 J2SE 5.0 入門 Concurrency Utilities No.1

    マルチスレッドのアプリケーションはいろいろ時をつけなくてはいけないことがあります。同期や同時アクセスやプライオリティ、デッドロックなどなど。 Java では安易にスレッドを作ることができるのでいつのまにかスレッドをたくさん使っていたなんてことも起こりがちですが、そのつけは大きいです。 そんなマルチスレッドのアプリケーションを作る際に福音書となっているのが Java スレッドプログラミング です。残念ながら今は品切れで入手が困難なので、もし屋に残ってたらすぐにでも購入したほうがいいです。 マルチスレッドと同様このも内容が難しくて、なかなか理解するのが大変なんですが、マスターできたら鬼に金棒状態です。そして、このの作者が Concurrency Utilities の原型を作った Doug Lea なのです。 Concurrency Utilities では次のような機能を提供しています

  • クラスローダーについて

    Concepts and tools of logging in Java. Javaにおけるログ出力の考え方と道具について説明. CC Attribution Licenseの元に公開します.

    クラスローダーについて
  • ScalaでWebM形式の動画再生 - はこべにっき ♨

    それなりにたいへんそうで勉強になるかと思い、ScalaでWebM形式の動画を再生するコードを書いてみた。やりたくなったから、やっただけなので特に有用性とかはないです。 WebMのデコーダを準備する Javaで、WebM形式の動画を扱うには gstreamer-java が使える。 gstramer-java はネイティブのgstreamerを呼びだすのでインストールする。また、gstreamerがWebM形式の動画をデコードできるように、デコーダもインストールしておく。 WebMデコーダのインストール WebMのデコーダ(libvpx)のソースコードをcloneしてビルド/インストール。 $ git clone git://review.webmproject.org/libvpx.git $ cd libvpx $ ./configure $ make $ sudo make insta

    ScalaでWebM形式の動画再生 - はこべにっき ♨
  • MacOSのJDK6環境はデフォルトでShift JIS - Hello, world! - s21g

    嫌がらせとしか思えないのですが、MacOSのJDK6は、デフォルトのエンコーディングがSJISになっています。JDK5ではUTF8だったのに、なぜ... とりあえず、デフォルトでUTF8にしたい場合は、~/.zshrc あたりで

  • Simple 2.7.1

    Simple is a high performance XML serialization and configuration framework for Java. Its goal is to provide an XML framework that enables rapid development of XML configuration and communication systems. This framework aids the development of XML systems with minimal effort and reduced errors. It offers full object serialization and deserialization, maintaining each reference encountered. In essen

    sugarbabe335
    sugarbabe335 2010/05/13
    オブジェクトをxmlに変換してくれる
  • Java列挙型メモ(Hishidama's Java enum Memo)

    列挙型(enum)は、JDK1.5で導入された、一連の値を定義する文法。[2006-07-26] 一番単純な定義方法はC言語の列挙型に似ているが、C言語と違って実態はクラス(と、不変オブジェクト)。 enumはenumerate(イニュームレイトあるいはイヌームレイト)の略なので、発音としては「イニューム」が正しそうだが、自分は「イナム」「エナム」と呼んでいる。 最も単純な定義方法 enum 列挙名 { 列挙子, 列挙子, … } 列挙名は、クラス名(やインターフェース名など)と同様。 (したがって、publicの付いたenumの列挙名は、ソースファイル名と同じでなければならない。また、publicの付いたenumはソースファイル内に1つしか定義できない) 列挙子(enum定数)は、フィールド名の定数(クラス内のstatic final変数)と同様。 (したがって、アルファベット大文字を使

    sugarbabe335
    sugarbabe335 2010/05/11
    enum
  • Javaプログラマを名乗るなら、eclipseのSourceメニューを使いこなそう - きどたかのブログ

    自宅は英語版eclipse使ってるので、日人向きじゃないかも…。 メニューのSourceから選ぶよりも、Alt + Shift + Sを使うようにしよう。 全然詳しくないから偉いこと言えないんだけどねー。 ●Toggle Comment Ctrl + 7でも出来る。 Ctrl + /でも出来る。 まあ、普通はCtrl + /でやるよね。 ●Remove Block Comment Ctrl + Shift + \で出来る。 これはあまり使ったことがない。 /* a */の状態でやると、aが残る。 以下の状態でやると、真ん中の*が二個残る。しょぼい。 /* * * */ ●Generate Element Comment Alt + Shift + Jで出来る。 メソッド内でやると、メソッドのJavaDocが出来る。 フィールドでやると、フィールドのJavaDocが出来る。 全然関係ないと

    Javaプログラマを名乗るなら、eclipseのSourceメニューを使いこなそう - きどたかのブログ
  • mixiにログインするプログラムを作ってみた - マイペースなプログラミング日記

    mixiにログインするプログラムを作ってみた。ただログインして終わりじゃつまらないので、足あとを取得してみた。Mixi、AuthenticateException, FootPrintという3つのクラスを作った。Mixiクラスはmixiにログインするメソッドと足あとを取得してくるメソッドを定義していて、AuthenticateExceptionはログインに失敗したり、ログインしてないのに足あとを取得しようとすると発生する例外。FootPrintは足あとの情報を保持するクラスとなっている。これくらいだとJavadocやインテリセンスはなくてもテキストエディタだけで頑張れる import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.OutputStreamWriter; import java

    mixiにログインするプログラムを作ってみた - マイペースなプログラミング日記
  • jmcvideo

    downloads for Processing libraries jmcvideo library for osx jmcvideo library for windows jmcvideo library for linux demos basic examples, which have been tested on all platforms: VideoLoop & VideoTextureLoop: Just like the Loop example sketch for Processing's Movie library. advanced examples, which may or may not work on all platforms and may include platform specific media files. These include: V

  • syboos.jp

  • 別におぼえたくないのに…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
  • Eclipse Memory Analyzer Open Source Project | The Eclipse Foundation

    The Eclipse Memory Analyzer is a fast and feature-rich Java heap analyzer that helps you find memory leaks and reduce memory consumption. Use the Memory Analyzer to analyze productive heap dumps with hundreds of millions of objects, quickly calculate the retained sizes of objects, see who is preventing the Garbage Collector from collecting objects, run a report to automatically extract leak suspec

    Eclipse Memory Analyzer Open Source Project | The Eclipse Foundation
    sugarbabe335
    sugarbabe335 2010/02/07
    eclipseでメモリ解析