2007年05月31日

Japanese Bloggers and CakePHP

最近の現象として、多くの人がCakePHP情報をブログで公開しはじめています。リンク集のようなものを作ってみました。二つ以上、記事を公開しているブログを選びました。貴重な情報源ですね。これ以外にも知っている!とか、わたしのブログが入っていない!という場合にはコメントしてください。

CakePHP - Shin x blog
http://www.1x1.jp/blog/category/cakephp/

CakePHPの何か
http://puyo2.upper.jp/cake/

CakePHP guide
http://www.blueocean.bz/blog/cakephp/

hetimaの日記
http://d.hatena.ne.jp/hetima/archive?word=CakePHP

CakePHPを習得するメモ
http://cakephp.xrea.jp/

院生エンジニアのにっき
http://d.hatena.ne.jp/charly24/searchdiary?word=%2a%5bCakePHP%5d

PHPのテクメモ cakePHP
http://php.atseason.com/?cid=32837

cakePHPのメモ
http://3d.rokujyou.com/cake/index.html

うずまき の なんとなくでいいのかも? cakephp
http://hogeinstein.blog93.fc2.com/index.php?q=cakephp

Webプログラミングに関するメモ cakephp
http://asaton.seesaa.net/tag/cakephp

眠るシーラカンスと新米プログラマー-cakePHP
http://blog.livedoor.jp/coelacanth_blog/archives/cat_50191041.html

CakePHP»いもろぐ
http://blog.imototakeshi.com/archives/category/php/cakephp/

アルファブレンド・プログラミングチップス - TIPS/CakePHP-プログラミングチップス
http://program.alphabrend.com/modules/pukiwiki/38.html

CakePHPのアーカイブ
http://blog.non-style.com/cakephp/

CakePHP - インストールメモ
http://www.easy-in.net/archives/category/php/cakephp/

MOONGIFT ブログ
http://blog.moongift.jp/?s=CakePHP

onkn101の備忘録
http://d.hatena.ne.jp/onkn101/searchdiary?word=cakephp

CakeShop - Happy Engineer Life
http://wiki.cre8system.jp/index.php?CakeShop

ニートから幸せなお金持ちへ 〜成功本を信じて〜
http://49tsuiteru.blog82.fc2.com/blog-category-3.html

ZeroMemory » cakePHP
http://ido.nu/kuma/category/cakephp/

Favorite Labo
http://www.favorite-labo.org/diary.cgi?field=%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%a0%3c%3ePHP

memo-space
http://www.mono-space.net/blog/php/

はくじゃめも - はくじゃめも - tag cakephp
http://blog.hakuja.jp/articles/tag/cakephp

akiyan.com
http://www.akiyan.com/blog/archives/php/

NEO INSPIRATIONS
http://neoinspire.net/category/php/cakephp/
タグ:cakephp blogs
posted by SDozono at 07:04| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2007年05月26日

対話型コンソール

シカゴで行われている php|tek 2007で、Chris Hartjesは今回も、「PHPはRuby on Railsから何を学べるか」というテーマでCakePHPを論じているようです。

Live from php|tek!
http://www.littlehart.net/atthekeyboard/2007/05/17/live-from-phptek/
(スライドあり。)

1.2の新機能として、"Console"が追加されましたが、「コンソールとは何ぞや」というデモを公開しています。
Screencast: Interactive Console for CakePHP
http://www.littlehart.net/atthekeyboard/2007/05/25/screencast-interactive-console-for-cakephp/

最近、既存のPHPプログラムの保守と、CakePHPでの開発を並行して作業したりするのですが、やはりCakePHPで作ったもののほうが圧倒的に「触っていて楽しい」感覚がありますね……。顧客の予想を超えるスピードで開発できてしまったりします。
タグ:PHP cakephp
posted by SDozono at 09:14| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2007年05月22日

1.2に、Pluggableな“キャッシュエンジン”が登場!

