cakidのブックマーク (27)

  • ドキュメント作成に参考になる公開ドキュメント集

    Webシステムにてドキュメントを作る際に参考になる公開されているドキュメントを集めてみました。 見た限りはどれも無償で利用可能なようですが、実際に利用される際は規約等をご確認下さい。 発注者ビューガイドライン http://sec.ipa.go.jp/reports/20080710.html 形式:[PDF] IPAが公開しているドキュメント作成ガイドラインです。 発注者とSIerの間で意思疎通を図ることを目的としているので、内容も詳細でかつ分かりやすいです。分量がかなり多いのですが、JavaでおなじみのPet Storeを題材に具体的なドキュメントが載っているので、ざっと見てみるだけでも参考になると思います。 ただ小規模案件だと、このガイドラインどおりに全てのドキュメントを揃えるのはムリがあると思うので、使えそうな部分だけ上手く利用するのが良いでしょう。 関連書籍も出ているようなので、

    cakid
    cakid 2009/10/02
  • GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ
    cakid
    cakid 2009/10/02
  • http://www.tokumaru.org/d/20090930.html%23p01

    cakid
    cakid 2009/10/02
  • PHP5 配列をメソッドチェインで再帰処理するクラス : エクスギア Blog

    CakePHPを使っていると、データ構造が多階層の配列で管理されていることが多く、一括で処理をしたい場合などに度々再帰処理を実装することがあります。 通常であれば、array_map系の関数を使って再帰的に処理を記述することになりますが、 毎回array_mapを使うのは面倒だし、もっと簡潔に記述したい 個別のグローバル関数・各メソッドを連続して簡単に利用したい という理由で、以下のように記述できるクラスを作成しました。 (クラスのソースコードは最後に記述しています) PLAIN TEXT PHP: // $arrの全ての要素にtrimと半角カナ変換を実施 ArrayMap::create($arr)->trim()->mb_convert_kana('KV'); // $arrの全ての要素に「先頭:」という文字を追加 ArrayMap::create($arr)->sprintf('先頭

    cakid
    cakid 2009/10/01
    array_mapの再帰処理
  • PHP+MySQLのブログCMSエンジン·PivotX MOONGIFT

    PHPには偉大なブログエンジン、WordPressが存在する。この牙城を崩すのは非常に難しい。とは言え、バージョンアップが頻繁であったり、よく知られたものだけに攻撃方法も多数出回っていたりと難点も幾つかある。そもそもコードが最早難解なレベルになってしまっている。 ユーザ画面 そんな今だからこそ、新しいブログエンジンを試してみるのも良いかもしれない。WordPressと同レベルの機能を誇るのがPivotXだ。 今回紹介するオープンソース・ソフトウェアはPivotX、ブログエンジンかつCMSを装備したソフトウェアだ。 PivotXはPHP+MySQLで構築されたブログエンジンで、洗練されたインタフェースと多彩な機能が売りのブログエンジンだ。エントリー、ページが作成でき、複数ユーザによる投稿や、複数ブログを構築することもできる。 管理画面 メディアの管理や機能拡張を追加して独自に機能を追加するこ

    PHP+MySQLのブログCMSエンジン·PivotX MOONGIFT
  • CakePHP MySQLのバックアップ(mysqldump)を行うバッチ : エクスギア Blog

    CakePHP1.2からコマンドラインからCakeが起動できるようになりました。 この機能を使って、MySQLのバックアップを行う簡単なスクリプトを作成してみました。 データベースの接続には、/app/config/database.phpの接続情報を利用しています。 ソースコード:mysqldump.php /app/vendors/shells/mysqldump.php class MysqldumpShell extends Shell { // データベース設定ファイルの定義名 var $database_config = 'default'; function dump(){ Configure::write('debug', 0); App::import('Core', 'ConnectionManager'); $db =& ConnectionMana

  • トラブル別!CakePHP1.1 → 1.2 アップグレードの注意点 | バシャログ。

    順調に思えたダイエットも、早くも停滞期を迎えたkimotoです。目標はあと19キロ。 さて、CakePHP1.2 も安定版となって半年近く経ちました。 以前に 1.1 で開発したけど、リニューアルなどの機会に 1.2 にあげるぞ!なんて人も多いかと思います。 まさにシーブレインでもそのような機会がありました。 そこで今回は、このようなトラブルに見舞われたらこうしたら良いよ!というのを集めてみました。参考になれば幸いです。 まずは総入れ替え まずは、「cake」フォルダの中身を 1.1 から 1.2 に入れ替える事から始めます。 はい、予想通り、動かなくなりました。 では、エラーを見ていきましょう。あ、debug モードにするのを忘れないでくださいね。 Fatal error: Call to a member function connect() on a non-object エラーメッ

    トラブル別!CakePHP1.1 → 1.2 アップグレードの注意点 | バシャログ。
    cakid
    cakid 2009/07/01
  • 3キャリア対応ケータイXHTMLのTIPS 8つ : アシアルブログ

    最近ケータイサイトの開発を行っているのですが、キャリアや機種によって動作にいろいろと違いがあり、なかなか面倒ですね。 キャリアごとにテンプレートを分けて記述するのは手間なので、基的に共通テンプレートで記述したいところですが、どうしても振り分けをしないと駄目なこともあるため、今回やってみて気がついた違いなどについてまとめてみました。 なお、いわゆる第三世代携帯電話(DoCoMo FOMA, au WIN, SoftBank/Vodafone 3G)でXHTML対応機種のみを対象としています。 ■文字コード UTF-8で統一して大丈夫そうなのですが、DoCoMoのみ特定の文字(三点リーダーや丸数字など)をフォームから入力した場合に消えてしまったりするようですので、DoCoMoは入出力をShift_JISにする必要があります。 ※上記で特定の文字のひとつとしてあげました三点リーダーですが、UT

    3キャリア対応ケータイXHTMLのTIPS 8つ : アシアルブログ
  • CakePHP 動的ウィジェットの作り方

    CakePHP 動的なウィジェットの作り方 CakePHPではコントローラーでの処理はビューを介してレイアウトのメインコンテンツ($content_for_layout)の部分に展開されます。 その際レイアウトに配置してあるメインコンテンツ以外の部分は基的にはコントローラーから操作ができません。(たぶん) 一般的なサイトでは2段組みや3段組みのレイアウトを使うケースが多いと思いますが、メインコンテンツ領域以外もCakeを使って柔軟に制御する方法を検討します。 (出力されるHTMLの部品をウィジェットとします) ※今回の実装サンプルはこちらから確認できます。 ※ソースコードはこちらからダウンロードできます。 ※サンプルではメインコンテンツ側で指定されたカテゴリの情報をフッター部に表示しています。 Read more

  • CakePHP 動的なウィジェットの作り方 : エクスギア Blog

    CakePHPではコントローラーでの処理はビューを介してレイアウトのメインコンテンツ($content_for_layout)の部分に展開されます。 その際レイアウトに配置してあるメインコンテンツ以外の部分は基的にはコントローラーから操作ができません。(たぶん) 一般的なサイトでは2段組みや3段組みのレイアウトを使うケースが多いと思いますが、メインコンテンツ領域以外もCakeを使って柔軟に制御する方法を検討します。 (出力されるHTMLの部品をウィジェットとします) ※今回の実装サンプルはこちらから確認できます。 ※ソースコードはこちらからダウンロードできます。 ※サンプルではメインコンテンツ側で指定されたカテゴリの情報をフッター部に表示しています。 実現したい機能 ・レイアウトは1枚で管理できること(デザインの保守性の為) ・コントローラーやビューからウィジェットの表示・非

  • CakePHP フレームワークのソースをapp/で置き換える

    こないだのCakePHP勉強会でやったネタですが、需要がありそうなんで書きます。 CakePHPは1.2Finalになって色々と改良が成されて拡張性も増えたのですが、良くなってきた分、さらに色々とやりたくなるのが人の常です。そこでフレームワークのソースをどうしても書き換えたい時にcake/を触るのではなく、せめてapp/でフレームワークソースを置き換えましょう、という話です。 [目標] ConnectionManagerをapp/に置く デモではDispatcherの置き換えをやったのですが、cake bake diaryさんのエントリのように需要があるかもなので、ConnectionManagerをapp/に置いてフレームワークに読ませようと思います。 1. ConnectionManagerのソースをapp/以下にコピー ConnectionManagerを一から書いても良いのですが、

  • [CakePHP] Sluggable Behavior の使い方 | Sun Limited Mt.

    CakePHP の Behavior の紹介、今回は Sluggable Behavior です。 slug とは SEO に有利になるように URL にキーワードを入れるようなことです。Bakery の Sluggable Bhavior は http://bakery.cakephp.org/articles/view/sluggable-behavior となっています。通常の CakePHP の URL だと /articles/view/1 のように数字に ID で指定します。これを上記 URL のように英数字で ID の変わりにするビヘイビアです。 このビヘイビアの便利なところは title カラムから自動的にスラグを生成してくれる スラグが重複する場合は末尾に数字を付加してユニークな値にしてくれる というところです。 インストール Cake Syrop の SVN から最新を

  • PHPで簡単に配列の値をエスケープ処理する方法 - ぷぎがぽぎ

    PHPとクロスサイトスクリプティング クロスサイトスクリプティング(XSS)を発生しないようにするには出力時に適切にエスケープ処理させるというのはウェブアプリケーションを開発する人たちにとっては今は常識となっています。 しかし、PHPのように、HTMLに埋め込んで利用できるような言語ではつい「うっかり」エスケープ処理を忘れてしまいXSSが..ということがあります。 CakePHPやsymfonyなどのフレームワークを使っていればフレームワーク側で適切に処理させる事が可能ですが、そういったフレームワークを使っていないときにできるだけ簡単にエスケープ処理する方法の1つを紹介したいと思います。 最終的なサンプル どうやって実現するかは後にして実際のサンプルでどのような動作になるかをみてみましょう。 <?php $str = '<script>alert("test")</script>'; $t

    PHPで簡単に配列の値をエスケープ処理する方法 - ぷぎがぽぎ
    cakid
    cakid 2009/06/24
    php5 xss
  • blog.katsuma.tv

    Cakeでキャッシュ周りの調査をしていたら、モデルのメソッドの実行結果をキャッシュさせるbehaviorがあるのを見つけました。 CakePHP1.2 Behaviorでモデルのメソッドキャッシュを行う これが相当いい感じなので、その利点や導入方法についてまとめておきたいと思います。 コントローラのスリム化 MVCモデルでキャッシュを利用しようという話になると、大抵Controllerでキャッシュヒットの有無を確認して、ヒットしない場合キャッシュをリセットする、というロジックがまず頭に浮かぶと思います。 if (($posts = Cache::read('posts')) === false) { $posts = $this->Post->find('all'); Cache::write('posts', $posts); } ただ、コントローラで毎回このようなキャッシュヒットを確認

  • CakePHP1.2RC3でFCK Editorを使う - 忍び歩く男 - SLYWALKER

    2009-01-06: コメントでご指摘を受け修正 以下を参考にしてみた。 Using FCKeditor with CakePHP (Articles) | The Bakery, Everything CakePHP まずは設置 FCKeditor - The text editor for Internet ここからダウンロード(使ったのは2.6.3) 解凍して app/webroot/js/fckeditor 以下のいらないファイルを削除 app/webroot/js/内の_* のファイルやフォルダ app/webroot/js/fckeditor/fckeditor.*の拡張子がphp以外のファイル app/webroot/js/fckeditor/editor/filemanager/connectors/のphp以外のフォルダ 以下のファイルをコピー app/webroot/

    CakePHP1.2RC3でFCK Editorを使う - 忍び歩く男 - SLYWALKER
    cakid
    cakid 2009/06/22
  • よく使う独自バリデーションルールをプラグインのbehaviorにまとめる - cakephperの日記(CakePHP, Laravel, PHP)

    CakePHP1.2.3を利用しています。 今までは「独自のバリデーション関数を追加(日語の文字数チェック)」で書いたように、独自バリデーションルールをapp_modelとかに書いてモデルで使いまわしてたんですが、そろそろ汎用的なものはプラグインでまとめて複数プロジェクトで統一して使えるようにしたいと思い移行しました。 プラグインのbehaviorに独自バリデーションルールをまとめて、モデルから利用するまでのTipsです。 まずは、プラグインに関してはSlywalkerさんのCakePHP勉強会@tokyo #4の発表資料に目を通しておくと理解が早くなります。 http://d.hatena.ne.jp/slywalker/20090523/1243059244 プラグインの場所は、app/plugins以下が基ですが、複数プロジェクトで使いまわすので任意のディレクトリにした方が楽です

    よく使う独自バリデーションルールをプラグインのbehaviorにまとめる - cakephperの日記(CakePHP, Laravel, PHP)
  • 超便利なDebugkitを画面キャプチャ付きで解説 - cakephperの日記(CakePHP, Laravel, PHP)

    CakePHPの便利すぎるプラグインであるDebugkitが色々と機能追加されてたので、今の最新版でどうなっているか画面キャプチャをベースに解説します。thechaw.comにある最新ソースだとid:yandodさんがリクエストしてた「Viewにセットした変数とかヘルパーとか全て表示できるように」というのが、Variablesパネルに加わりました(2009/5/29のコミットで)。 基的には、下記からZIPダウンロードしてください http://github.com/cakephp/debug_kit/downloads (現在の最新版はVersion 1.1) http://thechaw.com/debug_kit/versions 追記 上記のzipはリリース版です。最新の機能を使いたい場合は下記からファイル名の日付が最も新しいZipダウンロードしてください。 http://git

    超便利なDebugkitを画面キャプチャ付きで解説 - cakephperの日記(CakePHP, Laravel, PHP)
  • CakePHP 目で見るフックメソッド

    第2回CakePHP関西勉強会でやったデモをこちらでも。 CakePHPには色々なフックメソッドがあるのですが、それらがどのタイミングで呼ばれるかを一覧できるようにデモを行いました。懇親会やアンケートでも良かったよ、と意見を頂いたので、簡単に画面のキャプチャを並べます。 1. Controllerのフックメソッド Controllerのフックメソッドを並べています。index()はアクションメソッドなので、ここで表示されているフックメソッドは3つです。 ソース <?php class DemoController extends AppController { public $uses = array(); public function index() { } } ?> フックメソッドの並び 2. Componentのフックメソッド Controllerの$componentsを設定して

  • CakePHPでユニットテストする際に気をつけること

    今やっている案件ではCakePHPを使ったアジャイル開発で、当然テストも自動化している。 テストの自動化を徹底的にやったので楽なんだけど、次回の案件のためにどういう観点でテストを組んでおくと良いか、またどこに嵌りがあるかメモとして残しておく。 CakePHPに限らない話 テストしやすい実装にする。例えばメソッドに複数の異なる役割を持たせない。引数と戻り値が明確。適切な行数など MVCの複数レイヤーにまたがる処理を書かない。例えばコントローラの中でSQLじゃぶじゃぶ投げたり、バリデーションチェックをぐちゃぐちゃやったりしない 自動でテスト実行できる仕掛け作り。例えばPHPならphpUnderControl。JAVAならCruiseControlとかHudson。 基に返って、テストを先に書くという意識付け テストがいっぱいありすぎたら今度はテストのリファクタリング。似たようなテストがコピペ

    CakePHPでユニットテストする際に気をつけること
    cakid
    cakid 2009/06/22