タグ

ブックマーク / www.sakatakoichi.com (6)

  • staticな内部クラスは内部クラスじゃあない - Fight the Future

    From Java魂―プログラミングを極める匠の技 作者: Robert Simmons Jr.,福龍興業,佐藤直生,木下哲也,石井史子出版社/メーカー: オライリージャパン発売日: 2004/10メディア: 単行購入: 9人 クリック: 116回この商品を含むブログ (83件) を見る 後輩に内部クラスのことを聞かれました。ちょっとまとめ。 内部クラスと呼ぶためには外部クラスのインスタンス変数にアクセスできないといけない。つまり、内部クラスは外部クラスのインスタンス変数を扱える。 まずは普通の内部クラス。 public class OuterClass { private String instanceVariable = "test"; public static void main(String[] args) { OuterClass outerClass = new Outer

    staticな内部クラスは内部クラスじゃあない - Fight the Future
  • Javaプログラマが悩むラムダとクロージャと匿名関数と - Fight the Future

    僕は、Javaでプログラミングを始めて8年以上になります。 ここ数年、RubyScalaを少しずつ学んでいます。 やっと、さっとWebアプリケーションを作るのに、 Ruby(Sinatra)で作れるようになってきました。 RubyScalaと進んでいくと、 Javaになかった概念がいろいろ出てきて、 ちょっとあやふやなまま進んでいるところもあります。 そういった概念のうちいくつかを、整理してみます。 クロージャ JavaScriptにもあって、何となくわかって/使っているけど、 説明しろと言われると少し困ってしまう。 それがクロージャ。 クロージャとは、こう定義されます。 「レキシカルスコープを伴うファーストクラスの関数」 言語設計者たちが考えること p.176 言語設計者たちが考えること (Theory in practice) 作者: Federico Biancuzzi,Shan

    Javaプログラマが悩むラムダとクロージャと匿名関数と - Fight the Future
  • クラスファイルはすべからくjavapしよう - Fight the Future

    public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); } } javac HelloWorld.javaしてクラスファイルを生成します。さっそくjavap HelloWorldしましょう。javapコマンドはOpenJDK系(OpenJDKやHotSpot、JRockit)に付属するので、たとえばIBM J9などにはありません。ご注意ください。以下のように出力されます(JDK8にて実施)。 Compiled from "HelloWorld.java" public class HelloWorld { public HelloWorld(); public static void main(java.lang.String[]); } クラ

    クラスファイルはすべからくjavapしよう - Fight the Future
  • JVMのclinetモードって… - Fight the Future

    -serverとか-clientって、オプションの一番最初に書かないといけないんだよね、というのと、 でも実行アーキテクチャでJVMが判断して勝手にserverモードにしてくれるんだよね、 というのを思い返しつつ、ちょっとclientモードにしてみるかと思いきや、 clientモードにならない! 結局ここにすべてがあるんだけれど。 http://docs.oracle.com/javase/8/docs/technotes/guides/vm/server-class.html the definition of a server-class machine is one with at least 2 CPUs and at least 2GB of physical memory. CPUが2つあって2GB以上の物理メモリがあれば、とくにオプションを指定していなくても、serverモー

    JVMのclinetモードって… - Fight the Future
  • クラウドでの新しいACID、そしてBASEトランザクションとCAP定理 - Fight the Future

    クラウドではアーキテクチャやプログラミングモデルが今までと変わる。 QConでは複数の人からそういう話が出ていた。 ちょっと自分なりにまとめてみる。間違っているかもしれないので、見つけた人はご指摘ください。 新しいACID 従来のモデルでのACIDは、特にRDBMS関連でよく耳にすると思う。 Atomic(原子性) Consistent(一貫性) Isolated(独立性) Durable(永続性) だ。 QConでGoogleのGregor Hohpe氏は、クラウドにおいてACIDは次のような意味になると言っていた。 資料はここ。https://sites.google.com/site/gcodejp/slides/ProgrammingCloud_QCon.pdf?attredirects=0 Associative(結合の) Commutative(相互の) Idempotent(

    クラウドでの新しいACID、そしてBASEトランザクションとCAP定理 - Fight the Future
  • エンジニアがタイトル買い、著者買いすべき本 - Fight the Future

    著者買いすべき! ファウラー、ジョエルは知名度もあり、改めて僕がどうこう紹介する必要はないと思うけど、ここではスティーブ・マコネルを特に推したい。 読んだ人には非常に高い評価を得ているけれど、その分厚さや価格もあってなかなか広まっていない。 特にCode Completeはすべてのエンジニアが必ず読むべきだと思ってる。 これを読んで理解する/しないが(職業プログラマとしての)初級と中級の境界だと言えるくらい。 タイトルにはCodeとあるけど、別にコーディングをターゲットにしたではない。 設計、テストも含めてコーディングを考えている。当たり前だがコーディングだけではコーディングはできないからだ。 上下巻1,200ページの大作だし、2冊で12,000円だがその価値は大いにある。 スティーブ・マコネル ソフトウェア見積り―人月の暗黙知を解き明かす 作者: スティーブマコネル,久手堅憲之,S

    エンジニアがタイトル買い、著者買いすべき本 - Fight the Future
  • 1