LTセッション #1 HereDocument

~Lightning Talk~
Here Document
楽しいアプリ制作の会 #1
TWorks
自己紹介

TWorks
以 下 略 !
What is “Here Document”??

カタカナで「ヒア(ヒヤ?)ドキュメント」

複数行の文字列を、変数に代入したりできる
便利な機能

たとえば・・・
> 長いSQL文を書くとき
> システムが送るメールの文章を書くとき
など
C#
string str = @”文字列の前に@マークを
付けるとヒアドキュメントみたくなります”;
System.Console.WriteLine( str );
文字列の前に@マークを(改行)
付けるとヒアドキュメントみたくなります
Perl
print << ”EOT”;
Perlは終端識別子を”で括ると変数展開され
’で括ると変数展開されません
EOT
Perlは終端識別子を”で括ると変数展開され(改行)
’で括ると変数展開されません
PHP
<?php
print <<< EOT
PHPのヒアドキュメントは < が3つですよ~
終端識別子の後ろはセミコロンが要ります
EOT;
?>
PHPのヒアドキュメントは < が3つですよ~ (改行)
終端識別子の後ろはセミコロンが要ります
Ruby
print <<EOT
Rubyのヒアドキュメントは
<< と終端識別子の間にスペースを入れちゃダメ
EOT
Rubyのヒアドキュメントは(改行)
<< と終端識別子の間にスペースを入れちゃダメ
JavaScript
言語仕様でヒアドキュメントが無いようです。
・・・がそれを作った人が居るようです!
■[JavaScript] JavaScriptでヒアドキュメントを使うライブラリを作った
http://d.hatena.ne.jp/koseki2/20080112/jsheredoc
var str =<<EOT
複数行の文字列です。
下の行でおわりです。
EOT
Java
Javaもヒアドキュメントが言語仕様的に
ないみたいですね・・・
しかも代替策もないようです orz
見つけたら、また紹介したいと思います。
ご静聴
ありがとうございました