|
Revision 24870, 2.2 kB
(checked in by tokuhirom, 5 years ago)
|
|
added cache feature
|
| Line | |
|---|
| 1 | MENTA 設計メモ |
|---|
| 2 | |
|---|
| 3 | 前提 |
|---|
| 4 | ---- |
|---|
| 5 | |
|---|
| 6 | Perl 5.8.0 以後をサポート対象とする |
|---|
| 7 | CGI 環境でも高速である |
|---|
| 8 | use strict を強制して悪い習慣を身につけさせない |
|---|
| 9 | Windows でも動く |
|---|
| 10 | UTF-8 で書く |
|---|
| 11 | use strict; use warnings; use utf8; を強制する |
|---|
| 12 | テストを書く習慣を身につけさせる |
|---|
| 13 | Perl::Critic しまくる |
|---|
| 14 | スタンドアローンサーバーでも動く |
|---|
| 15 | HTML エスケープは自動でかける |
|---|
| 16 | ユーザが「自分はいい道具をつかっているんだ」とおもえるようにする |
|---|
| 17 | 初心者は OOP とかわからないので、関数でひととおりできるようにする |
|---|
| 18 | |
|---|
| 19 | 使い方 |
|---|
| 20 | ------ |
|---|
| 21 | |
|---|
| 22 | app/ 以下をいじくって自分のアプリをつくる |
|---|
| 23 | |
|---|
| 24 | テスト |
|---|
| 25 | ----- |
|---|
| 26 | |
|---|
| 27 | MENTA は十分に安定しているべきなので、テストを十分に書くべきだ。 |
|---|
| 28 | |
|---|
| 29 | % prove t/*.t |
|---|
| 30 | でテストが実行できるので、コミッタはテストを通すようにするとよい。 |
|---|
| 31 | |
|---|
| 32 | extlib/ の管理 |
|---|
| 33 | -------------- |
|---|
| 34 | |
|---|
| 35 | 全体の合計が 5MB 以下になること |
|---|
| 36 | 一部モジュールにはパッチをあててもよい |
|---|
| 37 | - DateTime は高速化のために一部 Locale/TimeZone をぬいている |
|---|
| 38 | - Cache::FileBackend は Digest::SHA1 をつかわないようにパッチをあてている |
|---|
| 39 | |
|---|
| 40 | TPFJ が要求する 10 のモジュール認定シールに入るだろうと仮定して同梱しないもの |
|---|
| 41 | ----------------------------------------------------------------------------- |
|---|
| 42 | |
|---|
| 43 | というか、XS だから同梱できないのね。 |
|---|
| 44 | |
|---|
| 45 | DBI |
|---|
| 46 | LWP |
|---|
| 47 | HTML::Parser |
|---|
| 48 | HTML::TagSet |
|---|
| 49 | DBD::SQLite |
|---|
| 50 | |
|---|
| 51 | 以下は、あったらいいなーとおもうけど、高望みだろうか |
|---|
| 52 | Digest::SHA1 or Digest::SHA |
|---|
| 53 | XML::LibXML |
|---|
| 54 | Imager |
|---|
| 55 | Net::OpenID::Consumer |
|---|
| 56 | Encode::JP::Mobile |
|---|
| 57 | JSON::XS |
|---|
| 58 | YAML::Syck |
|---|
| 59 | Text::CSV_XS |
|---|
| 60 | Net::OpenID::Consumer(PurePerl でも動くけどしぬほど遅いかも) |
|---|
| 61 | |
|---|
| 62 | 標準添付しようかとおもったら Perl5 標準添付だったもの |
|---|
| 63 | ----------------------------------------------------- |
|---|
| 64 | |
|---|
| 65 | Encode |
|---|
| 66 | MIME::Base64 |
|---|
| 67 | Digest::MD5 |
|---|
| 68 | File::Spec |
|---|
| 69 | File::stat |
|---|
| 70 | IO::Socket |
|---|
| 71 | Net::FTP |
|---|
| 72 | |
|---|