タグ

ブックマーク / uehaj.hatenablog.com (3)

  • DCIアーキテクチャについて語ってみるよ - uehaj's blog

    Trygve Reenskaug氏とJames O. Coplien氏らが提唱する「DCIアーキテクチャ」について、id:digitalsoulさんが論文を翻訳してくださり、またその解説とサンプル実装(groovy, scala)を示してくださっており、読んでみたところ、大変興味深いので理解した限りを書いてみます。 おじさん登場 たとえば、あるおじさんがいたとします。 このおじさんは、白いスーツ、グラデーションの入ったサングラスと金ぴかのネックレスをつけて新宿歌舞伎町に出かけ「やくざ」として振るまいます。とおりかかったお兄さんがそのおじさんに出会い、目が合ってしまい、因縁を付けられ、お金を巻き上げられてしまいます。 さて、おじさんは家に帰ります。実は、このおじさんは家では良いお父さんとして振る舞います。赤ちゃんはこのおじさんの目を見て笑いかけます。おじさんは相好を崩し、オーよしよし。 さて

  • Reactベース静的サイトジェネレータGatsbyの真の力をお見せします - uehaj's blog

    Reactベース静的サイトジェネレータGatsbyの真の力をお見せしますという記事をQiitaに書きました。 「「爆速サイト」が必要ない場合でも得られるGatsbyの利点」などを書いています。 GraphQLは良いものだ。 導入 記事を書いた理由 「静的サイトジェネレータ」って何? 一般的な利点 Gatsbyとは わたしの疑問 Gatsbyの特徴と動作 Create React App(CRA)の動作 一般的なSSR(Next.jsなど)の動作 Gatsbyの動作 Gatsby動作をもう少し詳しく ビルド時GraphQL こんなこともできる 「ビルド時GraphQL」の結果をブラウザ内のReactコンポーネントにも渡す Gatsby Plugins コード例 Gatsbyビルドのようす まとめ 「爆速サイト」が必要ない場合でも得られるGatsbyの利点 JAMSatckアーキテクチャ1実装

    Reactベース静的サイトジェネレータGatsbyの真の力をお見せします - uehaj's blog
  • GroovyのクロージャとJava8のlambda式の違いについて - uehaj's blog

    この両者は、似ているようでいて、基的には別モノです。表にしてみます。 Groovyのクロージャ java8のlambda式 導入時期 2003年 2014年03月 ローカル変数へのアクセス 読み書き可能 実質的にfinal(変数そのものに対しては読み込みのみ) 実装方法 Closure型のインスタンス MethodHandle, invokeDynamic.. 型推論の根拠 Closure<T>のTで返り値、@ClosureParamsで引数 FunctionalInterface(SAM型) 記法 { 引数 -> 体 } { 体 } {-> 体 } (引数) -> { 体 } (引数) -> 式 () -> { 体 } 暗黙の動的なthis delegateにより実現 - 性能 ローカル変数をenclosingするため間接参照にするためのオーバーヘッドあり 性能上のオーバーヘ

    GroovyのクロージャとJava8のlambda式の違いについて - uehaj's blog
  • 1