Cakeは、"セッション"の保存方法に関しては設定を変更するだけで、

1)PHPのセッションを利用
2)テンポラリファイルを利用
3)データベースにシリアライズ

という方法をいつでも切り替えられるようになっていました。

16.1. Cake セッション保存オプション
http://cakephp.jp/doc/session.html

(次のリリースではここにも手が加わり、ここもPluggableになる!?)
------------------------

今回、開発途上にある1.2では、これに加えてキャッシュまわりがさらに強化されたようです。1.1でもすでにビューとモデルの(ファイル)キャッシュが実装されていましたが、今回、切り替え可能な Cacheエンジンとして、

-APC
-File(ファイルキャッシュ)
-Memcache
-Model(モデルによるキャッシュ…開発中。)
-XCache
-独自のキャッシュエンジン

などを選択できるようになっています。
既存のモデル・ビューのキャッシュの仕組みと、今回の新しいクラスはいずれ統合されるのでは?と思います。

メソッドとしては、
Cache::write()
Cache::read()
Cache::delete()
Cache::clear()
など。

これにより、Cakeを使って開発しておけば、あとから、さらなる高速化を検討できるようになる、ということでたいへん便利だと思います。

まだ公式マニュアルなどはありませんが、この機能を開発している本人がブログで情報を公開しています。

CakePHP 1.2 Cache
by Jiri Kupiainen
http://jirikupiainen.com/2007/05/21/cakephp-cache/

"次なるDigg,Twitter,Googleを構築しようと思っているなら要チェック!"という刺激的な出だし。

Memcacheの場合にはパラメータとして、MemcacheサーバをIPアドレスかHost nameで設定可能です。複数台のサーバで運用しているときにキャッシュを共有できるということです。

セッションとキャッシュの二つのスケーラビリティをフレームワークが保証できるようになる、というのは大きなメリットだと思います。

セッションまわりとモデル・ビューのキャッシュすべてが、この新しいキャッシュシステムに統一されると非常に美しくなりますね。「あともう少しの変更」はそのあたりかもしれません。

なお、1.2の最新版は、

class Model extends Overloadable {

}

となっています。overloadable_php4.php と overloadable_php5.php を見比べると、なかなか面白いかもしれません。
posted by SDozono at 11:30| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2007年05月20日

1.1.15.5134と1.2.0.5137alphaのリリース

1.1.15.5134と1.2.0.5137alphaがリリースされました。
1.1は安定版、1.2は、現在もかなりのスピードで進んでいる開発版です。

今回のポイントは、1.2ベータが出る前のリリースとしては、おそらく最後のものになるだろう、という点です。

The Cake is Rising
By Larry E. Masters aka "PhpNut"
http://bakery.cakephp.org/articles/view/the-cake-is-rising

しかし1.2に関しては、いくつかの仕様変更がすでに計画されていますので、1.2は、フレームワークのコードを読むのが好きな人、実験的にCakePHPを試している人、フレームワークの新機能が好きな人などにはよいと思います。

ちなみに英語の世界では、既にCakePHPはこんな風に書かれることが多くなっています。
これ知ってました?

Active record pattern
"Implementations of Active Record can be found in the CakePHP, Code Igniter (PHP), Castle (.NET) and Ruby on Rails frameworks."

- Wikipedia "Active record pattern"
http://en.wikipedia.org/wiki/Active_record_pattern
タグ:cakephp
posted by SDozono at 23:35| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする

2007年05月15日

Active Record in PRADO

PHP界の"ASP.NET"とも言えるPRADO PHP Frameworkが、ついにActiveRecordを搭載するようになりました。

PRADOには、すでにTDataGridという、データを表形式で出力するための高度なコンポーネントが開発されていました。

TDataGrid - Samples
http://www.pradosoft.com/demos/quickstart/?page=Controls.DataGrid

