« 2007年11月 | メイン | 2008年01月 »

2007年12月 アーカイブ

2007年12月01日

タルトフレーズ

タルトフレーズ。
ケーキ。

難しくて5分であきらめた。

濃淡の差がないため何がなんだかわからない。

2007年12月05日

PHPの文法チェック

「-l」オプションでPHPの文法をチェックできます。

php -l filename.php

CakePHPのインストールで404 Not Foundが表示されたとき

CakePHPのインストールは簡単で、公式サイトからファイルをダウンロードして展開するだけ。
のはずだったのですが、「404 Not Found」と表示されてしまいました。

feedtailor Inc. 大石裕一の開発ブログCakePHPのチュートリアルで気をつけたいことという記事を発見して無事に解決。
初期設定では、/に設置されることを前提になっているんですね。
ありがとうございます。

以下、メモを残しておきます。

CakePHPをインストールしたディレクトリにある.htaccessに以下の行を追加。

RewriteBase /~yamamoto/cake/

CakePHPをインストールしたディレクトリ/app にある.htaccessに以下の行を追加。

RewriteBase /~yamamoto/cake/app/

CakePHPをインストールしたディレクトリ/app/webroot にある.htaccessに以下の行を追加。

RewriteBase /~yamamoto/cake/app/webroot/

2007年12月06日

半角カタカナを全角カタカナに変換する

PHPでメールを送信するときなど、半角カタカナを全角カタカナに変換する処理が必要になることがあります。

PHPではこの変換を行う専用の関数 mb_convert_kana が用意されています。

//半角カタカナを全角カタカナに変換する
$zenkaku = mb_convert_kana($hankaku, 'KV', 'UTF-8');

C++では三項演算子を右辺にも書ける

三項演算子は右辺にも書ける。

(a<b?a:b<c?b:c) = val();

2007年12月07日

C++の自己初期化

=演算子はどう解釈される?」から。

自己初期化の問題は、『C++プログラミングの処方箋』の鉄則21で取り上げられています。

C++では、初期化子が解釈される前に変数の名前が有効になります。

C++プログラミングの処方箋

