by lorenzo
幾らかの大きな機能については、ベータリリースまでに完了する予定です。特に:
- 新しくなったi18n と L10n の機能
- CacheHelperをEdge Side Includesを基にしたものに置き換え
- よりシンプルでより速いルーティング宣言による、新しいルーティングAPI
このアルファリリースでは、これらの鍵となる機能を完成させることを目標にしました。その後、ベータリリースで粗い部分やわかりにくい部分の改良、エラーメッセージやヘルプの改善、コアチームによるプラグインの移行を目標にします。
ここ数ヶ月コミュニティより受け取ったすばらしいフィードバックやサポートにただただ驚くばかりです。3.0の改善のために多数のバグレポート・プルリクエスト・ドキュメントの編集を受け取りました。
このリリースには新機能や変更点に関する完成したドキュメントがありますので、詳細については新しいCakePHP 3.0のブックをご確認ください。
以下は3.0.0アルファ1の新機能や変更点の一覧です:
ディスパッチャ・フィルタの再実装
ディスパッチャ・フィルタは再実装され、以前のCakePHPの「マジック」機能を盛り込むよう拡張されました。独立性のために、フィルタは設定の代わりにより簡易なインスタンスとして登録されるようになりました。
ディスパッチャ・フィルタはリクエストに対する制限として適用することもできます。
新しいセッションオブジェクト
セッション管理はこれまでCakePHPの静的クラスであり、複数の問題が露呈していました。CakePHP3.0では、リクエストオブジェクトとしてアクセスします。$this->request->session()
この変更によりセッションのテストが容易になり、CakePHPでPHPUnit 4.xを使用できるようになります。
FlashHelper と FlashComponent
フラッシュメッセージはモダンなWebアプリケーションでは重要な部分です。CakePHPでは初歩的なフラッシュメッセージのサポートをしていましたが、CakePHP 3.0では、デベロッパーはよりシンプルな方法で様々な種類のメッセージの生成・描画を行なうツールを導入できるようになります。実現のために幾つかの異なるコンポーネントやヘルパーが作成されました。実装のご協力を頂いた jadb と bcrowe に感謝します。
CookieComponent
これまで、CookieComponent は一度に一つのネームスペースしか管理できませんでした。暗号化クッキーの生成のためのパワフルなツールが提供されていたとはいえ、一貫して正確に使用するのには向いていませんでした。再設計された CookieComponent はクッキーの名前空間の設定とクッキーデータの分離をより簡単に行えます。
Passwords Default to Bcrypt
現時点での最適解はパスワードにbcryptを使用することです。デベロッパーを正しい方向に誘導するため、bcryptをCakePHPのデフォルトのパスワードハッシュにし、パスワードハッシュを古いハッシュアルゴリズムから漸進的に更新するためのFallbackHasherを提供しました。
テーマとプラグインのマージ
CakePHP 3.0.0では、テーマをよりパワフルで強固にしたいと思いました。テーマの改善方法を考察すると、本当に欲しいものはプラグインだと気づきました。そこで、どのプラグインでもテーマとして利用できるようにしました。これによりテーマのパッケージ化や再配布を、プラグインで行なうときのように簡単にし、ヘルパーやセルを含められるようにしました。
App and Plugins share a standard suggested directory layout
あなたの開発経験を可能な限り一環したものにするため、アプリケーションのスケルトンとプラグインのスケルトンを同じディレクトリ構成になるように改良しました。これによりプラグインを作成することが小さい組み立て式アプリケーションの作成のように感じられることでしょう。
ORMの改善
いくらかのAPIの改善により、新しいORMになりました。保存時の深いアソシエーションの特定がよりシンプルになり、幾つかの設定を変更することで新しく利用する人たちの学習曲線や混乱を減らせます。
パフォーマンスの改善
3.0の新機能について初期のパフォーマンス調査を行い、明白なボトルネックを取り除くことに時間を費やしました。プロセスの起動や各ヘルパーのテンプレート生成が速くなったことをおしらせします!
さらに、ルーティングのプロセスを数倍早くする方法を発見しました。続くベータリリースでこれらの新しいアイデアを実装する予定です。
リリースをダウンロードするか、`composer create-project -s dev cakephp/app`のコマンドを使用すると、CakePHP 3.0を今日から使えます!
「CakePHP 3.0.0-アルファ1 がリリースされました」への1件のフィードバック