タグ

templateに関するIwamotoTakashiのブックマーク (12)

  • 高速なプログラミング言語が生み出す本当の価値 - kなんとかの日記

    なんか、はてなブックマークとか見てると残念なコメントが多いよなー。『こんな比較は意味ない』とか『できることがまったく異なるテンプレートを並べて比較されても』とかいうやつ、何なの?「言語の速度 != アプリの速度」という主張を示したベンチマークなんだから別におかしくないじゃん。主旨がまるで分かってもらえてない。ネットワークやデータベースの処理まで含めて計測したら、「言語の速度 != アプリの速度」という主張がより鮮明になるだけじゃね? 反論する人があまりに残念な反論しかできないようなので、かわりに自分で「高速な言語を使う理由」を説明する (一人マッチポンプ状態じゃねーか)。 ・  ・  ・  ・ 言語が速いことによる当の利点は、採用可能なアーキテクチャが広がることだと思う。新しいアーキテクチャを思いついたので採用したいが、スクリプト言語ではどうやっても満足な速度が出せなかったのが、Java

    高速なプログラミング言語が生み出す本当の価値 - kなんとかの日記
    IwamotoTakashi
    IwamotoTakashi 2010/05/01
    「動的に操作したい要素は HTML テンプレートの中の一部だけ」「ページ全体を DOM に変換して操作するのは無駄すぎる」
  • JavaScript 用テンプレートエンジン Jarty の紹介 - ドワンゴ 研究開発ブログ

    はじめに この記事では、JavaScript 用のテンプレートエンジン Jarty を紹介します。 Jarty (じゃーてぃー) とは、PHP の有名なテンプレートエンジンである Smarty を JavaScript に移植したものです。ただし、完全に再現しているわけではなく、いくつかの機能は制限されています。 Jarty には以下のような機能があります。書式の多くは Smarty 互換です。 変数の置換 {$foo} => "abc" {if} {else} {/if} などの条件分岐 {foreach} {/foreach} などのループ {$foo|upper|escape} などのフィルタ (パイプ) etc. ソースコードは The MIT License として公開しています。 GitHub 上のリポジトリ: http://github.com/kotas/jarty また、

  • サブテンプレート処理について考える - 檜山正幸のキマイラ飼育記 (はてなBlog)

    Catyのテンプレート処理について再度考えてみたのですが、ある程度一般論っぽい書き方で述べます。関数呼び出しの記法を全面的に使います。 内容: トップレベルのテンプレート処理 サブテンプレートの処理 サブテンプレートに渡す情報 サブテンプレートに入力とパラメータを渡す テンプレート処理を一元化したかった理由 それで何ができるか トップレベルのテンプレート処理 テンプレートテキストtemplがあるとき、コンテキスト(名前-値ペアの集まり)contextを使ってテンプレートテキストを展開することを expand(context, templ) と書きましょう。この関数呼び出しの値がテンプレート展開結果です。contextが単なるデータではつまらないので、プログラムの実行結果だとします。ここでは、式exprを評価した値 eval(expr) がコンテキストになるとします。そうすると、次がテンプレ

    サブテンプレート処理について考える - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • Route 477(2010-02-18)

    ■ [javascript][link] .sort.call(null)の深淵 - 素人がプログラミングを勉強するブログ JavaScriptで、 [].sort.call(null) がwindowに評価されるのはなぜ?という話。 callにnullを渡すと、thisがwindowになる Arrayのsortは、ソートするものがないとき(つまり、lengthがundefinedか0か1のとき)はthisを返す ということからwindowになると。へぇ。 ただしフレームを使ったサイトの場合、window.lengthが2以上になって上のような挙動にならなかったりするらしい。 ■ [ruby] Hash、Mash、Dash Hashieは、Hashと似たような(?)MashとDashというクラスを提供する。 http://github.com/intridea/hashie/ Mashはo

    Route 477(2010-02-18)
    IwamotoTakashi
    IwamotoTakashi 2010/02/18
    こういう書き方だと理解しやすい…
  • m_hiyama / CatyDocs / wiki / Tutorial / UsingTemplates — Bitbucket

    Atlassian Sourcetree is a free Git and Mercurial client for Windows. Atlassian Sourcetree is a free Git and Mercurial client for Mac. -*- coding: utf-8 -*- テンプレートを使ってみよう 注意: この情報は既に古くなっています。 「はじめてのCatyサイトを作ってみよう」において、次のようなHTMLファイル index.htmlを作りました。 <html> <head> <title>mysite</title> </head> <body> <h1>mysite</h1> <p>これは私のサイトです。</p> </body> </html> このindex.htmlは、完全に静的(変化しない)ファイルでした。 これを少し修正して、テンプレ

  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • Mustache: Logic-Free Views For Your Ruby Web Apps

    Ruby Weekly is a weekly newsletter covering the latest Ruby and Rails news. Mustache is a new templating library from Chris Wanstrath (a.k.a. defunkt of GitHub fame) that provides a way to render views in your chosen Ruby web framework. Influenced by ctemplate, Mustache helps to keep your MVC layers separate by actively preventing the inclusion of application logic in your views. With Mustache, th

  • 2009-10-06

    CouchDB 0.9.0 から show/list など、サーバーサイドでレンダリングを行う機能が追加されました。これは普通に使うとすごく使いにくいので、通常はCouchAppを使って次のように書きます。例えば_show/sample を実装するとき。 function(doc, req){ // !code vendor/couchapp/template.js // !json templates/sample return template(templates.sample, {doc : doc}); } couchapp push コマンドでスクリプトをCouchDBにデプロイできますが、// ! が重要なマクロ展開の機能を持っています。 !code により template.js の内容が couchapp push 時に展開され、デザインドキュメントの中に埋め込まれます。こ

    2009-10-06
  • Web アプリのボトルネックはテンプレートシステムにあり - kなんとかの日記

    Ruby のネタがないので Python でお茶をにごす。 Python の速度を 5 倍速くするという目標を掲げている unladen-swallow というプロジェクトがあるんだけど (日語はこちら)、その中に次のような一節があった。 Unladen Swallow's benchmark suite is focused on the hot spots in major Python applications, in particular web applications. The major web applications we have surveyed have indicated that they bottleneck primarily on template systems, and hence our initial benchmark suite focuse

    Web アプリのボトルネックはテンプレートシステムにあり - kなんとかの日記
  • クラウドとHTML5にPHPが沈むとき - noopな日々

    インフラ・タグ仕様の両面からPHPの存在意義が問われているように思えます。 安価なインフラとの親和性、テンプレート志向、その双璧が意味をなさなくなってきそうです。 クラウドとPHP (特に日では)PHPはレンタルサーバーで最も利用しやすいプログラミング言語です。また、LAMPによる開発ノウハウが充実していますので、カジュアルな開発者がもっとも手にしやすい言語と言えそうです。 レンタルサーバーでのリソースがクラウドに移行しようとしている現在でも、たとえばGoogle App Engine上でPHPは実行可能で、Amazon S3,EC2へアクセスする機能を提供しているPHPフレームワークもあります。とはいえ、クラウド上での実装を考えると、関数型言語の方が向いているのは明らか。その意味では、Pythonのように関数型に近い言語の方が向いています。 レンタルサーバー上でPHPを使うにしてもそれ

    クラウドとHTML5にPHPが沈むとき - noopな日々
    IwamotoTakashi
    IwamotoTakashi 2009/05/29
    「実用面での話」に説得力あり。テンプレートよりデコレーション!
  • Route 477(2009-02-08)

    ■ [ruby][idea] VのためのRack Webサーバ・Webフレームワーク間をつなぐものとしてRackがあるわけだけど、 それならWebフレームワーク・テンプレートエンジン間をつなぐライブラリもあってしかるべきではないかと思った。 (Markabyのような例外を除く)たいていのテンプレートエンジンは、 v = FooEngine.new(str) v.render(:a => "hoge", :b => "moge") のようなAPIにまとめられるはず。

    Route 477(2009-02-08)
    IwamotoTakashi
    IwamotoTakashi 2009/02/09
    おもしろい! ViewAdapterで差異を吸収する感じかな。
  • Kazuho@Cybozu Labs: Text::MicroTemplate - テンプレートエンジンのセキュリティと利便性

    « MySQL の order by 〜 limit を高速化する方法 | メイン | MySQL Conference & Expo 2009 で Q4M の話をします » 2008年12月16日 Text::MicroTemplate - テンプレートエンジンのセキュリティと利便性 先月開催された Shibuya.pm #10 でプレゼンテーションがあった MENTA や NanoA では、Mojo 由来のテンプレートエンジンを拡張して使用してきたのですが、Perl モジュールとして独立させるべきだよね、ということになり、このたび Text::MicroTemplate として CPAN にアップロードしました。 そのことを告知するとともに、作業の過程で興味深く感じた、テンプレートエンジンのセキュリティと利便性に関する話題をブログに書いておこうと思います。 テンプレートエンジンのエスケ

    IwamotoTakashi
    IwamotoTakashi 2008/12/16
    やっぱり型が問題になるんだなあ。そういう意味ではDOMもありかも。http://bakera.jp/ebi/topic/3072
  • 1