タグ

ブックマーク / daisuke-m.hatenablog.com (7)

  • オープンソースプロジェクトの進め方(が難しい、という話) - 都元ダイスケ IT-PRESS

    私は、Jiemamy Projectというオープンソースプロジェクトを運営している。 ある意味、一人で作っている頃は楽だった。Javaにおけるpublicというキーワードの重みも知らず、複数人によるコミュニケーションのオーバーヘッドも気にすることなく、それはそれは勝手気ままにひたすらコードを書くだけだった。 当初、Jiemamyは「そんなに難しいモンじゃないだろw さっさと作って便利にしようぜww」くらいのノリで作っていたのだが、作れば作るほど色々な問題点も浮上し、勉強すればするほど新しい機能も欲しくなった。人の欲とは恐ろしいものだ。一人じゃ、もう作れない、限界がすぐに訪れた。 Jiemamyは、(私の知る限り)今までにあまり無い考え方を打ち出したプロジェクトだ。ただ語られていなかっただけかもしれないが、「私はこうあるべきだと思う」という理想(Jiemamy開発プロセス)を打ち出し、それを

    オープンソースプロジェクトの進め方(が難しい、という話) - 都元ダイスケ IT-PRESS
    deeeki
    deeeki 2010/07/08
  • 難解なSerializableという仕様について俺が知っていること、というか俺の理解 - 都元ダイスケ IT-PRESS

    java.io.Serializable …、ある程度Javaに触れて来た人は必ず見たことがあるインターフェイスだと思う。私も何度も見てきたし、必要に迫られて自分の作ったクラスにSerializableをつけたこともある。しかし、こいつは一体何なのか? 継承の便利さ 僕らがまだJava初心者だった頃。継承というメカニズムに助けられながら育って来た。簡単に言えば、HttpServletクラスを継承しさえすれば、自分の作ったクラスがサーブレットとして認識されるのだ。また、abstractメソッドなどという便利な機能もあり、継承にあたって実装しなければいけないメソッドは確実に指示され、言われた通りにそのメソッドを実装すれば良い。 StrutsのActionも然り。そう、多くの場合は「継承さえすれば、望む物がだいたい出来上がる」というのがJavaの世界だと思っていた。 だが、世の中そんなに甘くない

    難解なSerializableという仕様について俺が知っていること、というか俺の理解 - 都元ダイスケ IT-PRESS
    deeeki
    deeeki 2010/04/26
  • Throwableについて本気出して考えてみた 2nd Season - 都元ダイスケ IT-PRESS

    1st Seasonはこちら。Throwableについて気出して考えてみた - 都元ダイスケ IT-PRESS 以前は、何かをスローする状況を3つに分けてそれに合った設計をした例外を投げましょう、という考え方を示しました。 callerのバグ: RTE calleeのバグ: Error どちらでもない: Exception (非RTE) まぁ詳しくはSeason1の方で。 Seasar2はRuntimeExceptionですね。2004年ぐらいからのフレームワークはRTEをスローしていると思いますよって、ひがさんから情報。 チェックされる例外とチェックされない例外について - じゅんいち☆かとうの技術日誌 ただ、上記のような考え方もあるのも事実。実際.NETRuby, Python, 新鋭のScala等もcatchを強制する例外というものが言語仕様的に存在しません*1。逆に、チェック例

    Throwableについて本気出して考えてみた 2nd Season - 都元ダイスケ IT-PRESS
    deeeki
    deeeki 2009/10/18
  • お勧めのSyntax Coloring設定 - 都元ダイスケ IT-PRESS

    俺、この設定しないと、もうその単語がクラス名なのか変数名なのか分からなくて死にますw EnableしてBoldをONにする感じ。デフォルトでdisableなんだけども、実は裏側でColorは設定されている。この色分けも便利。Preview で「InterfaceName」「Color」「Object」がそれぞれ太字になっていて、僅かに色が付いている。

    お勧めのSyntax Coloring設定 - 都元ダイスケ IT-PRESS
  • エンジニアとしての歩き方 - 都元ダイスケ IT-PRESS

    これから書くことは決して「これをしなければいけない」とか「他に手段はない」なんてコトを主張したいのではない。色んな道があるはずだぁ。その中の一つの事例として、自分がやってきたことをフレームワーク化し、色々挙げてみようと思う。 当然、俺の主観が入りまくっているので、突っ込みどころは満載だろうなw そもそも「エンジニア」って何?w その辺り、はてブ界隈のミナサマにおかれましてはお手柔らかに願いたいww さて、いきなりどこかの技術系カンファレンスで1時間喋っちゃえ、とか突然は無理なのは分かる。何を話せばいいのやら、どこに喋るチャンスがあるのやらだ。しかし、そういう所で喋るような自分を将来のビジョンとして持っている人は、以下に挙げることを小さなことからコツコツと実践してみるといいかもしれない。という意図で書いていく。 何事にも興味を持とう 興味は勉強の原動力。興味のない勉強は苦痛でしかない。ここが

    エンジニアとしての歩き方 - 都元ダイスケ IT-PRESS
  • 継承とコンポジット - 都元ダイスケ IT-PRESS

    id:happy_ryoに「わかんねーんだよ、説明してみろゴルァ」されたので、書いてみる。 前書き*1 とりあえず、日のエントリのキモを最初に。「オブジェクト指向は、隠す技術である」(俺談w)ということを意識して読んで見てください。隠すとは何か? 公開しすぎない事。分かりやすく言えば、publicをprivateに変える事。これが「隠す」。 んじゃあ、隠すと何が良いのか。あるクラスから、見えるもの(=操作できる可能性の範囲(scope))が狭ければ狭いほど出来る事のバリエーションが減るから、プログラムは単純になる。つまり、隠すと複雑性(complexity)が下がる*2。 要件を満たした上で、いかに型(class, interface, etc.)やメンバ(field, method)の可視性を落とすか。可能な限り可視性を下げ、プログラムを単純化し、メンテナンス性を上げるにはどうしたらい

    継承とコンポジット - 都元ダイスケ IT-PRESS
  • Subversionプラグイン Subclipse→Subversive - 都元ダイスケ IT-PRESS

    EclipseからSubversionに接続するプラグインとしては、下記の2つが有名です。 Subclipse Subversive 先日Eclipseが起動しなくなるトラブルがあり、Eclipse体+各種プラグインを再インストールしました。そこで、今までSubclipseを使っていたのですが、最近良い評判を良く聞くSubversiveに乗り換えてみる計画〜。 というわけで、まず参考文献。 @IT: バージョン管理に便利なSubversiveプラグイン マイコミ: もう1つのSubversion対応Eclipseプラグイン - Subversive 1.1.1 K-na TechNotes: Subversive のインストール インストール方法などは上記に譲り、省略します。以下、Subclipseからのマイグレーションガイドとして。 アイコン装飾 Subclipseでは、変更のあったリ

    Subversionプラグイン Subclipse→Subversive - 都元ダイスケ IT-PRESS
    deeeki
    deeeki 2009/03/31
  • 1