2013年11月27日のブックマーク (11件)

  • I am mitsuruog | Backbone.jsとHandlebars.jsを組み合わせる

    Backbone.js でアプリケーションを作る場合、ついつい手軽さを求めてUnderscore.js の template()を使うことが多いのですが、少し凝った造りのページを作る場合、より専門的なテンプレートエンジンを使いたくなります。 そこで今回は、最近マイブームのHandlebars.jsを Backbone と組み合わせて使ってみました。 このエントリでお伝えしたいこと。 Backbone.js with Handlebars.js!! ここでもやっぱり Grunt 最高 Handlebars.js とは 詳細は Google 先生の方が詳しいです(ごめんなさい)。 数あるクライアントサイドのテンプレートエンジンの 1 つです。個人的にはプリコンパイルすることでパフォーマンス的に優位なところを注目しています。 [jsperf]Precompiled Templates 最近話題の

    I am mitsuruog | Backbone.jsとHandlebars.jsを組み合わせる
    Qurage
    Qurage 2013/11/27
    html を記述した *.hbs ファイルを grunt.js で precompile し template.js として書きだしたものを backbone.js から呼び出して使う
  • Vagrant と Chef でつくるはてなブックマークの開発環境

    ブログサービスのHTTPS化を支えたAWSで作るピタゴラスイッチ / The construction of large scale TLS certificates management system with AWS

    Vagrant と Chef でつくるはてなブックマークの開発環境
    Qurage
    Qurage 2013/11/27
    (2013.11.25) はてなの vagrant, chef 利用例
  • Handlebars.jsを使ったファイル生成Gruntタスク

    主にHTMLの生成を行うGruntタスクの話。色々なテンプレート・システムの利用を考えたんだけど、Handlebars.jsにした。よく使うからというのもあるし、いざとなったらデータの再構成を待たずにその場しのぎでテンプレートにロジックを混ぜてお茶を濁せるのが好き。その場しのぎ、お茶を濁す、良い言葉だ。 このGruntタスクは指定されたHandlebars.jsテンプレート(例えばfoo.hbs)をレンダリングするだけのもの。レンダリングに使うデータは、基のメタデータ(metadata.jsonの内容)とテンプレート・ファイルごとに指定できるメタデータ(foo.jsonの内容)をGruntに含まれるLo-Dashのextend()を使ってマージしたものを使う。Gistのサンプルにあるように基のメタデータにないものを自由に追加できるし、基のメタデータを上書きすることも出来る。 コアのg

    Handlebars.jsを使ったファイル生成Gruntタスク
    Qurage
    Qurage 2013/11/27
    (2013.08.24) Backbone.js と合わせてよく利用されている テンプレートエンジンのひとつ Handlebars.js について
  • Handlebars.jsの基本的な使い方のメモ - console.lealog();

    便利ですよね、Handlebars。 でも日語の記事が案外なかったり、公式のドキュメントがいまいちアレだったりするので、自分用にまとめます。 それがどこかで誰かの役に立てば、それはそれで幸いです。 基的な使い方 インストールとかは割愛。 だって読み込むだけやし・・・。 で、そこからは テンプレート・ひな形となるHTMLを用意 そのHTMLをHandlebarsにわせる 動的にはめ込む値をつっこむ 基的にはこの3ステップです。 Html <!-- 略 --> <script id="input" type="text/x-handlebars-template"> <section class="inner"> <h1 class="header">{{title}}</h1> <div class="box"> <img src="{{img.url}}" alt="{{img.a

    Handlebars.jsの基本的な使い方のメモ - console.lealog();
    Qurage
    Qurage 2013/11/27
    (2012.12.09) Backbone.js と合わせてよく利用されている テンプレートエンジンのひとつ Handlebars.js について
  • Handlebars

    Semantic templates Handlebars provides the power necessary to let you build semantic templates effectively with no frustration. Mustache-compatible Handlebars is largely compatible with Mustache templates. In most cases it is possible to swap out Mustache with Handlebars and continue using your current templates. Fast execution Handlebars compiles templates into JavaScript functions. This makes th

    Qurage
    Qurage 2013/11/27
    Backbone.js と合わせてよく利用されている テンプレートエンジンのひとつ Handlebars.js. Mustache と互換性がある.
  • Middleman: Hand-crafted frontend development

    Installation Install the gem and run middleman init my_project to create a new Middleman site from the command line. See full install instructions Customize Your Site Check out the directory cd my_project. Middleman works right out of the box. Start reading the docs to find out what each directory is doing and how to customize your site. See advanced customizations Build and Deploy Running one com

    Qurage
    Qurage 2013/11/27
    "Middleman is a static site generator using all the shortcuts and tools in modern web development." Ruby 製の grunt.js みたいな印象。
  • node.js とは何か - I am bad at math

    期せずして久々の更新になってしまった。ブログを書く気がなくなったとかそういうのではなくてただ単に忙しかっただけ。その間、まぁ仕事が予期せぬ方向から炎上してみたり、事故をもらって愛車が全損したり(フロントガラスが全面熱線入りなんていう変なオプションなどを諸々付けていたからお気に入りだったのに)と決して良いことばかりで忙しかったわけではないけどね! で、今回は node.js のお話。異様な盛り上がりを見せているものの、じゃぁそれっていったい何かというと「JavaScriptを用いたNon-blocking I/O環境」という非常にシンプルなものだ。 その根底には「うまくスケールできること」と「動作が速いこと」という理念が見受けられる。 まず「うまくスケールできること(多量のアクセスを捌けること)」を解決するにあたり、まずはスレッドモデルか、イベントループかという問題があった。そこで auth

    node.js とは何か - I am bad at math
    Qurage
    Qurage 2013/11/27
    (2010.10.20) node.js の背景
  • node.js とは何か (2) - I am bad at math

    昨日に引き続き、いざ!part2なのだ。 前回では node.js と v8 の結びつきまでを書いたので、今日は Non-Blocking I/O の話を。 Non-Blocking I/O という言葉からブロックしない I/O をイメージするのはたやすい。でもこれを実現しようとなるといろいろとまあ面倒くさいんだよね。 それを解決する常套手段で言うとファイルディスクリプタ(ネットワークならソケットだね)を開いてそれをselectシステムコールの監視対象に加えておき、selectを呼び出すことで監視するっていう方法がある。こうすると何が嬉しいのかファイルディスクリプタが2つある場合で考えてみよう。 まずAとBというファイルディスクリプタを監視対象とする。 selectシステムコールを呼び出し、そのどちらかが読み出し準備完了となっていないかを確認する。 もしどっちも準備できていなかったらプロセ

    node.js とは何か (2) - I am bad at math
    Qurage
    Qurage 2013/11/27
    (2010.10.22) node.js のことを node.js 周りのことも含めて詳しく紹介してる
  • node.jsとは何か(3) - I am bad at math

    今日はnode.jsで採用しているCommonJSの話である。 CommonJSの説明だけだとあっという間に終わってしまうのでJavaScript歴史を混ぜ込んだら期せずして長くなってしまった。 さて、1995年に発表されたJavaScriptは開発当初「Mocha」と呼ばれ、次に「LiveScript」となり(実際Netscape Navigatorの2.0のアルファ版ではではこの名前だった)、最後にようやくJavaScriptになる(Navigatorの2.0B3から)という変遷をたどった。このJavaScriptという名前っていうのはJavaというコンパイル言語を補完するスクリプト言語にしたいという考えがあったからという話もあるんだけど、そのころ開発元のNetscapeはSunとの業務提携を発表しており、ちょうどそのころJavaが世に出てNetscapeブラウザ上でクールなJava

    node.jsとは何か(3) - I am bad at math
    Qurage
    Qurage 2013/11/27
    (2010.10.26) node.js のことを node.js 周りのことも含めて詳しく紹介してる
  • node.jsとは何か(4) - I am bad at math

    さて、前回まで基礎部分をいろいろと説明したので今回からは実装について。現在のソースやその成り立ちを説明するのもいいんだろうけど、今日からはちょっぴりハンズオン形式に趣向を変えてみよう。ってことで node.js を作っていくよ! 実装編その一はJSエンジンであるV8にJavaScriptのソースをわせて実行する、つまりはオレオレJS環境を作るまでを扱うのだ。 V8はもともと他のソフトウェアに組み込まれて使用されることを想定(例えばChromeとかね)されているのでこういう作業が必要になる。 手順は大きくわけて二つ 1. まずはV8のソースを落としてきてV8のビルド 2. V8のソースディレクトリに自作のC++のソースを作ってコンパイル&実行 C++が出てきた時点で引いちゃったかもしれないけど、C++を使えるようになるのが今回の目的ではないのでまずはリラックス。C++っていったってそんなに

    node.jsとは何か(4) - I am bad at math
    Qurage
    Qurage 2013/11/27
    (2010.11.01) node.js で hello world
  • Javascriptでオブジェクト指向するときに覚えておくべきこと - Qiita

    Javascriptはブラウザのクライアントサイドで動く唯一の言語と言ってもいいので、普段書かなくてもちょいちょい書くことになる。そんな時用に、他の言語使っていると忘れてしまうJavascriptの重要な法則をまとめておく。 基的にリファレンスにしているのはMozilla Developer Network (MDN)のドキュメントの以下のページ。MDNはJavascript関連では一番ちゃんとしたドキュメントだと信じている。 Working with Objects - MDN 継承とプロトタイプチェーン - MDN this - MDN オブジェクトモデルの詳細 - MDN プロトタイプベース言語 Javascriptはプロトタイプベースのオブジェクト指向言語で、クラスベースのオブジェクト指向言語(例: C++, Java)とは異なる部分が多々ある。 例えば、クラスベース言語はクラス

    Javascriptでオブジェクト指向するときに覚えておくべきこと - Qiita
    Qurage
    Qurage 2013/11/27
    (2013.10.30) JavaScript の特徴的な部分