今回、ActiveRecordとTDabaGridコンポーネントとの兼ね合いはどうなっているのだろう!?という好奇心から、現在のActiveRecordの実装について、少し調査してみました。

PRADOのActive Recordに関するよい記事は下記にあります。

Active Record
http://www.pradosoft.com/demos/quickstart/?page=Database.ActiveRecord
prado_activerecord.png

Active Record Scaffold Views
http://www.pradosoft.com/demos/quickstart/?page=Database.Scaffold

ブログチュートリアルで使うとどうなるか、というのはこちら。
Creating Active Record Classes
http://www.pradosoft.com/demos/blog-tutorial/?page=Day2.CreateAR
prado_blogtutorial.png

Cake(Rails)流の開発や設計になれていると、

・username が VARCHAR で Primary Key!?
(Cakeなら、PKはINT型で"id")
・postsテーブルの外部キー author_id は、usersテーブルを指している!?
(Cakeなら、usersテーブルに対する外部キーは user_id)

などに驚くかもしれません。世界は広い。

で、PRADOの場合には、さすがコンポーネント重視型、ということで、Active Recordを使うもよし、SqlMap Data Mapperを使うもよし、二つを組み合わせるのもよしということで、いろいろ選択肢があるようになっています。

複雑だ、と見るか、あらゆる希望にこたえることができる、と見るかは開発者しだいかもしれませんね。ただ、Cake流の考え方のほうが、見てすぐ分かり、シンプルだとは思います。

ActiveRecord と TDataGrid をつなぐヒントになるような情報は下記にありました。
[Tip] Using data received by TActiveRecord in TDataBoundControl
http://www.pradosoft.com/forum/index.php/topic,6890.0.html

少し見ない間に、コマンドラインツールが追加されているわ、ドイツから開発者が参加しはじめているわ、オープンソースプロジェクトはやはりダイナミックに変化していきますね。
posted by SDozono at 22:43| 東京 ☀| Comment(0) | TrackBack(0) | PHP Framework | このブログの読者になる | 更新情報をチェックする

2007年05月11日

CakePHP, Web 2.0 Awards Web開発部門1位受賞

CakePHPに関する技術情報は、http://cakephp.jp のほうに流している関係で、こちらのブログはCakePHPのマーケティング?とCakePHPによるサイト情報などの記録になっています。

ところが、最近は「CakePHPで作りました」という宣伝が以前ほど派手には投稿されないように思います。現在、「Visual Studioでアプリ作った〜!」と宣伝しないのと同じように、CakePHPがWEB開発におけるひとつのツールとして、定番のものになってきているかもしれません。でも、CakePHPによるサイトは着実に増えてきています。

そんな中で、もうひとつ面白い話題が飛び込んできました。
SEO対策などの検索マーケティングで非常に有名な seomoz.org が、2007年のWeb 2.0 Awardsを発表しました。

seomoz.org について
http://web-tan.forum.impressrd.jp/l/804
SEOmozは、Search Engine Journalで2006年のベストSEOブログに選ばれた、SEOを中心とした検索マーケティング情報のブログ。日々更新される良質なSEOmozの考え方やノウハウの情報から、厳選したコンテンツを日本語でお届けします。

SEOmozは、シアトルを拠点とする検索エンジン最適化の会社で、世界の検索マーケティング担当者をつなぐ役割として、教育、ツール、情報リソースや有料サービスを提供しています。

SEOmozの良質なコンテンツは、日本語を含めると、ポルトガル語、スペイン語、ロシア語、ポーランド語、フランス語、ドイツ語、スウェーデン語の合計8言語に翻訳されています。


seomoz1.png

ここで、Web Development and Design部門での順位は、

1位 http://www.cakephp.org
Cake is a rapid development framework for PHP whose primary goal is to provide a structured framework that enables PHP users at all levels to rapidly develop robust web applications, without any loss to flexibility.

2位 http://www.prototypejs.org
Prototype is a JavaScript Framework that aims to ease development of dynamic web applications.

