クリボウの Blogger Tips

Google Blogger の使い方、カスタマイズ方法、各種ツールなど、
Blogger 関連の役立つ情報を紹介しています。

> | > Blogger テンプレートでラムダ式が使用可能に

Blogger テンプレートでラムダ式が使用可能に


新しいテンプレート表現「ラムダ式」

昨年(2015年)5・6 月に、Blogger テンプレートに新しい表現方法が相次いで登場したのを覚えているでしょうか。

Blogger テンプレート上で扱える構文が増えて、随分柔軟になった印象を受けたものですが、今回、さらにラムダ式が使えるようになりました。次のリンクが Blogger 公式のアナウンスです。

「ラムダ式とはなんぞや?」という人は、このサイトの説明がわかりやすいかと。

// 匿名メソッド
Calculate(1, 2, delegate(int x, int y) { return x + y; }); // 出力:3

// ラムダ式
Calculate(1, 2, (x, y) => x + y); // 出力:3

無名関数の定義と呼び出しが簡単に記述できる式というと…伝わるでしょうか。Blogger テンプレート上に記述する実際の例として挙げられているのが次のコードです。

<b:if cond='data:post.labels any (l => l.name == "Flower")'>
  <img src=’/img/flower.jpg’ />
<b:if/>

その投稿に「Flower」ラベルがついていれば、花の画像を表示するというコードです。これまで b:loop タグを使わないと書けなかったものが、確かに随分簡単になっていますね。


Blogger で使えるラムダ式の仕様

Blogger で実際に使えるラムダ式ってどんなもの?と思って調べてみると、ヘルプフォーラムで解説を発見。

例えば

data:posts count (p => p.numComments > 0)

というコードは、少なくとも 1 コメントついている投稿の数を示すためのもの。

細かく見ていくと、赤字部分は対象となるデータ(アイテムセット:今回は投稿情報)を、青字部分は行う処理の種類(ラムダオペレータ:今回はその数)を、緑部分は実際のチェック内容(ラムダエクスプレッション:今回はコメントの数 0 より多いかどうか)を指定しています。

ラムダエクスプレッションは、さらに => 前後で分けられて、左辺に変数名(今回は data:posts セット内の各アイテム postp と名付けている)を、右辺にその変数を使った表現を記述することになっています。

うーん、使い慣れると便利なのかもしれませんが、使い方をマスターするのになかなか時間がかかりそうですね。ちなみに、ラムダオペレータに使えるキーワードは次の通り。

any ... ラムダエクスプレッションを満たすアイテムがセット内に 1 つでもあれば true を返す。
all ... セット内のアイテムすべてがラムダエクスプレッションを満たせば true を返す。
none ... ラムダエクスプレッションを満たすアイテムがセット内に 1 つもなければ true を返す。
count ... セット内でラムダエクスプレッションを満たすアイテムの個数を返す。
filter ... セット内でラムダエクスプレッションを満たすアイテムだけを集めたセットを返す。
map ... ラムダエクスプレッションで記述された結果を集めたセットを返す。
first ... セット内でラムダエクスプレッションを満たす最初のアイテムを返す。

filter や map が自在に使えるようになれば、Blogger テンプレートでもかなり複雑な指示が出せそうですね。われこそは!と思う人は、ぜひチャレンジしてみてください。


スポンサードリンク:
お願い:
「この記事役に立った!」と思ったら、ぜひフィード登録をお願いします。 

Comments:7

  1. نحن تنظيف شقق بالمدينه المنوره تعمل فى مجال تنظيف الفلل ولدينا عمال متخصصون فى تنظيف شقق للفلل حيث نمتاز عن اى شركة اخرى فى مجال تنظيف شقق بالمدينة فاننا نعمل على جميع خدمات التنظيف منذ سنوات ولدينا الخبرة الكبيرة فى تنظيف الشقق. مرحبا بكم فى شركتكم تنظيف شقق المدينة المنورة اكبر شركة متخصصة فى شركة غسيل شقق حيث تقوم بكافة اعمال تنظيف منازل باستخدام احدث الآلات و المعدات و افضل مواد التنظيف المستوردة و الاصلية كما تعتمد تنظيف شقق على اكبر فريق عمل متخصص بتنظيف منازل و ذو خبرة و مهارة لانجاز كافة الاعمال بكل دقة واتقان و فى اقل وقت .

    شركة تنظيف شقق بالمدينة المنورة


    تنظيف شقق بالمدينة المنورة

    شركة تنظيف شقق بالمدينة المنورة شركة سعودية متخصصة فى تنظيف شقق بالمدينة المنورة بالاضافة الي خدمات تنظيف اخرى كثيرة ,فلديها عمال متميزين ومتخصصين فى غسيل شقق بالمدينة المنورة بجميع محتوياتها الداخلية من انتريهات وكنب ومجالس ولدينا القدرة علي جعله نظيفا تماما خالي من البقع وازالة بقع الاكل والدهون من عليه وخاصة مع وجود الاطفال يكون الكنب شديد الاتساخ ولكن بعد الان سيصبح الكنب نظيفا بواسطة افضل المنظفات التي نستخدمها في شركة تنظيف شقق, حيث نقدم خدمات للعديد من المناطق المحيطة بالمدينة المنورة وضواحيها.

    غسيل شقق بالمدينة المنورة


    تنظيف شقق بالمدينه المنوره


    غسيل شقق بالمدينه المنوره


    ReplyDelete

Comments on Google+:

© 2005-2014 Kuribo. Powered by Blogger.