トップページ⇒php
930コメント657KB

コンテンツとデザインの分離

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2001/05/27(日) 17:59ID:6pK8snWA
ASPでもPHPでもPerlでもJavaでも形こそ違えど結局は可変部を吐き出すための
<%〜%>やらprint文の嵐になってしまう。

「HTMLはHTML、プログラムはプログラムと完全に分離する方法はないものか。」
を話し合うスレッドです。
0096名無しさん@お腹いっぱい。02/01/08 03:12ID:???
>>94
WO、なんで Mac でしか動かないんジャー。
0097名無しさん@お腹いっぱい。 02/01/08 04:33ID:???
>>96
WebObjectsの稼働環境は下記の通り。

【開発環境】
 Windows2000、Mac OS X

【運用環境】
 Java2 SDK 1.3.x and JDBC2.0ドライバがあれば、一応なんでもOK
0098名無しさん@お腹いっぱい。02/01/13 21:25ID:???
>>94

Cocoon2ならXML+XSLT+XSPと分離できているがどうよ?
0099名無しさん@お腹いっぱい02/01/13 23:34ID:???
>>98
WOと平行してXMLベースの開発もやってんだけど、まず開発効率の点で比較にならん。
Cocoon2も、技術的には面白いとは思うので、オモチャとしていじってはみたい。
0100名無しさん@お腹いっぱい。02/01/14 07:22ID:???
なんにしても、この分野はまだまだこれだってのは出てないよね。

>>98
XSP はんてはじめてきいたよ。
JSP みたいなもんなのかー。
0101名無しさん@お腹いっぱい。02/01/14 17:33ID:???
>>99