3位 http://developer.yahoo.com/yui
The Yahoo! User Interface (YUI) Library is a set of utilities and controls, written in JavaScript, for building richly interactive web applications using techniques such as DOM scripting, DHTML and AJAX. The YUI Library also includes several core CSS resources.

というものでした。

その他ノミネートされたのは下記のようなサイトです。
* CSS Beauty http://cssbeauty.com
* Mint http://haveamint.com
* Bluo CMS http://www.bluocms.com
* MochiKit http://www.mochikit.com
* Performancing http://performancing.com
* AllSyntax http://allsyntax.com
* Django http://www.djangoproject.com
* Ruby on Rails http://www.rubyonrails.org
* Yahoo! Pipes http://pipes.yahoo.com/pipes


seomoz2.png

WEBの最新技術に精通しているだけあって、情報をよく集めているなぁと思います。有名所がきっちり入っています。

【Blog Guides】
Technorati / Bloglines / Findory
【Bookmarking】
Ma.gnolia / Furl / Clipmarks
【Books】
Lulu / Biblio / Library Thing
【Business】
Squidoo / Instant Bull / Shopify
【City Guides & Reviews】
Yelp / Judy's Book / Yahoo! Local
【Classifieds and Directories】
Craigslist / Oodle / vFlyer
【Collaborative Writing and Word Processing】
Google Docs and Spreadsheets / Writeboard / ThinkFree
【Communication】
Meebo / Campfire / MailEmotion
【Content Aggregation and Management】
Wufoo / ProjectStat.us / EditGrid
【Digital Storage and Remote Access】
Omnidrive / Esnips / TotoExpress
【Events】
Upcoming / Eventful / Confabb
【Feed Management】
FeedBurner / Attensa/ BlogBridge
【Fun Stuff】
Cocktail Builder / One Sentence / Fuzzmail
【Games】
Arcaplay / Games2Web / Guess-The-Google
【Health】
PEERtrainer / Medstory/ Healia
【Hosted Wikis】
Wetpaint / PBwiki / Stikipad
【Lists and Polls】
43 Things / Statsaholic / Listdump
【Mapping】
Google Maps / Wayfaring / Frappr
【Marketing】
Intellicontact / Conduit / PlugIM
【Mashups】
Ning / Boxxet / Coverpop
【Mobile Technology】
Twitter / Plusmo / JuiceCaster
【Music】
Pandora / Last.fm / Discrevolt
【Online Desktop】
Goowy / Desktoptwo / EyeOS
【Organization】
Google Apps / Zoho / Backpack
【Philanthropy】
Care2 / Donor Choose / Be Green Now
【Photos and Digital Images】
Flickr / Picasa / Picnik
【Podcast Services】
Odeo / PodShow / PodOmatic
【Professional Networking】
LinkedIn /Spoke / Xing
【Questions and Advice】
Yahoo! Answers / Minti / Say-So
【Real Estate】
Zillow / HousingMaps / iiProperty
【Retail】
Threadless / Etsy / WipBox
【Search】
Rollyo / Swicki / Pipl
【Social Networking】
Facebook /Mingle2 / Imbee
【Social News】
Digg / Reddit / Newsvine
【Social Tagging】
Del.icio.us / StumbleUpon / BlinkList
【Start Pages】
Netvibes /PageFlakes / Personalized Google
【Travel】
Farecast / Kayak / RealTravel
【Video】
YouTube / Dailymotion / Metacafe
【Visual Arts】
ColorBlender / Swivel / The Broth
【Web Development and Design】
CakePHP / Prototype Javascript Framework / Yahoo! UI
【Widgets】
YourMinis / SpringWidgets / Flock

ちなみに、このAwardサイトもCakePHP製だそうです。ただのHTMLでもよいサイトだとは思いますが、さすがにマーケティングに通じた会社のサイトですね。
posted by SDozono at 09:40| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする