JSP (プログラミング言語)

出典: 謎の百科事典もどき『エンペディア(Enpedia)』
ナビゲーションに移動 検索に移動

JSPとは、PHPにコンセプトは似通っているものの、PHP よりも設定が面倒臭く、書くことが多く、それなりのスタイルというのがあるため近くに詳しい人がいて質問できないと苦労があるという「どこが嬉しいのか?」という感じの言語である。

概要[編集]

とはいえ、一人で作ろうと思ったら小屋しかできないが、頭数が増えるとちょっとした家だって作れてしまう。そういうのに向いた言語(といってもスクリプト言語なので、Java が理解できないと面倒なんだが)であり、保守が楽(つーても Java のライブラリが整備されていればの話だが)なのが取り柄なのである。

JSP の特徴[編集]

HTMLに埋めこめるという点では JavaScript や PHP とコンセプトは同じ。ただ JavaScript はクライアント側で動くのでサーバーサイドとなると相手になるのは PHP である。
PHP との違いとしては、PHP より JSP のほうが不自由で文句が多いことである。このあたりは Lisp のほうが自由だ。
例を上げれば X が 103 で Y が 503 で Z = X + Y だったらどうなるか。JSP では必ず処理系に文句を言われる。なぜかというと Z が103503 なのか 606 なのかわからんからだ。Java だと int x = 103, y = 503, z = x + y とかいった「変数の静的な型づけ」が必須なのである「どっちもやりたい」と思ったら変数スコープを分けて int と String をそれぞれ指定しないとならない。で変数の型によって“+”のやることが違ったりする。
「面倒臭ぇ~!」と思っても、これをやっているとだんだん気にならなくなってくる。そのうち変数名が一文字だとかえってイラつくようになり、「変数名は3文字以上の意味のある名前」とかやるようになる。そうなると「いちいち文字を入力するのが面倒臭ぇなぁ」と思うが、変数スコープが違うと参照できない。そうすると複数のWepページの間で同じ値を共用することができない。さぁ、どうする?
いちおう、Java 言語の中の空間では「シングルトン実装」という常套手段がある。これを主導したのがGoFだ。「ギャング・オブ・フォー」すなわち「四人組」である。メンバーは江青、張春橋。姚文元、王洪文 …… ではなくエリック・ガンマ、リチャード・ヘルム、ラルフ・ジョンソン、ジョン・ブリシディースがまとめた手口集が「デザインパターン」だ。
「つーても私はHTML しか書けねぇっつーの!!」という人はいるだろう。それどころか「WikiWikiWeb っつーのは『「HTMLなんて面倒臭ぇから、サッさとWebページが書けねぇか?』ってところから出発してるんだろうがよ!」とキレる人もいるだろう。その怒りはふつくしい。「怠慢」「短気」「傲慢」はプログラマの三大美徳だと、Perl の作者であるラリー・ウォールも断じている。

だったら、MediaWikiのWiki記法(スクリプトだ)をHTML の記述(これもスクリプトだ)を表示する JSP のコード(これもスクリプトだ)を書きゃあいいんでないかい? つまりはスクリプトの三階建てだ。具体的には<%>で挟めばJavaのコードが書けて、しかもページを移動してもJavaBeansが従いてくるという有難い仕組みである。

遅くならないか?[編集]

心配なのは「遅くならないか?」だ。まぁ、なっても不思議はない。とはいえ、それは MediaWiki だってやっていることだ。だけどせいぜい倍だろう。「ムーアの法則」の放送が正しいとすれば、コンピュータの性能は十年で千倍になるという。高校で指数関数と関数対数はやったよね? その計算だと年に倍なんだよね。しかも JSP は Tomcat 以外のコンテンツ・サーバーがサポートしていて Java だって動けばクライアント・サイドのマシンも強力になってるし通信環境だって強くなっている。そうなると倍遅くなってもたぶん誰も気がつかない。しかもそれぞれの処理系のベースは商業アプリの世界で現役バリバリで鎬を削っているわけで、「PHP と MediaWiki」なんていうWiki以外に用途のないシステム[1]と勝負して負けるとは思えないんだよね。じつは医療系の学会とか、製薬会社と医師や薬剤師さんとのシステムはいくつもあって、そこにこのシステムを引っ提げていったら喜ばれそうに思うんだよね。どっちもコンピュータ遣いだし。
だいいち、自前でMediaWikiのサブセットを組むなら、WikiPedia みたいにレガシーなあれこれを背負っているわけじゃないから身が軽い。「昔の古いWikiスクリプトはヘンなふうに化けるかもしれないから見つけたら直してね? データベースの中身は変えてないから、違いは古いほうの画面で見てちょ」でいいような気がするんだわ。
世の中には「PHP で飯を食っている」というプロもいるだろうけれど、システムの規模がでかくなってくるとメンテナンス担当者の負担が増えるし、かといって人を増やすにしても PHP のプロも見つけにくいし頭数が増えると足並みも揃わなくなろだろうし。
どうだろうねぇ?

脚注[編集]

  1. ローカルで鯖を立てて同じ職場の LAN で繋がっている奴との情報共有に活用している奴も、探せばいるかもしれないが。

関連項目[編集]