タグ

Javaに関するfakestar0826のブックマーク (7)

  • WebSocketでかんたんキーボードセッション | DevelopersIO

    クライアント・サーバー間の双方向通信を実現する技術として注目されているWebSocketですが、だいぶ仕様が固まって各ブラウザの実装も進んできたようですので、そろそろ試しておこうと思いサンプルアプリを作ってみました。今回作成したサンプルは、「かんたんキーボードセッション」アプリです。ブラウザ内の鍵盤をマウスで操作すると音が鳴り、なおかつ、複数クライアントで一緒に演奏できるようになっています。キーボードの音はWeb Audio APIを、複数クライアントによるリアルタイム演奏はWebSocketを利用して実現します。 Web Audio APIは、ブラウザでの高度な音声処理を実現するものですが、これについては、以前弊社の中村のエントリで紹介されています。 Web Audio APIをつかった音声処理 今回のサンプルでは、生成したサウンドデータから音声を出力する機能を利用してキーボードの音を鳴

  • オブジェクト指向について語った時に使ったメモ

    今日、オブジェクト指向について1時間ほど語りました。整理するため自分用に書いたメモを公開します。大まかな構成はメモどおりに話しましたが、メモに書いていないこともたくさん話していますし、書いていても話さなかったこともあります。 前提として自分自身のオブジェクト指向へのスタンスを書いておきます。 自分のプログラマとしてのキャリアとオブジェクト指向の隆盛の重なりを考えると客観的に見て自分はオブジェクト指向世代のプログラマなんだと思います。一方で、世間で過剰にもてはやされる技術には反発してきました。オブジェクト指向も例外ではありません。オブジェクト指向を否定はしませんが、金科玉条のように扱う人の前では、オブジェクト指向なんて技法のひとつに過ぎないと、冷たく突き放してきました。 ただここ数年、かつてに比べてオブジェクト指向の威光は下がっている気がします。関数型プログラミング支持者から、オブジェクト指

  • MacBook を買って開発ができるようになるまで。 - 日々、とんは語る。

    身近に MacBook を購入した人がいたので、その人向けにメモしておきます。ポイントとしては、今まで Mac を使っていなかった人でも分かるように説明していきます。 App Store から Xcode をインストールする。 驚くかもしれませんが、Mac は初期状態では、gcc など開発に必須のUNIXツールが一切インストールされていません(perl とか ruby とかは入ってるよ)。なので、まずは何はなくとも Xcode という開発ツール群をインストールする必要があります。 Snow Leopard までは(多分)付属のDVDに Xcode がついてきたのですが、Lion からは App Store からのダウンロードしてインストール事になったので、いきなり 3GB もダウンロードしなければなりません。なので、早めにやってしまいましょう。 この記事を書いている現時点で最新の Xcod

    MacBook を買って開発ができるようになるまで。 - 日々、とんは語る。
  • Javaプログラマが知るべき9のこと - @katzchang.contexts

    はじめに ソースコードは設計であり、コードの記述は品質に直結するのは言うまでもない。ちなみに、プログラマにとって特に重要なのは保守性だ。コードは書いた直後から保守対象となるからだ。コードは要求文書の範囲で動けばいいと思っている人がいれば今すぐ、ソースコードをコピペして100klに増えるプラグインがいつの間にかインストールされる呪いをかけてあげよう。幸い、ここを読んでいる人にはそんな人はいないだろうと思うけれども。 ということで、コードの品質を下げる要因、すなわちシステム全体の品質を下げる要因となり、かつ使われやすいアンチパターンを挙げ、対策を検討していくことにする。対象は以下: 出力パラメータ 処理状態返却 意味のある配列 無意味な初期化 多すぎるtry-catch 暗黙の順序 コンパイラ警告の無視 過剰なコメント e.printStackTrace() 出力パラメータ メソッドの引数にオ

    Javaプログラマが知るべき9のこと - @katzchang.contexts
  • Google App EngineでBlazeDSを使う·S3BlazeDS MOONGIFT

    S3BlazeDSはJava製/Google App Engine用のオープンソース・ソフトウェア。Google App EngineではJavaが使えることもあって、エンタープライズ開発で慣れた言語を使って個人でWebアプリケーションが無料(アクセスが少ない内は)で開発できるようになっている。 デモのメッセージアプリ 既に多数のWebアプリケーションが存在するが、HTMLベースのものが多いのではないだろうか。しかしUIHTMLに限らない。Flashを使えばさらにユーザビリティの高いシステムが構築できそうだ。その時に使えるのがS3BlazeDSだ。 S3BlazeDSはAdobe社が提供するオープンソース・ソフトウェアであるBlazeDSをGoogle App Engine上で動作するようにしたソフトウェアだ。BlazeDSはクライアントのFlex/Adobe AIRアプリケーションから

    Google App EngineでBlazeDSを使う·S3BlazeDS MOONGIFT
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • Effective Java 読書会 6 日目 「ジェネリクス!」 - IT戦記

    はじめに 今日からついにジェネリクスに突入しました! 今日読んだところ 101 ページ〜 125 ページ 前回はこちら http://d.hatena.ne.jp/amachang/20100222/1266850995 関数オブジェクト インスタンスメソッドを一つだけ持っているクラスのオブジェクト。 C++ の関数ポインタのような、 JavaScript のクロージャのような使われ方をする。 ストラテジーパターンで ストラテジーだけを渡すときに使う。 関数オブジェクトのインスタンスは複数いらない 以下のように、シングルトンにしたり、 public static final なフィールドに入れられたりする。 import java.util.Arrays; import java.util.Collections; import java.util.Comparator; import j

    Effective Java 読書会 6 日目 「ジェネリクス!」 - IT戦記
  • 1