int var = 12;
{
  double var = var;

変数varの値は?

自信のない方は、『C++プログラミングの処方箋』を読んでみてはいかがでしょうか。
鉄則21では、自己初期化の問題で陥りやすい落とし穴について解説されています。

ちなみに、変数varの値は不定値になります。

以下のコードは、C++Builder2007ではコンパイルできました。

time_t now( time( &now ) );
time_t t( time( &t ) );

2007年12月08日

クリップ

クリップ

目玉クリップ。

金属の感じが出せているでしょうか。

2007年12月15日

レネレイドのブローチ

レネレイドのブローチ

フランスのブランド「レネレイド」のブローチ。

投資信託にだまされるな! 本当に正しい投信の使い方

投資信託にだまされるな! 本当に正しい投信の使い方

これから投資信託を始める人にぴったりの入門書。

前半は投資信託の解説。
内容は平易で一般的。
類書を読んだことがある人にとっては、目新しい話はない。

後半は、おすすめの投資信託の商品と販売会社、商品の組み合わせの紹介。
すでに始めている人にとっても参考になる。

とにかく、わかりやすい。
これから投資信託を始める人に一冊だけ薦めるとしたら、本書を薦めたい。

2007年12月18日

CodeGear RAD Studio 2007 December Update

CodeGear RAD Studio 2007、Delphi 2007 for Win32、C++Builder 2007のパッチが公開されたようだ。

CodeGear RAD Studio 2007 December Update

追記。

日本語訳が出ました。

RAD Studio 2007、Delphi 2007 for Win32 および C++Builder 2007 アップデート(December 2007 Update)リリースノート

追記。

RAD Studio 2007 December Updateでは、C++Builder 2007向けに 46件(うち12件はQuality Centralより)の修正が加えられています。

C++Builder 2007 - December Updateの修正リスト

C++Builderの修正は46件とのこと。結構、多いですね。

UnitTestでprivateにアクセスする方法

UnitTestでprivateにアクセスする方法。

#ifdef UNITTEST
#define private public
#endif

箱を白くするには..

なるほど。
friendを使うよりも、この方がスマートかも。

2007年12月19日

CodeGear RAD Studio 2007 Trial

CodeGear RAD Studio 2007 Trialが公開されたようです。
日本語版も選択できるようです。

CodeGear RAD Studio 2007 Trial

2007年12月20日

Serial Number が不正のエラー

同一マシンで Delphi 2007 をアンインストールし、再インストールした際に、一部のお客様で"Serial Number が不正" のエラーの問題が発生することがあります。

Delphi 2007 ? Serial Number が不正のエラーについて

C++Builderも同じです。はまりました。

単純にインストーラから削除するだけでは不十分なようです。

手作業でいくつかのファイルやディレクトリを削除しなければならない模様。

正しいアンインストールの方法は「RAD Studioのアンインストール」を参照。

2007年12月21日

CakePHPのModel.generateListの引数

Model.generateListのキーとカラムの引数について。

CakePHPガイドブック』には、「モデル名.フィールド名」のような形で指定すると記載されています。

Bookmark.id

ところがこの方法ではうまくいかず。

調べてみたところ、キーとカラムの指定は、「{n}.モデル名.フィールド名」のような形で指定するようです。

{n}.Bookmark.id

バージョンの違いでしょうか。

2007年12月22日

ラパンの生チョコケーキ

ラパンの生チョコケーキ

ラパンの生チョコケーキ。

苺のつぶつぶをしっかりと書き込まないといけなかった。
クリームのふわふわ感も表現できていない。
ケーキの形も不満。

ケーキは難しい。

2007年12月26日

「PHP5徹底攻略」レビュー

PHP5徹底攻略』は、PHP5の入門書です。
PHPプログラミングの経験のない入門者が対象です。

この本の構成は、ステップアップ編とリファレンス編からなります。
ステップアップ編では、PHPスクリプトをコマンドラインから動かして学んでいきます。

しかし、PHPをこれから学びたいという人はWebアプリを作りたいと思っているはずです。
PHPはWebアプリを簡単に作れるのが特徴であるのに、最初にコマンドラインを使って学ぶことに疑問を感じます。
PHPスクリプトをブラウザでアクセスして、プログラムが動作する感動を体験することで、興味とやる気が出てくると思うのです。

サンプルコードの難易度も疑問です。
ステップアップ編ではほとんど文法についての説明がありませんが、サンプルコードにはさまざまな関数が使用されています。
これから学ぼうとする人にとっては、わからないことばかり。
挫折感を味わうことにならないでしょうか。

リファレンス編は、一般的な内容です。
PHP関数リファレンスは、WebのPHP マニュアルとほとんど同じような印象を受けました。

それから、PHP5で大幅に強化されたオブジェクト指向については、説明がありません。
PHP4を知っていてPHP5をこれから学ぼうと考えている人は、『PHP5徹底攻略』はやめたほうがいいです。

『独習PHP』レビュー

『独習PHP』は、PHP5の入門書です。
PHP5ならPHP5と、ちゃんと書名に書いてもらいたいところです。
解説もわかりやすいですし、構成もわかりやすく、後から読み直す時も使いやすそうに感じました。

『PHP5徹底攻略』と違い、ちゃんとオブジェクト指向についても解説されています。
PEARやSmaryなどの説明のあり、ちょっとお得な感じです。

PHPの入門書として、お薦めできる本であると思います。

Vine Linux 4.2 公開

Vine Linux 4.2が公開されました。

2007年12月29日

CakePHPのdebugレベルをproductionにするとThe requested address was not found on this server.になる問題

CakePHPのdebugレベルをproductionにすると、「The requested address was not found on this server.」というエラーメッセージが表示され、解決に時間をとられました。

開発中はdebugレベルが1以上でしたので、問題なく動作していました。

define('DEBUG', 1);

debugレベルをproductionに変更して、

define('DEBUG', 0);

運用サーバーに設置すると、「The requested address was not found on this server.」というエラーメッセージが表示されます。

試しにdebugレベルをdevelopmentにすると、問題なく動作します。

問題があったのは、app/tmpフォルダとその下のフォルダのアクセス権でした。
tmpフォルダの下には、cacheフォルダやlogフォルダがあります。
おそらく、ここにファイルを作成できなかったためエラーが発生していたのではないかと思います。

tmpフォルダのアクセス権にはご注意ください。

2007年12月31日

C++Builder 2007 Update 3 + December 2007 UpdateにBoostをインストール方法

C++Builder2007でBoostを使用する」の記事を更新しました。

C++Builder Update 3| + December 2007 Updateに対応しました。

About 2007年12月

2007年12月にブログ「山本隆の開発日誌」に投稿されたすべてのエントリーです。過去のものから新しいものへ順番に並んでいます。

前のアーカイブは2007年11月です。

次のアーカイブは2008年01月です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35