ホームページ > バックエンド開発 > PHPチュートリアル > CodeIgniter 4の開発ロードマップが発表されました

CodeIgniter 4の開発ロードマップが発表されました

WBOY
リリース: 2016-06-20 12:33:53
オリジナル
1282 人が閲覧しました

コミュニティの要望や意見を考慮した上で、どのような未来が CI に最も適しているのかについても検討しました。その後、CI 評議会は、CI の将来についていくつかの決定を下しました。枠組み。プレビューとして、将来的には大きな変更が加えられる予定ですが、それらは将来への備えとなるだけでなく、CodeIgniter の一貫した特性であるシンプルさ、スピード、柔軟性も維持されると考えています。

この記事は将来についての簡単な概要です。これは単なる初期計画であることに注意してください。開発の進行に伴い、情報は変更される可能性があります。

コアの変更

CodeIgniter の最初のバージョンがリリースされて以来、PHP コミュニティは劇的に変化しました。 CodeIgniter のコア要素の多くは当時必要でしたが、PHP5 がリリースされたとき、CodeIgniter のコアはほとんど何も変更されませんでした。 CodeIgniter が今後も高いレベルでパフォーマンスを維持し、PHP フレームワークの中での地位を確立したい場合は、大きな変更が必要です。

これは、システムを完全に書き直す必要があることを意味します。コードの明瞭さを維持するために、新しい CI は別のコード ベースで開発されます。以前のコードの一部を再利用しますが、最新のクリーンなコードに重点を置くことを想定しています。

PHP 7 をターゲットにして以来、PHP 5.6 はセキュリティ保守モードに入り、数か月以内に完全に廃止される予定です。 CI は、サポートが終了する PHP バージョンの新しいバージョンをリリースしません。ホスト環境は大きく異なり、一部のプログラムは PHP 7 を完全にはサポートしていない可能性があるため、3.x ブランチはしばらく維持されます。これは、3.x の終了後の 2.x ブランチの EOL 期間よりもはるかに長くなります。解放されました。

アプリケーション ディレクトリとシステム ディレクトリの両方が PSR-4 自動ロードをサポートします。 CodeIgniter は独自のオートローダーを使用し、Composer と統合します。

ほとんどの場合、CodeIgniter 以外のプロジェクトで使用できるように、いくつかのコンポーネントをカプセル化します。

パッケージ/モジュール

アプリケーションのパッケージとモジュールの概念は捨てます。パニックになる必要はありません。なぜなら、少なくともコントローラーとモデルに関しては、名前空間を使用してほとんどの状況に対処できるからです。ビュー、構成ファイル、ヘルパーなどのその他のものも、名前空間をサポートできるようにできると考えています。また、オートローダーにそれらの検索方法を指示することで、すべてのパッケージ機能とモジュール ルーティング機能を任意のディレクトリに配置することもできます。

ルーティング

ルーティング機能が更新されます。 URI をコントローラー/メソッドに直接マッピングする「マジック ルーティング」機能をオフにして、好みのルーティング方法を選択できるようにすることができます。ルーティング設定ファイルでは、「マジック ルーティング」を使用するか、各ルートを個別に指定するかを選択できます。

ロギングシステムの改善

ロギングシステムは改善される予定ですが、具体的な詳細はまだ決まっていません。

テスト

テストには引き続き PHPUnit を使用します。これは、アプリケーションを自分でテストする必要があることも意味しますが、必要なツールは提供されます。

下位互換性

上で述べたように、これは古いバージョンと互換性のないバージョンである必要があります。私たちは、これがこのフレームワークにとって最良の未来であるべきだと考えています。私たちは長年にわたってこの大きな変更の基礎を築いてきました。移行をできるだけスムーズに行えるよう努めますが、提供できるコード ベースがどの程度最新化されるかはまだわかりません。

私たちは、CodeIgniter を長年にわたって人気を博してきた機能、つまりスピード、シンプルさ、「エレガントさ」を維持するために最善を尽くします。

開発スケジュール

開発プロセス全体は 3 つのフェーズに分かれています。

次のクラス ライブラリはカーネルから削除され、オンデマンドでダウンロードされます: 植字クラス、FTP クラス、ZIP クラス、および XML-RPC クラス。

Shopping Cart クラス、JavaScript クラス、Unit Test クラス、Trackback クラスは削除されます。

基本的なカーネルを備えたアルファ版を 1 年以内に完成させたいと考えています。その後、カーネルの改善と残りのパッケージの開発に焦点を当てます。ほとんどのオープンソース プロジェクトと同様、コミュニティの貢献の量と質、およびコア開発者の時間とエネルギーに依存するため、正確なスケジュールは異なる場合があります。

フェーズ 1

最初のフェーズでは、フレームワークの最も重要な部分を理解することに重点を置きます。これがフレームワークの残りの部分の基礎になります。

  • オートローダー

  • 依存性注入

  • ログ

  • 例外処理

  • HTTP リクエスト/レスポンス層 (または入力/出力)

  • ルーティング

  • コントローラ

  • モデル

  • データベース層

  • 構成

  • セキュリティ

第 2 フェーズ

第 2 フェーズは、CodeIgniter ユーザーが望むいくつかのクラスと機能の改善に焦点を当てています。

  • ヘルパー

  • 言語/国際化機能

  • キャッシュ

  • メール

  • 暗号化

  • フォーム検証

  • 画像処理クラスライブラリ

  • ページング

  • アップロードクラス

  • セッション

  • ビュー

  • デバッグおよび分析ツール

フェーズ 3 -オプションのクラス ライブラリ

第 3 フェーズは主にオプションのソフトウェア パッケージを拡張するために使用されます。この時点で、すべてのライブラリの準備が整うのを待たずに、フレームワークをリリースする準備ができているはずです。

  • FTP

  • XML-RPC

  • Zip

  • 植字クラス

  • テンプレートパーサー

私たちは、フレームワークによってもたらされた新しい機会に非常に興奮しています。新しいバージョンのフレームワークが最初の一歩を踏み出すのを待ちます。傍観するのをやめて、フレームワークの未来を構築しましょう。

著者: Lonnie Ezell (CodeIgniter 理事会メンバー)

翻訳: Hex

初版発行日 2015 年 8 月 5 日、現在, CI 4 は開発中であり、まだリリースされていません

英語原文: CodeIgniter 4 Proposed Roadmap

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート