- PR -

JSPでのインデントについて!

投票結果総投票数:35
する 33 94.29%
しない 2 5.71%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
progman
大ベテラン
会議室デビュー日: 2005/06/08
投稿数: 227
投稿日時: 2008-04-09 11:50
>では、どういう手法で作るのですか?

たとえばブラウザではなくクライアントにその処理に応じて開発したアプリケーション
をインストールして、その処理に必要な電文をやりとりする。
といった方法があるでしょう。

1バイトでも電文を少なくしたいなら、それはひとつのやり方だとおもいます。

かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2008-04-09 12:30
Java/JSPってデプロイの手間があるにしても、
実行速度と効率はスクリプト系に比べて意外と速いので、
業務システム以外にも向いているんですよ。

Javaはどうせ重いし効率なんて関係ないや的なアプローチは、
今のJavaには当てはまりませんよ。
実行効率を求めるためにWEBでJavaを選択するというのは十分ありです。
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2008-04-09 12:59
引用:

progmanさんの書き込み (2008-04-09 11:50) より:
たとえばブラウザではなくクライアントにその処理に応じて開発したアプリケーション
をインストールして、その処理に必要な電文をやりとりする。
といった方法があるでしょう。

1バイトでも電文を少なくしたいなら、それはひとつのやり方だとおもいます。



元のかつのりさんの話は

引用:

1バイト節約しただけでも、月間1億PVのサイトで月間100MBytesの転送量が節約されます。


と言っているようにWebシステムでの転送量の話でした。
例えばGoogleは改行やインデントなどを極力削ったHTMLとなっています。
{b]1日[/b]で1億PVというサイトですから、その効果も相応にあるのでしょう。

そうしたシチュエーションでJSPではない何かしらの技術で、
JSP並にデザインの可変性を備え、かつデータ送出量を抑えれる技術があるのか?
ということだったわけですね。良い方法があるなら私も是非知りたいところです。

クライアントサイドにアプリケーションを入れるような話は
前提があまりに外れていると思うのですがどうでしょうか。
sawat
大ベテラン
会議室デビュー日: 2006/08/02
投稿数: 112
投稿日時: 2008-04-09 15:03
引用:

kumaさんの書き込み (2008-04-09 02:23) より:
ここまで考えるならばそもそもJSPでつくらないのでは?


単に、生のServletでやるってことかと思った。
保守性が落ちるけど、不要なインデントや改行はなくなるだろうからね。

通信量を減らすなら、AjaxでJSONデータのやり取りを中心にするのがいいと思います。
JavaScript ON必須になってしまいますが。

yuzy
大ベテラン
会議室デビュー日: 2002/02/14
投稿数: 117
投稿日時: 2008-04-09 15:05
引用:

開発やメンテはインデントされたものがいいですね。
PHPで開発するときは、よくSmartyを使っているのですが、
テンプレートにはインデントを入れて、出力時にはインデントを取り払う指定をしています。



ちょっと違う例(JavaScript)ですが、私のところでは、
開発時にはJavaScriptにコメントとインデントを入れていて
デプロイ時にはコメントとインデントを削除しています。
(antのreplaceregexpを利用しています。)

*** 追記:コメントだけでなく、インデントも削除していました。

[ メッセージ編集済み 編集者: yuzy 編集日時 2008-04-09 18:17 ]
kuma
大ベテラン
会議室デビュー日: 2004/02/25
投稿数: 110
投稿日時: 2008-04-09 16:04
引用:

nagiseさんの書き込み (2008-04-09 09:37) より:
引用:

kumaさんの書き込み (2008-04-09 02:23) より:
ここまで考えるならばそもそもJSPでつくらないのでは?



では、どういう手法で作るのですか?
JSP以外に妥当な手法があるなら、通常のシステム開発でも使えばいい。
そんな便利なものがあるなら是非利用したいところです。


空白類等すべて削除した文字列をresponseに流し込めばいいだけかと

どこから便利なものという考えが出てきたか解りませんが
引用:

そうしたシチュエーションでJSPではない何かしらの技術で、
JSP並にデザインの可変性を備え、かつデータ送出量を抑えれる技術があるのか?
ということだったわけですね。良い方法があるなら私も是非知りたいところです。


「JSP並にデザインの可変性を備え」これは暗黙の了解なのでしょうか?
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2008-04-09 18:17
引用:

kumaさんの書き込み (2008-04-09 16:04) より:

「JSP並にデザインの可変性を備え」これは暗黙の了解なのでしょうか?



JSPって暗黙にServletにコンパイルされるわけですが、
JSPではない生のServletで文字を延々出力する作りにしても、
単に改行とかスペースを削ったJSPを作っても、
最終的にはServletになって動くので結果は一緒ですよね。

そして、生のServletを書き出すよりはテンプレートエンジンの類であるJSPの方が
当然、HTMLなどのデザインの変更に対して編集が容易であると思えるわけです。

だから、バイト数を削りたいから生のServletで書くというのは合理性がない。
そういう前提で考えていたので、そういうケースでJSPは使わないというならば
Servletではない何か便利なものがあるのだろう、と考えたわけです。

だとすれば、「JSP並にデザインの可変性を備え」ていて当然なわけですね。
数バイトを削るためにどこまで保守性が下がっても耐えられるかと言われると…
kuma
大ベテラン
会議室デビュー日: 2004/02/25
投稿数: 110
投稿日時: 2008-04-09 22:03
バイト数を節約するためにServletで書くと言っているのではなく
デプロイ時にツール等でインデントなどを省くということは
未来永劫、同一人物が管理することが現実的でないため
運用の煩雑さからデグレ等が懸念されませんか?
引用:

開発やメンテはインデントされたものがいいですね。
PHPで開発するときは、よくSmartyを使っているのですが、
テンプレートにはインデントを入れて、出力時にはインデントを取り払う指定をしています。

JSPのコンパイラだとその辺の便利な機能がなくて残念ですね。


JSPではインデントを省く機能が無い(JSPの変換pointにafterアドバイスを織り込めばできないことも無いかな)といったことは共通の認識でよいのですよね?
それであればStringでデザインを記述しておいてもいいし(ロジックが複雑だと大変ですが)
XSLTで空白類を除いたHTMLを作成しresponseで返してもいいわけですよね?

スキルアップ/キャリアアップ(JOB@IT)