そうなのか。漏れもCocoon2は触り始めたばかりだしWOも知らないから
殿辺がWOと比較したときに差がつくのか氏りたいな。
0102名無しさん@お腹いっぱい02/01/14 22:20ID:???
>>101
XSP、動的にXML生成してくれるのは興味深い。
でもこれ、XML文書の中にJavaのロジック入れちまうような感じだろ。
基本的にゴリゴリとやる作業多いし、DBとの連携もコードをゴリゴリ書かなきゃならん。
まぁこれはこれでハヤリに沿ってると思うが(w
JSPなんかもそうだけど、めんどくさくない?

WOの場合は、クライアント側に吐かれるのはHTML。
HTMLテンプレート内に、動的なHTMLを生成するタグを組み込むんだ。
基本的なWebオーサリングと、動的なWeb上のオブジェクトを組み込むためのツールがある。
動的にHTML生成するオブジェクトには、一般的なHTML要素に加えて、
繰り返し処理、条件判定付き処理なんかも含まれてる。

DB側は、テーブル構造をリレーション含めてJavaクラスにマッピングしちまうオブジェクトを作ってくれる。。
メソッド叩けばDBアクセスするようなソースを自動的に生成してくれる機能もある。
この辺のロジックとWebのインタフェースの接続は、ビジュアルにできるぞ。
単にDBから条件検索して取得したデータをWebに吐くような処理なら、ほとんどソース書く必要なし。

興味があったら
http://www.apple.co.jp/webobjects/wo_docs_j.html
でも見てみれ。

巷のApp鯖やJSP/Servletなんかもあれこれ評価してみたけど、漏れ的には今のところ、
鯖側App作る技術的なら、WOが一番すげぇと思う。アポージャパソはクソだが(藁

ミカカの社内ベムチャ1号企業(社長は光ファイバの構造発明した博士)が、WOで作ったアプリが、
セガのバーチャファイタと共に、スミソニヤン博物館に展示されてる。
日本製のソフトウェアでスミソニヤンに殿堂入りしてるのは、この2作だけだと。
0103名無しさん@お腹いっぱい。02/01/15 16:59ID:???
>>102

DBの連携はServletでやってXMLを出力させて、Cocoon2のGeneratorに
割り当ててる。OracleのXDKとか使えば簡単にXML生成出来るから。
XSLTとXSPはPresentationの整形に使ってみたりしているので、
JSPと違って面倒くさいとは感じない。漏れは結構感動した。

WOはWebで見てみた。面白いね。正にObjectという感じがして印象はいいね。
ただVとCが綺麗に分離されているようには感じなかった。バインドだけを独立して
メンテナンス出来る仕組みがあるなら大丈夫だと思うけどね。

でも今までWOは知らなかったので、ちょっとずつ調べてみるよ。ありがとう。
0104名無しさん@お腹いっぱい02/01/15 20:12ID:???
>>103
漏れの説明が全然足りてないと思われ(w
VとCは、結構綺麗に分離されてると思う。

まぁとはいえ、結局WOも繭2+XSLT+XSPも道具であって目的じゃないから、
目的に応じたツールを使えばいいだけだよな。
政治的な理由で理不尽な道具を使わされたりってこともあるけど(w

漏れも知識を広める目的で、繭2あたりもベムキョーしてみる。
0105名無しさん@お腹いっぱい。02/01/16 00:37ID:???
>>104

いやいや、漏れがちゃんとドキュメントを読み込んでないだけだ。スマソ
でもすごいねWOって日本語ドキュメントが公開されているんだねー。
英語のドキュメントと格闘しているとこういうのは嬉しくなるよ(藁

>まぁとはいえ、結局WOも繭2+XSLT+XSPも道具であって目的じゃないから、
>目的に応じたツールを使えばいいだけだよな。
>政治的な理由で理不尽な道具を使わされたりってこともあるけど(w

禿しく胴衣。漏れもたまたま繭2(っていいなこれ)を氏って感動しただけで
仕事になるかは不明だが、色んな道具を勉強しておかないと目的に合うものが
あっても使えないしと思って触り始めたところだった。WOも勉強してみるよ。
0106名無しさん@お腹いっぱい。02/01/18 17:29ID:yclowW7G
上の方に出てたWalrusっていうのを使うと、
http://210.155.146.159/dann/srd_list/whatsnew
このページが

http://210.155.146.159/walrus/walrus/sample/srdlist/srdlist.rb
これだけで表示できるって言うんだけど、本当かな。
0107名無しさん@お腹いっぱい。02/02/16 11:32ID:kVRJZgu9
XMLとXSLTでページを作って、javaかなにかで、HTMLにして吐き出す
って方法を考えてるんだけど、やっぱりデザイナーにはつらいっす。

デザイナーにXSLT覚えさせるんじゃなくて、プログラマーに
デザイン覚えさせた方が、手っ取り早くて確実だと思うよ。
0108名無しさん@Emacs02/02/16 11:48ID:xWyhCOfA
107はプログラマとデザイナーどっち?
0109名無しさん@お腹いっぱい。02/02/16 12:10ID:KRm5UaCt
プログラマーとデザイナーは必要とするセンスが全然違うよ。
ひとりで両方やったらどっちも中途半端になると思うけどな。
0110名無しさん@お腹いっぱい。02/02/16 12:24ID:uSHa0cBb
XSLT ってなんか違う気がする。なんか。
デザインしてるっていうよりプログラム書いてるような感覚。
HTML が細切れで現れるあたり、へなちょこ Perl スクリプトと似てる。

どうせクライアントサイドじゃまともに使えないんだし、
それだったら自分の使いやすい言語使って XML を整形したほうがはやそうだ。
0111名無しさん@お腹いっぱい02/02/16 13:13ID:???
デザイナーが直感的にXSLTを扱えるツールなんて、ムリだろ。
プルグラマーにデザインはやらせられないし。(畑が違うんだよね)

うちとこ、海外本社がXML+XSLTでUI作成するエンジン作ってるけど、
ブラウザに直食わせ&MS-XML依存という、超破綻システム。
IEでしか表示できず、Webブラウザベースである意味が無い。
いっそVBでいいじゃんと思ってしまう。
0112名無しさん@お腹いっぱい。02/02/17 19:54ID:u6FvlsM9
そういや、普通のプログラムの方の UI ってプログラマが設計してるんだよね。
UI 専門チームでやってるんだろうけど。

そういう意味では、紙じゃなく "Web" のデザイナーって時点で
プログラムぐらい書けなきゃいけないのかもね。
データベース設計とかそういうコアな部分だけプログラマが作るってのはどうだろ。

結局、現在の HTML 周りで完全にコンテンツとデザインを分離出来て、
かつ実用的なシステムは無いってことになっちゃうのかな。

悲しいな。
0113名無しさん@お腹いっぱい02/02/17 23:42ID:???
>>112
コンテンツとデザインてよりは、UIとロジックを分離という面で、
Webアプリケーションサーバと、その開発環境、ということに限定するなら、
1つだけ存在する。
アップルのWebObjects。
日本ではビジネスとしての環境は劣悪だけどな。アップルJPがダメだから。
0114名無しさん@お腹いっぱい。02/02/21 09:04ID:2RVX4IAG
>>113
前々から興味はあって、WebObjectsスレも見てはいるんですが…
メイン環境が Linux なんで開発環境が動かない。無念。

Zope なんかはどうなんだろう。
0115名無しさん@お腹いっぱい。02/02/21 13:44ID:PWLuAunJ
>>106 のwalrusっていうのもコンテンツとデザインの分離はきれいにできてるぞ。
実績ではWebObjectやZopeに遠くおよばないけどな。
日本人が開発してるからサポートは期待できるかも。
0116名無しさん@お腹いっぱい02/02/21 18:02ID:???
>>114
Linux用VMwareでも入れれ。もしくは、開発用Win用意して、VNC使うとか(w

>>115
サポートもそうなんだけど、やっぱり運用環境にかかるコストと、
負荷分散、障害復旧の仕組みやコストも重要なんだよね。
負荷分散は、WebObjectsはひじょーに楽。
アプリ側の変更いらないし。

アポーのサポートは、まったく期待できないのが鬱。
とはいえ、海外のMLとかでは十分な情報があるから、さほど心配はいらねんだけどね。
0117名無しさん@お腹いっぱい。02/02/22 06:47ID:0Wx4juTv
>>116
負荷分散が楽っていうのは、
1)WEBサーバ---アプリサーバ---DBサーバ の3台構成が楽にできる
2)1)の各階層をそれぞれ複数マシンで構成できる

のどっち? 
0118名無しさん@お腹いっぱい02/02/22 11:19ID:???
>>117
もちろん後者。
Web鯖自体は、WOで負荷分散ってわけにはいかないけど、
アプ鯖は、負荷上がってきたら別鯖立てて運用ツールに鯖を登録、
あとは立てた鯖にアプのインスタンスを増やしてあげる設定をするだけ。

DBも、負荷分散ちゅー観点からちとズレるけど、
別々のDBのテーブルを、1つのJavaオブジェクトにラップできちゃう。
OracleとSybaseにDBが分散されてても、まとめて1つのオブジェクトにラップして、
アプは、そのオブジェクトとやりとりするだけ。
驚異。
0119名無しさん@お腹いっぱい。02/02/24 00:16ID:VTvdAz4Q
アプ鯖だけで動かしても1台で足りないってのは、
(1) それだけWOが重いってこと?
(2) WOはそれだけ負荷の高い処理を前提として設計されてるってこと?

大規模で本格的なシステムでは、いつ消えるかわからんものは、いくらモノがよく
ても怖くて使えない。小規模なシステムをパパっと作るような所で使いたいんだ
が、大規模なシステムをターゲットにしてるとしたらちょっとミスマッチかも
0120名無しさん@お腹いっぱい02/02/24 00:56ID:???
WOは、元々、NeXT時代からあるんです。
金融系で実績ありますよ。元々、大規模なシステム向けでした。まぁ大は小をかねてますね。
一昨年までは、同時アクセス数無制限のライセンスだと、開発版+運用版で\700万Overでしたし。

とはいえ、別に俺は信者や回しモノでもなんでもないので、あれこれ言う必要もないでしょう。
WOも所詮は道具。目的に応じた道具を選択すればいいだけ。
0121名無しさん@お腹いっぱい。02/02/27 20:01ID:ZOHgWtn/
WebProg 板的には、HTML はデザインに入るって解釈でいいのかな。
0122名無しさん@お腹いっぱい。02/02/27 20:05ID:???
外に見える部分は全部デザインなんじゃないかな。
0123名無しさん@お腹いっぱい02/02/27 21:05ID:???
HTMLにロジックやらSQLが埋まってる場合はどうよ?
0124名無しさん@お腹いっぱい。02/02/27 22:41ID:4wH+W7s0
>>123
埋め込まないですむツールを探すのがこのスレの趣旨だろ。
WOやWalrusではそういうことができる。
0125名無しさん@お腹いっぱい02/02/28 00:25ID:???
Walrusは、実務レベルじゃ使えないな。
0126名無しさん@お腹いっぱい02/02/28 00:26ID:???
っつーことは、
Perl, PHP, ASP, JSP, ColdFusion等々もダメってことか。
0127名無しさん@お腹いっぱい。02/02/28 05:28ID:???
>>119
WOはスケーラビリティも売りだったりする。
ノートパソコン1台で何から何までやる最小構成から始まって、
(これでパパっとデモとかやるとけっこう食い付きがいい)
最後はhttpd複数、app鯖複数、DB複数みたいな重厚長大構成まで持っていける。
今だとApacheとCocoon組み合わせた感じとちょっと似てるな。ってもちろんWOの方が古いが。

WO出たての頃はCで書いたcgiとかと比べられて、app鯖重い、とかいぢめられたが、
最近はServletだのなんだので他も重くなってるのであんまり言われなくなった(w
0128名無しさん@お腹いっぱい。02/02/28 05:44ID:???
Walrusって見てみたけど、ふつうのタグのid属性使ってるのキビシイな。
までもeRubyとかcgi-libよりもイイのは認める。

>>125
そもそもRubyを実務レベルで使わせてもらうのもまだ抵抗アリ。
0129名無しさん@お腹いっぱい。02/02/28 07:15ID:deZVjrVj
Walrus使ってみたけどdreamweaverでテンプレート編集できて、
それがそのまま動的なページになる。
便利な気はするけど、俺もRubyを実務で使うのは怖い。
0130名無しさん@お腹いっぱい。02/02/28 07:45ID:EVItbpbr
>>126
>>1 でその結論はでてるような。

embed 系は注意しないとだめでしょう。
繰り返しと分岐をどうするかだよね。
Walrus の繰り返しは上手くやってるなと思う。

無理に分離しないってのも選択肢だとは思うけど。

>>128
普通の id 属性使ってるとこがよさげじゃない?
独自な要素使ったりするのはエディタと馴染まないだろうし、
別ネームスペースの要素や属性を扱える HTML エディタってしらないし。
って DW すら使ったことないからわからんけど。
0131名無しさん@お腹いっぱい。02/02/28 09:45ID:???
>>130
> 普通の id 属性使ってるとこがよさげじゃない?

あんまり詳しく見てないんだけど、今までHTMLの編集過程で
id属性を使ってた人はそれをあきらめなきゃいけないのと、
タグで囲まない部品は定義出来なさそうってのが
ちょっとツライ。
あと、コピペしたときにすぐ名前空間衝突起こしそうだよね。

なんか興味出てきたんでMLにでも覇逝ってみるか。
0132仮02/02/28 20:46ID:noWCUt+8
>>131
warlus 使って、掲示板作ってます。
http://210.155.146.159/bbs/

idは、<div> や <span> にも付けられるので、タグで囲まない部品
の問題は、ほとんど起きませんよ。

>あと、コピペしたときにすぐ名前空間衝突起こしそうだよね。

これは、私も問題だと思います。NAME属性とも衝突起こしますし。
0133nobodyさん02/03/03 02:06ID:Z7la6eJB
こんなの

HTML::DWT - DreamWeaver HTML Template Module
http://search.cpan.org/doc/WHYTEWOLF/HTML-DWT-2.06/DWT.pm

みつけたんだけど、DreamWeaver のテンプレートって
どんなかんじ? 使ったことない...(恥)
0134nobodyさん02/03/03 06:02ID:???
JSP のカスタムタグ作ればきれいに分離ができるじゃん。
0135nobodyさん02/03/03 14:40ID:nKi/6AzP
>>134
カスタムタグを扱えるHTMLエディタって何がある?
そのエディタを扱えるデザイナってどれくらいいる?
0136nobodyさん02/03/03 21:25ID:???
>>134
あそ、ここはオーサリングソフト使わなきゃ HTML 組めない人達の
板だったわけね。横槍大変失礼いたしました。
0137nobodyさん02/03/03 22:36ID:???
>>135
何か JSP に恨みでも?
っていうか PHP や ASP 用の HTML エディタってあるの?
デザイナってみんなそれ使ってるの?
0138nobodyさん02/03/03 22:38ID:???
>>136
じゃなくてさ、
オーサリングソフトを使わなきゃHTMLを書けない奴と
一緒に仕事をしなきゃいけない人もいるじゃん。
このスレってそういう人が多いと勝手におもってるけど。
0139nobodyさん02/03/03 23:00ID:???
>>138
じゃこのスレはオーサリングソフトのサポートがない物は論外というわけかね。
いや別に良いんだよ、1のタイトルが目に付いただけのUnix板からの流れ者だから。
話の流れを読んでなかった俺が悪かったということでよろしいな。
014013802/03/04 00:06ID:???
>>139
や、論外ってわけじゃないけどさ。ひとつの方法には違いないし。
ただJSPのカスタムタグで解決だぁ〜ってほど、明るくはなれないのよってだけ。
0141nobodyさん02/03/04 00:09ID:cezFKT1+
>>139
デザイナを含む開発でメンテナンスまで含めた*工程*を提示してもらえば、
オーサリングソフトにこだわるつもりはないよ。

デザイナが雛形作成したものに、
プログラマが<%.. >や<? ...>やカスタムタグを追加してページを作ると新規の時はいいが、
デザインの見直しがあった時に、誰が何をいじればいいのかわからない。
XMLやカスタムタグを自由に使える技術力のあるデザイナがいればいいが、
そんな都合のいいやつはいそうにない。
結局、標準HTMLで動的なページを作成できるアプサバ使うしかないと思うが
他にいい手があるだろうか?
喧嘩を売ってるわけじゃなくて、
「流れ者」だから見える所があるかもしれないと思って聞いている。
0142nobodyさん02/03/04 08:47ID:???
とりあえず、場違いなレス付けてすまんかった。
>>136 は半分煽りで入れたんだが、オーサリングソフトでデザインと
コンテンツを分ける方法を本気で話すのが趣旨なら大変悪かった
(おとといから咳が止まらなくてイラついてたな)。

流れの話だが、専門でやってるのは銀行や保険なんかの金融系 Web
サイト。一回の開発で画面数にしておよそ 100〜150 くらい (フ
レーム分割された一つ一つの合計) な上、かなりの処理が入るので、
最後までオーサリングソフトでやろうというのは度台無理な話。
まぁ売り物はコンテンツであってデザインではないと言い切れる
世界なので、デザイナが絡むとしても最初のデモ画面作成くらい
かな。どのみち開発者が手書きで HTML を書き直すことになる
(おかげでページデザインのできるシステム屋は付加価値が付く;
専門の人にはかなわんが)。だから HTML が書けないデザイナ
なんてハナから頭になかったし (そもそもそれじゃブラウザ間の
互換を保ったデザインなんてできないと思う)、>>1 を見て普通に
Model-View-Controller の話かと思ったわけ。

まぁ HTML が書けることが大前提だったから、JSP+拡張タグでデザ
インを分離できてこれ以上何が必要? って話だったわけ。

それから XSL はサーバ側にかなりの負荷をかけるので、大き目の
サイトではあまりお奨め出来ない (特に Java で組んである奴)。
ちょっとリクエスト数が上がるとすぐ監視端末が真っ赤になる。
0143nobodyさん02/03/04 13:40ID:oVEZs8i8
>>142 貴重な意見thanks
そういうシステムやってる人にこそ聞きたいだけど、
大規模なWEBアプリの開発では、どういう分業が理想的だと思う?
たぶんその規模の開発なら、
役にたってるかどうか別としてコード書かないプロジェクト管理屋がいたり、
DB屋も論理的なモデリングやる奴とパフォーマンス考える奴に分かれてたりするだろ。
WEB回りもこれから専門分野ごとに分化していくべきだと思うのだが、
(部品としてタグライブラリ作る奴とそれを美しく配置するデザイナーとか)
どこでどういう風に分離すべきか、もしアイディアがあったら聞かせてほしい。
0144nobodyさん02/03/04 19:33ID:???
>>143 # インフルエンザ発覚、乱文失礼
ロジックを組む人とデザイナの作業を明確に分けたいならタグライブラリが
最適だろうな (Java 限定の話ですまんけど、俺、他は C++ で CGI くらい
しかやったことないし)。まだオーサリングソフトだけでちょっと込み入った
繰り返しや条件分岐作れるほど技術が枯れていないと感じている (普段テキ
ストエディタしか使わないんで実際のところはよくしらんが)。

プロの Web デザイナがプロジェクトに参加するとしたら、やっぱり
HTML くらいかけなきゃ意味ないとおもう。そうじゃなきゃ「ただの
デザイナ」だよ。互換性や挙動の違いを良く知っている人がいい。
カスタムタグの一覧と使い方を渡して、後のデザインはデザイナに
任せるみたいな (本当は事前にお客さんが決めてんだけど)。そう
じゃないと、結局プログラマがデザイナの作ったページと同じ体裁に
なる HTML を1から組まなきゃいけなくなる。

機能的なタグライブラリがそろうと「横展開」というかなりおいしい
おまけがついてくる。中のロジックはまったく同じでデザインをガラリ
と買えればまるっきり新規開発したように見えるから。中小企業相手の
管理ソフトとかこっそりやってるところあるとおもうよ。

っていうか今日はもうだめっす。
0145nobodyさん02/03/05 01:14ID:???
前に、本当のデザイナ、HTMLもちょっとわかるデザイナ、
HTMLバリバリ書くしcgiもやるがデザインセンスなし男、
ただのJavaプログラマ、って構成でデザイナが紙で持ってくる(良くて
Photoshopファイルとか)デザイン案を、必死にオーサリングツールに
乗せて、それをタグの整合性失われてないかチェックする、という
かなり力技やってた。
思うに、中間に何も入らないってのはおそらく無理だ。
ツールにしろ人にしろ、なにかそこに挟まる。
0146nobodyさん02/03/05 09:42ID:YJM7TYzZ
>>145
たぶん新規開発だからまだ力技が通じたんだと思うよ。
(それでも相当苦労しただろうけど)
メンテナンスフェーズに入ってから、
馬鹿なデザイナーと一緒に仕事すること考えると鬱
でもそういう奴のデザインセンスは凄い。
色の使い方ひとつとっても全然違う。
ちょっと絵心のあるプログラマなんかじゃ、とてもたちうちできない。
馬鹿さかげんもたちうちできないけどな。
0147nobodyさん02/03/05 13:16ID:2x2AJfUn
うーむ。理想的な方法はまだ無いってことで、
現状では、デザイナーは最低限 HTML の構造ぐらい理解しとけ、
でよろしいかな?

ところで、HTML 読めない Web デザイナーってどれぐらいいるんだろ?
都市伝説だと思いたい。

Strict な HTML じゃない!とかそういうのはまあ置いといて。
0148nobodyさん02/03/05 13:22ID:???
HTMLを書かないやつはいても
読めないやつはいないでしょ。
0149スズキ02/03/08 11:44ID:+mT8zTLZ
はじめまして。スズキです。
コンテンツとデザインの分離をコンセプトにBBSのCGIを作ってます。
よかったら見てください。m(_ _)m
http://www.bluepage.org
0150nobodyさん02/03/08 13:17ID:???
ほんとに「コンテンツとデザインの分離」がコンセプトならWeb製作板じゃないかなぁ?
ここはどっちかっていうとデザインとロジックの分離のような。
0151nobodyさん02/03/08 15:48ID:???
>>150
禿同。
MVCの三権分立。
0152スズキ02/03/08 16:02ID:CkkEnjQA
>>150
たしかに!そのとおりだよね。

「HTMLはHTML、プログラムはプログラムと完全に分離する方法はないものか。」
という部分を読んで、
てっきり、プログラム中にHTMLを書かないCGIに関して話すのかと
誤解してました。
0153nobodyさん02/03/08 16:16ID:???
>>151
Webページはもともと静的なものでは?
[M] → XML
[V] → XSLT+XSLTFo
[C] → ?? スクリプト?UA?
0154三級者02/03/10 22:07ID:???
>>144
> 結局プログラマがデザイナの作ったページと同じ体裁に
> なる HTML を1から組まなきゃいけなくなる。

禿。PerlでもHTML::Templateなんてモジュールあるけど
デザイナがカスタムタグ理解してくれないと労力効率は何も変わらん。
0155nobodyさん02/03/10 23:06ID:sQ4r0PjT
結局、EnhdraやWalrusのように特殊なタグなしのテンプレートが正解ってことか。
Zopeも最新バージョンでは似たような方向に行くようだし。
0156nobodyさん02/03/11 22:29ID:???
[M] = Database
[V] = HTML ( + JavaScript)
[C] = Server Side Application
0157nobodyさん02/03/12 00:07ID:???
MVCとひとことで言っても、ControllerがViewのすみずみまで
知りつくしてるやつと、Viewがプラガブルなやつを較べると
相当に趣が違う。
C = App Server だけだとその違いを反映していない。
いかにApp鯖にhtmlの面倒を見させないか、というのを
話しているところにMVCの話を持ってきてもピントずれてる
というか、それだけでは意味ないって。
0158102/03/12 11:45ID:kdCuXako
まだ残ってたのですね…

なんか混乱気味なので、スレを立てた者としてどういう意図で立てたスレなのかを
説明しておきます。(激しく今更ですが)

まず、何度か指摘があるようにロジックとHTMLの分離が正しいです。
とりあえず、コンテンツ = プログラムで吐き出す可変部 という意味で取って下さい。

MVC云々、アプリケーションサーバとは云々というほど規模の大きい話のつもりは
ありませんでした。そこまで話を広げるなら、プログラム板か情報システム板の方が
適切ですね。

せいぜい
「テンプレートっていうかそんな感じの仕組みでなんかイイのない?」
レベルの話です。

デザイナが書いたHTMLをプログラマレベルでがんがん弄っちゃうような環境と規模
(もしくはデザイナ=プログラマ)で、できればオーサリングソフトと相性がいい仕組み
だと便利だよねえ。程度の話のつもりでした。

以上参考までに。

あ、私はSmartyに落ち着きました。Enhydraと格闘してたのは遠い昔…なんであんな苦労を…

しつこいですが、PHP使ってる人「Smarty」イイですよ。相変わらず日本語の情報は
皆無ですが、テンプレートとしての使いやすさはバツグンです。
http://www.phpinsider.com/php/code/Smarty/
0159三級者02/03/13 09:01ID:???
154でわかるように、うちはHTML::Template使ってます。
あ、デザイナが理解できないちゅーよりオレの説明が下手なのか。

関係ないがデザイナ連中からColdFusion導入しろ、
とうるさくてかなわん。
0160nobodyさん02/03/13 19:34ID:???
ColdFusionしばらく使ってた。
簡単にサイト作るには、CFMLは確かに便利。
しか〜し。
きちんと拡張性も考慮して設計したにも関わらず、後の仕様変更と拡張時に、
デザイナ連中とのコラボレートで地獄を見たよ。
CFに限らず、JSPやASP、PHPなんかでも同じだと思うんだけどね。
デザイナが絡まず、サイトの大幅な仕様変更もなきゃ、いいツールだ。
0161nobodyさん02/03/13 23:23ID:LkTLC//k
HTML::Templateおもしろいね。
でも、標準的にどこでも手に入る環境じゃないのが辛いなぁ。
0162nobodyさん02/03/14 00:11ID:???
HTML::Template はプログラマにとっては便利だけど、
デザイナは読みたくもないだろうと思うよ。
0163nobodyさん02/03/14 01:23ID:Jx+3VC0E
HTML::Templateは、たしかにどこでもインストールされてい
るわけではないけど、展開して置いておけば(つまり make とか
しなくても使えるよ。)
最近のヤツはいろいろ他のモジュールを必要とするので、1.8とか
をいれるとよいでしょう。
基本的なことは、1.8でもできるし。
0164nobodyさん02/03/14 07:46ID:nAmAc5Wh
コールドフュージョンはデザイナがコーディングするためのものです・・・。
0165nobodyさん02/03/14 15:11ID:???
>>164
どこの会社?社名出してよ。
もし契約してるとこなら、打ち切らなきゃ。
デザイナにコーディングさせたオナニーシステムなんて、使い物にならん。
0166nobodyさん02/03/14 15:46ID:xs367yVo
>>163
1.8ってまだ公開されているの?
0167nobodyさん02/03/14 23:19ID:6NMo0mqW
>>166
公開されているよ
http://www.cpan.org/authors/id/S/SA/SAMTREGAR/HTML-Template-1.8.tar.gz

ちなみに、最新は2.5です。Perl5.6必須だけど。
http://www.cpan.org/authors/id/S/SA/SAMTREGAR/
0168nobodyさん02/03/14 23:33ID:83vwJ138
>>167
Thx!早速落としたよ。
0169nobodyさん02/03/15 01:50ID:sSRdthig
レンタル・サーバだから、そういうの使えない…
Smarty も HTML::templateもよさそうだけど。

何か言い方法ありますかね?
0170nobodyさん02/03/15 02:04ID:???
ホームにインストールしる
0171nobodyさん02/03/15 02:20ID:sSRdthig
>>170
あ、それでできるんですか?
Smartyも?
0172nobodyさん02/03/19 22:42ID:BqZatu5x
テンプレートエンジン用のデザインのテンプレートがいっぱいあるのってあります?
これみたいにテーマがあって変えられるやつ。
http://curtisonline.net/theme/

PHP-nukeも使いようによっては、いじれそうだけど。
0173nobodyさん02/03/25 20:03ID:???
>>158
PHPのsafe modeを有効にしながらSmarty使う方法はありませんか?

Smartyはtemplates_c/以下にコンパイル後のファイルを置く訳ですけど、
この際に作られるディレクトリが複数階層にわたるみたいで、
これらがsafe modeの制限に引っかかってしまいます。
0174102/03/26 11:05ID:mzbnXmq6
>>173
http://marc.theaimsgroup.com/?l=smarty&r=1&w=2
ここで safe mode で検索かけてみて下さい。

おそらく解決方法があるかと思います。
017517302/03/26 16:39ID:???
>>174
情報thanx

やはり、解決策としては、

1.Smartyを利用するスクリプトの所有者をhttpdプロセスのUIDに合わせる
2.Smartyを利用するスクリプトがある領域だけsafe modeをOffにする。
3.CGIとして利用して、Apacheのsuexecを利用する。

しか無いみたいですね。
で、不特定多数の利用者が自由にSmartyを利用できるようにするためには、
CGIとしてPHPを動かすしか無い、と。
0176nobodyさん02/03/26 22:34ID:0DHHOlhe
PHP SiteManagerってどうよ?
http://www.roadsend.com/siteManager/home/treeMenu.php
0177nobodyさん02/03/27 13:10ID:xBtxtmDD
>>176
見てみたけど、多言語対応してるみたいだし、テンプレート・エンジンもあるね。
なかなかよさげだけど、誰か使ってないの?
0178nobodyさん02/03/30 22:47ID:???
>> 149
興味があり見に行きましたが、まさか Java script が必須とは (汗
いえ、只の愚痴です。すいません。
0179nobodyさん02/03/31 06:52ID:???
Smartyの英語マニュアル全部読んだのですが、
既存のHTMLファイルを取り込む方法がいまいちわからないです。
0180nobodyさん02/04/01 04:24ID:Hzf2fsPp
HTML::Templateってデザインとロジックの分離ができてないよね。
ループとか分岐の指定をする専用タグがある時点でアウトでしょ。
0181nobodyさん02/04/01 04:31ID:???
それにしてもHTML::Templateはかなり使えると思う
0182Dream ★02/04/01 06:40ID:???
>>181
うん、いい感じですね。
コンテンツ大きいとオーバーヘッドがきつそうだけど、アクセスがそんなに
負荷になっていないサーバだと、大丈夫なのかな?
とにかく、面白そうなものを教えて下さって、ありがとう>All
0183nobodyさん02/04/01 09:29ID:???
HTML::Templateってcgiでしょ?
うちは、/cgi-bin/以下に置かなきゃいけないから、いやん。
0184 ◆AngelBlk 02/04/01 11:00ID:???
Smartyだけど、青マンモス本にリファレンス載ってるみたい。
誰か買った人います?
どんな感じか教えてほしいのだけど。

会社の帰りにでも、探してみるかなぁ・・・。
0185102/04/01 14:08ID:ALawDKoI
>>179
取り込むというと…?
{include file='includefile'}
みたいなことは出来ますけど、たぶん違いますよね。

>>184
マンモス本ってなんですか?? オライリー?
0186nobodyさん02/04/01 16:33ID:SClNMZpg
>>185
お返事ありがとうございます。

ただ、現在のページをheder,left,bottomに分けて、そこをテンプレートにして管理したいだけなんですけど
Smartyだとやり方がよくわからなくて…。
0187102/04/01 17:11ID:ALawDKoI
>>186

別のファイルが差し込めればいいんですよね。

---- header.html ----
<h1>へっだー</h1>
---------------------

というヘッダー部があるとして、本文のテンプレート(例えばbody.html)に

---- body.html ----
<html>
〜 省略 〜
<body>
{include file='header.html'}
〜 本文 〜
</body>
</html>
-------------------
とすることで、body.htmlにheader.htmlが差し込まれた形で処理されます。
0188nobodyさん02/04/01 18:34ID:eCkZiEpB
青マンモス本でSmartyがどんなふうに取り上げられてるの?(近くで売ってないので)
Smartyのマニュアル和訳とかしてwebにあげようと思ってたんだけどなー(´д`;)7割はオワッタ
0189nobodyさん02/04/01 18:55ID:???
>>188
おーすげえ。まんせー。
0190nobodyさん02/04/01 19:41ID:jOov+muS
>>187
お返事ありがとうございます。

index.tplにheader.html等組み込むのはいいのですが、コンテンツを
各webページごとに入れ込む場合、テンプレートの方でなく、index.phpなどの方に入れ込むと思うのですが、その入れ込み方がマニュアルを見ても乗ってないというか、わからないというか...

例えば、index.phpのコンテンツ部分をindex.txtから取り込むには、ファイルを読んで、それを$contentsに入れ込んで、$smartyに渡すということをすればいいのでしょうか?...自分でもよくわからないです...

>>188
すごいですね。upしたら教えて下さい。
というか、途中でも、upすれば、リバイズとか助けられると思いますよ。
0191 ◆AngelBlk 02/04/01 23:16ID:???
>185
オライリーではなく。
PHP徹底攻略:実戦編のこと。
http://books.softbank.co.jp/bm_detail.asp?sku=4797315199
これ。

昼休みに買いに行ったら、店が休みだった・・・(涙

>188
目次みたら、リファレンスのところにSmartyって書いてあったよ。
でも、使い方和訳したならきぼーん。
0192 ◆AngelBlk 02/04/01 23:27ID:???
書き忘れ。
PHPusersMLより青マンモス本の目次。

http://www.geocities.jp/rui_hirokawa/php/php-book2/toc.html

多分、明日買ってきます。
0193nobodyさん02/04/02 06:01ID:???
>>190
話はずれるけど、DBからデータを取ってくるのとCVSなtextファイルからデータ取ってくるのどっちの
方が早いのかね?
0194102/04/02 09:55ID:IYI5YDp3
>>190
うーん、それはSmartyというよりPHPでゴリゴリ書くしかないですね。

---- main.html ----
<html>
<body>
{$contents}
</body>
</html>
-------------------
というテンプレートに

---- index.php ----
require("Smarty.class.php");
$smarty = new Smarty;
$fp = fopen("index.txt","r");
$smarty->assign("contents", fread($fp, filesize("index.txt"));
fclose ($fp);
$smarty->display("main.html");
-------------------

こんなかんじなのかな?
すいません、>>190さんの言いたいことがよくわかってないかもです。

>>188
ぜひUPして下さい。日本語のSmartyサイトが1件も検索に引っ掛かってこない現状
は寂しいです。
0195__02/04/02 10:01ID:hdBuJcW1
.NETつかえば?
0196nobodyさん02/04/02 10:11ID:6uavVYCo
>>194
わざわざコードまでありがとうございます。
これを参考に自分で書いてみます。

Smartyは、もうちょっとwebサイトに色々情報が欲しいなぁ〜と思いました。
MLの過去ログを見ても、やっぱりサンプルが足りないと言う人や、Smartyを使っているサイトを
教えてという人や、themeを作ろうなんて人もいました。
色々プラグインなんかもシェアできたら、便利そうですよね?

現在新しいサイトをオープンしているようですね。
http://smarty.php.net/

日本のサイトを作ったらまずいのかな?


■ このスレッドは過去ログ倉庫に格納されています