DTMLドリル
Zopeの開発効率を上げたいと思っている人,「Zopeに使われる側」から「使う側」にステップアップしたい人向けの講習会です。DTMLに関する問題を解きながら,DTML利用時の勘所を解説,Zope Page Templateとの比較をしながら,Zopeの内部構造について学びます。10月1日20時から,答え合わせと解説を行います。
Zopeを使っていると頻発する「KeyError」や「AttributeError」。これら「Zope開発の生産性を下げる原因」となっているエラーが「なぜ出るのか」「どうすれば出ないのか」について,Zopeの仕組みを解説しながら解き明かし,みなさんの"もやもや"を解決したいと思ってます。
発表資料
当日は,前半,後半に分かれてプログラムを行います。
テスト編(前半)
あらかじめDTMLに関する問題を用意し,解いてもらいます。DTMLそのものに関する問題,DTMLだけでなく,Zopeの仕組み,Pythonを知っていないと解けない問題など,バラエティーに富んだ問題を用意する予定です。
サンプルの問題
問題1
DTML Methodと同じ階層に"foo. gif"という画像ファイル(Imageオブジェクト)がある。この画像の「横幅(width)」を表示するためのdtmlタグを書け。
問題2
DTML Methodと同じ階層に"test_script"というScript(Python)オブジェクトがあり,このスクリプトを実行すると"foo"という文字列を返す。この状況で,以下のDTMLタグがWebブラウザに表示する結果として正しいものを選べ。
<dtml-var "test_script">
- 何も表示されない
- "foo"という文字列
- "<PythonScript at imagetest>"という文字列
- エラーになる
解説編(後半)
問題の解答を示しながら,問題の背景,解き方,考え方について詳しく解説します。問題を通してZopeの内部を知り,応用力を養うのが目的です。「脱Zope初心者」を目指しましょう:-)。
また,必要に応じてZope Page Template(ZPT)との比較を試みながら,DTMLとZPTとの違い,お互いの利点,欠点を探ります。
具体的な実施方法
29日夜を目処に問題をPDFにて公開します。時間制限は設けませんので,各自空き時間を使って解いてみて下さい。「仕組み」を知って頂くことが最終的な目的なので,実際にコードを書いて試してみたりしてもかまいません。
10月1日の20時より,答え合わせと解説を行います。興味のある方は会議室にご参集下さい。時間は約1時間ほどを見ています。その後,質問などは随時受け付けたいと思います。