ちょっとしたWebサービスを新しく作ろうとしているのですが、ゼロからつくりはじめるのは何かとめんどくさいし、今まで手を出していなかったツールを使ってみるのも勉強だと思って、CakePHPにチャレンジしています。
CakePHP: 高速開発 php フレームワーク。
http://cakephp.jp/

PHPで普通にゼロからプログラムを書いていくのもよいのですが、
CakePHPといったフレームワークを使うと、既に組み込まれているWebプログラミングで使いそうな共通処理や手続きがすぐに使えるので、開発者がいちいちゼロから処理を作る必要がないのです。
例えば、ログインなどの認証処理、データベースへのアクセス、Emailでの送信機能など、一般的に使いそうな機能がCakePHPには盛り込まれているので、そこらへんの面倒な処理を自分で作らなくてもよくなります。
ただし、フレームワークを使うには決まったお約束があり、そのお約束に沿ってプログラムを作るので、フレームワークのお約束(規約)について事前に知っておかないと使えません。
そこらへんが最初は敷居が高いですが、一度覚えてしまうとWebサービスを短期間で作れるようになります。
CakePHPは今年のはじめにインストールはしていたのですが、目的もないまま使おうとしたので途中で挫折していたのでした。
フレームワークの中でもなぜCakePHPかというと、まぁ人気がありそうだからですね。
nanapiというサイトで採用していることもあってもともと興味はありました。
フレームワークと選択肢の中から選ばなくても、XOOPSやWordPressといったCMSを使って作る方法もあります。
プラグインという形で作ればCMS本体に組み込まれているログイン認証やテンプレートなどを利用できるので自分で作らなくても良いのでフレームワーク同様便利です。
ですが、CMSはやっぱり動作が遅いんです。
そんなにアクセス数が多くないときはいいのですが、アクセスが多いとどうしてもモッサリ感があります。
そういうパフォーマンス面を考慮し、またブログやグループウェアといったCMSの使い方とちょっと離れた使い方をする場合はCMSを使うことにあまりメリットが見いだせません。
CakePHPを学ぶにはここらへんからやればいいかと思います。もっか僕も勉強中です!
以下のマニュアルに付属している、ブログシステムを作るチュートリアルはなかなかタメになります。
マニュアル :: 1.3コレクション :: The Cookbook
http://book.cakephp.org/ja
CakePHPで高速Webアプリ開発:第3回 ここはおさえておきたい,CakePHP情報サイトリンク集
http://gihyo.jp/dev/serial/01/cakephp/0003
今度は途中で挫折しないように頑張ります!
去年にひきつづき、7/10(土)にオープンソースカンファレンス(OSC)2010京都に行ってきました。
去年よりなんだか人が多い印象です。どのセミナーも、けっこういっぱい人が来ていました。
不況と勉強会の人気って相関があるんですかね?そんな気も少ししています。
10:15 HTML5で広がるインターネットアプリケーション開発の未来
担当:HTML5-WEST.JP
講師:村岡 正和
村岡さんはhtml5-west.jpの人です。
HTML5を使って、3D動画を簡単にページ上に表示させるデモを見せてもらいました。
動画を制御するための再生ボタンやSTOPボタンも、HTML内に1行コードを書くだけで作れるんですね。簡単です。
僕はHTML5についてほとんど知識がありませんでしたが、HTML5でいろいろなメディアのコントロールが簡単にできるというのは新しい発見でした。
45分の時間で村岡さんはじめの3人の方のプレゼンがありましたが、どの方もその場でコードを書いて解説しており、プレゼン慣れしてる感じでした。例えて言うなればピアノを弾きながら語れる技術?
僕だったら、ああいう場だと緊張してコードうまく書けないと思う…
プレゼンテーターはすべてMac使ってました。
村岡さんはEmacs使ってました。
11:00 はてな 今から使えるHTML5 ~はてなの場合~
担当:株式会社はてな
講師:外山 真 (nanto_vi) (株式会社はてな アプリケーションエンジニア)
大講堂でのセミナーでしたが、 ざっと見た感じ100人以上いました。人気の高さがうかがえます。
もう京都といったら任天堂かはてなですからね!
外山さんは4月に入社したばかりの人で、けっこう華奢な感じのする方でした。
Windows使っていました。
HTML5は旧称 WebApplication 1.0と言い、2006年くらいからHTML5と呼ばれるようになったそうです。
はてなブックマーク使っている人がどれくらいいるかアンケートとっていましたが、ざっとみて会場の半分くらいは使ってるかな?という印象でした。
はてなの新規サービスはHTML5の技術?のCanvasでグラフを作っているそうです。
HTML5ではtabindexを全要素に適用可能です。
例えばspan要素にtabindexを指定できます。そしてボタンじゃないけどクリックできるようになります。
もともとIEの独自拡張でしたが、ほかのブラウザもこの実装を追従するようになりました。
はてなのチュートリアル機能で使っているそうです。
はてなはTenという自社製のフレームワークを利用しています。jQueryを自作している感じ?
担当:関西OpenOffice.org勉強会
講師:大槻 武志、榎 真治、澤 徹、多田 真遵
榎さんは Windows XP使ってました。
OpenOffice.orgとは、無償で使える統合Officeソフトのことです。
ファイル形式はODF。
事例として、
会津若松市で組織全体で導入
四国中央市 1100台+小中学校用900代を5年かけて移行中
住友電工 全社レベルで活用 最終的に15000台が対象
などがあります。結構自治体や大企業で使われていますね。
USBにインストールすることができます。
オフィスソフトが入っていないパソコンでも、インストールせずに使えます。
僕もMacではOpenOffice.org使ってますが、けっこう使えます。MSのExcelデータも普通に読めるし。
もうMS Officeは高いからいらないんじゃないかな?
時代は、何万円もするMS Officeをあえて使わなくても良くなってきつつあります。
14:00 Eclipse PDT + MakeGoodによるPHPコードのテスト
担当:Piece Project
講師:松藤 秀治
MakeGoodというTDDやEclipse上で動作するテストランナーの紹介をしていただきました。
TDDってなんだかよくわかりませんでした。まぁEclipseでも使えるということで、こんど試してみたいと思います。
テストを自動実行してくれるので、テストが楽ちんになるそうです。
ソースコード保存時に勝手にテストが実行できるようにできる設定とか。けっこう驚きでした。
シナリオ実行とかできるんかな? こういうツールはどんどんやり方を覚えて、効率のよい開発をしたいですね!
15:15 現役IT担当者が語る! やればできる! OSSで中小企業のIT化!
担当:オープンソース(OSS)で中小企業のIT化
講師:菅 雄一
結構声が大きくて分かりやすい感じの語り口調が独特の人でした。
ITを専門としていないプレゼンテーターが、孤軍奮闘して中小企業のIT化を推進した顛末をプレゼンしていただきました。
プレゼンは高橋メソッド方式で、どんどん流れていく感じ。
ホームページ作成を外注業者を頼まず自作して、センスが最悪で、会社内ではボロカス評価だったそうです。
当初は結局、外注してホームページを作成したそうですが、最終的にはWikiで自前のホームページを作り上げました。
素人がITを推進して、痛い目にあうのは、トラブルにあったときです。
やはり表面的な知識では、トラブルに対応できないと痛感したそうです。
どっかから拾ってきたLinuxの設定をそのまま使って動いたからいいや、ではなく、
しっかりとした根拠をもった設定を、自分で考えて構築できるようにならないといけないですね。
具体的な技術事例というのはなかったですが、どういう姿勢で会社のIT化に取り組めばいいのかという参考になりました。
このあと、16:15から閉会までは大講堂で5分間スピーチ?という感じのライトニングトークを聴講しました。
5分間のプレゼン発表に命をかけてきてる猛者がいっぱいいて、この内容の濃いこと。
ほとんどの方が残り時間0秒まで使い切る完全に美しいプレゼンを行っていて、内容よりもそのプレゼン技術に感服しました。
次のオープンソース系イベントは秋のKOF(関西オープンフォーラム)があります。今回のようにオープンソースな方々の情熱に触れると、こっちまで元気になります。
技術的なことを学びに行く目的ももちろんありますが、「ようし、オレも頑張ろうっと」という前向きなモチベーションを与えてもらえる場、というのが一番大きいですね。
CakePHPにチャレンジしはじめました。
そういう仕事がありそうな予感がするし、知っておくとあとあと有利な気がするので。
CakePHPはPHP用のフレームワークです。
フレームワークらしいフレームワークって、今まで触ったことなかったので、自分にとっては新しい領域です。
XOOPS Cubeのモジュール開発手法も、あれはあれでフレームワークって言うのかも知れないけど… あまりフレームワークの概念が良く分かってないもんで、厳密にはどういうものがフレームワークってものにカテゴライズされるのか良く知りません。
CakePHPはRuby on Railsの影響を強く受けているようです。去年行った関西オープンソースでRuby会議の人のセミナーを聞いて以来、Railsもいずれはちゃんと学習したいなーとは思っていますが…
続きを読む